def on_test(cls, interaction_sim: Sim, interaction_target: Any,
             interaction_context: InteractionContext,
             **kwargs) -> TestResult:
     cls.get_log().format_with_message(
         'Running \'{}\' on_test.'.format(cls.__name__),
         interaction_sim=interaction_sim,
         interaction_target=interaction_target,
         interaction_context=interaction_context,
         kwargles=kwargs)
     if interaction_target is None or not CommonTypeUtils.is_sim_instance(
             interaction_target):
         cls.get_log().debug('Failed, Target is not a Sim.')
         return TestResult.NONE
     sim_info = CommonSimUtils.get_sim_info(interaction_sim)
     if not OCSettingUtils.is_enabled_for_interactions(sim_info):
         cls.get_log().debug(
             'Failed, Active Sim is not available for Outfit Customization.'
         )
         return TestResult.NONE
     target_sim_info = CommonSimUtils.get_sim_info(interaction_target)
     if not OCSettingUtils.is_enabled_for_interactions(target_sim_info):
         cls.get_log().debug(
             'Failed, Target Sim is not available for Outfit Customization.'
         )
         return TestResult.NONE
     cls.get_log().debug('Success.')
     return TestResult.TRUE
 def on_started(self, interaction_sim: Sim,
                interaction_target: Any) -> bool:
     self.log.debug('Running \'{}\' on_started.'.format(
         OpenCustomGenderSettingsInteraction.__name__))
     if not CommonTypeUtils.is_sim_instance(interaction_target):
         self.log.debug('Target is not a sim.')
         return False
     CommonTimeUtils.pause_the_game()
     target_sim_info = CommonSimUtils.get_sim_info(interaction_target)
     CustomGenderSettingsDialog(target_sim_info).open()
     return True
 def on_test(cls, interaction_sim: Sim, interaction_target: Any,
             interaction_context: InteractionContext,
             **kwargs) -> TestResult:
     cls.get_log().debug('Running \'{}\' on_test.'.format(
         OpenCustomGenderSettingsInteraction.__name__))
     if interaction_target is None or not CommonTypeUtils.is_sim_instance(
             interaction_target):
         cls.get_log().debug('Failed, Target is not a Sim.')
         return TestResult.NONE
     sim_info = CommonSimUtils.get_sim_info(interaction_sim)
     if not cls._get_setting_utils().is_enabled_for_interactions(sim_info):
         cls.get_log().debug(
             'Failed, Active Sim is not enabled for CGS interactions.')
         return TestResult.NONE
     target_sim_info = CommonSimUtils.get_sim_info(interaction_target)
     if not cls._get_setting_utils().is_enabled_for_interactions(
             target_sim_info):
         cls.get_log().debug(
             'Failed, Target Sim is not enabled for CGS interactions.')
         return TestResult.NONE
     cls.get_log().debug('Success, can open Custom Gender Settings.')
     return TestResult.TRUE
 def should_add(self, script_object: ScriptObject, *args, **kwargs) -> bool:
     return CommonTypeUtils.is_sim_instance(script_object)