extends Node3D class_name CharacterManager var scene_player = preload("res://scene/character/player.tscn") var scene_monster = preload("res://scene/character/monster.tscn") var character_map = {} var character_idx : int = 0 func create_character(cfg:CharacterCfg): var characterNode:Node match cfg.type: Enum.ECharacterType.Player: characterNode = scene_player.instantiate() Enum.ECharacterType.Monster: characterNode = scene_monster.instantiate() add_child(characterNode) characterNode.name = cfg.name var character:Character = characterNode as Character character_idx += 1 character_map[character_idx]=character character.init(character_idx,cfg) func get_character(id:int): return character_map[id]