Example #1
0
 def w_skill_priority_event(self, window: sg.Window, key: str, value: str):
     N = key[5]
     current_list = list(filter(lambda e: e != '', value.split(' > ')))
     available_list = [sk for sk in sk_list if sk not in current_list]
     current_list = priority_GUI('skill', key.replace('_', ' ').strip(), current_list, available_list, sk_list,
                                 window.mouse_location()).open()
     if current_list is not None:
         p = key[17:key.index('_', 17)]
         self.quest['wave'][N][f'character_{p}']['skill_priority'] = current_list if current_list != ['Same as Wave1'] else self.quest['wave']['1'][f'character_{p}']['skill_priority']  # noqa: E501
         window[f'{self.__prefix_key}{key}'].Update(' > '.join(self.quest['wave'][N][f'character_{p}']['skill_priority']))
Example #2
0
 def handle_stamina_event(self, window: sg.Window, key: str, value):
     if '_use_' in key:
         self.quest['stamina']['use'] = value
         window[f'{self.__prefix_key}_stamina_priority_'].Widget.config(readonlybackground=('white' if value else 'gray'))
         self.update_stamina_bind(window)
     elif '_stamina_priority_' in key:
         current_list = list(filter(lambda e: e != '', value.split(' > ')))
         available_list = [s for s in stamina_list if s not in [c[:2] for c in current_list]]
         current_list = priority_GUI('stamina', key.replace('_', ' ').strip(), current_list, available_list, stamina_list,
                                     window.mouse_location()).open()
         if current_list is not None:
             self.quest['stamina']['priority'] = current_list
             window[f'{self.__prefix_key}{key}'].Update(' > '.join(current_list))