association_pouvoirs.gd 540 B

123456789101112131415161718192021222324252627
  1. class_name Pouvoir
  2. enum Type {
  3. AUCUN, # si pas de pouvoir, laisser en premier
  4. FEU,
  5. VIE,
  6. #RALENTIR,
  7. BONJOUR # laisser en dernier
  8. }
  9. static func fabriquer(type: Type): # -> PouvoirBase
  10. match type:
  11. Type.BONJOUR:
  12. return BonjourPouvoir.new()
  13. Type.FEU:
  14. return PouvoirFeu.new()
  15. Type.VIE:
  16. return VieBonus.new()
  17. #Type.RALENTIR:
  18. #return RalentirPouvoir.new()
  19. Type.AUCUN:
  20. return null
  21. _:
  22. assert(false, "Le nouveau pouvoir doit etre associe a son type " + str(type))
  23. return null # sinon compilateur pas content