Tales-of-PKMN/game/pokemon/trainer_data.gd

22 lines
749 B
GDScript

class_name TrainerData
extends Resource
#modele d'un dresseur PNJ : l'equipe reelle est fabriquee au debut du combat
@export var id : StringName
@export var names : Dictionary = {} # {"fr": "Pierre", "en": "Brock"}
@export var party : Array[TrainerPartyEntry] = []
func get_display_name() -> String:
return L10n.pick(names, String(id))
func create_team() -> PokemonTeam:
var team := PokemonTeam.new()
if party.size() > PokemonTeam.MAX_SIZE:
push_warning("TrainerData '%s' : %d pokémon dans le modèle, seuls les %d premiers seront utilisés." % [id, party.size(), PokemonTeam.MAX_SIZE])
for entry in party:
if entry == null: continue
var p := entry.create_instance()
if p and !team.add_pokemon(p): break #equipe pleine
return team