remork CharacterCreater to remove all combineble if one is selected

This commit is contained in:
2024-04-04 12:38:15 +02:00
parent 8702a9955d
commit 1de963333d
+9 -8
View File
@@ -33,13 +33,17 @@ class CharacterCreater:
return element[key] return element[key]
@classmethod @classmethod
def select_a_species(cls, player_config:dict, block_by_fixed_type:bool=False): def select_a_species(cls, player_config:dict, block_by_fixed_type:bool=False, current_selected:dict=False):
print(CharacterCreater.make_dict_list_into_table(player_config["species"], change_by_key=lambda key, element: CharacterCreater.change_character_key(key, element)))
if not block_by_fixed_type: if not block_by_fixed_type:
select_species = list(player_config["species"].keys()) select_species = player_config["species"]
else: else:
select_species = list(player_config["species"].keys())[:-1] select_species = { k:v for k, v in player_config["species"].items() if v["combineble"] == False }
if current_selected:
select_species["Current Selected"] = current_selected
print(CharacterCreater.make_dict_list_into_table(select_species, change_by_key=lambda key, element: CharacterCreater.change_character_key(key, element)))
select_species = [ x for x in select_species.keys() if x != "Current Selected" ]
m = TerminalMenu(select_species, title='Select a Species') m = TerminalMenu(select_species, title='Select a Species')
selection = m.show() selection = m.show()
@@ -83,10 +87,7 @@ class CharacterCreater:
if not characte_species["combineble"]: if not characte_species["combineble"]:
combineble_species = False combineble_species = False
else: else:
# TODO: Remove all combineble Classes combineble_species = CharacterCreater.select_a_species(player_config, block_by_fixed_type=True, current_selected=characte_species["species"])["species"]
del player_config["species"][characte_species["species"]["name"]]
player_config["species"]["Current Selected"] = characte_species["species"]
combineble_species = CharacterCreater.select_a_species(player_config, block_by_fixed_type=True)["species"]
return CharacterCreater.cleanup({ return CharacterCreater.cleanup({
"name": characte_name, "name": characte_name,