def apply_after_sex_functions(sex_handler, sims_list, is_ending=False): is_full_interaction = sex_handler.sim_minute_counter > 5 if is_ending is True: if sex_handler.unsilence_phone_after_sex is True: TurboUIUtil.Phone.unsilence() if is_full_interaction is True: apply_after_sex_satisfaction(sims_list, sex_handler=sex_handler) _after_sex_buffs(sims_list) for (actor_id, sim_info) in sims_list: update_stapon(sim_info, force_remove=True) _after_sex_dress_up(sim_info) set_sim_penis_state(sim_info, True, 3) set_sim_desire_level(sim_info, 0) remove_sim_buff(sim_info, SimBuff.WW_DESIRE_POSITIVE) remove_sim_buff(sim_info, SimBuff.WW_DESIRE_NEGATIVE) while is_full_interaction is True: _after_sex_cum(sex_handler, actor_id, sim_info) if len(sims_list) > 1: is_incest_sex = True in [ sim_info is not target_sim_info and TurboSimUtil.Relationship.is_family( sim_info, target_sim_info) for (_, target_sim_info) in sims_list ] increase_sim_ww_statistic(sim_info, 'times_had_sex') increase_sim_ww_statistic(sim_info, 'times_had_incest_sex') else: increase_sim_ww_statistic(sim_info, 'times_had_solo_sex')
def _update_actors_light_other_flags(sex_handler, sims_list): for (_, sim_info) in sims_list: set_sim_statistic_value(sim_info, 1, SimCommodity.WW_IS_SIM_IN_SEX) increase_sim_ww_statistic( sim_info, 'time_spent_on_sex_' + str(sex_handler.get_animation_instance(). get_sex_category().name.lower())) set_sim_penis_state(sim_info, True, 9999, set_if_nude=True)
def _nudity_reaction(sim, target, only_mixer=False, force=False): increase_sim_ww_statistic(sim, 'times_reacted_to_nudity') increase_sim_ww_statistic(target, 'times_been_seen_nude') if _is_positive_to_sim_nudity(sim, target): positive_reaction_affordance = random.choice( (SimInteraction.WW_NUDITY_REACTION_POSITIVE_1, SimInteraction.WW_NUDITY_REACTION_POSITIVE_2, SimInteraction.WW_NUDITY_REACTION_POSITIVE_3)) si_result = TurboSimUtil.Interaction.push_affordance( sim, positive_reaction_affordance, target=target, interaction_context=TurboInteractionUtil.InteractionContext. SOURCE_SCRIPT, insert_strategy=TurboInteractionUtil.QueueInsertStrategy.NEXT if force is False else TurboInteractionUtil.QueueInsertStrategy.FIRST, priority=TurboInteractionUtil.Priority.High if force is False else TurboInteractionUtil.Priority.Critical, run_priority=TurboInteractionUtil.Priority.High if force is False else TurboInteractionUtil.Priority.Critical ) if only_mixer is False else None else: si_result = TurboSimUtil.Interaction.push_affordance( sim, SimInteraction.WW_NUDITY_REACTION_SHOCK, target=target, interaction_context=TurboInteractionUtil.InteractionContext. SOURCE_SCRIPT, insert_strategy=TurboInteractionUtil.QueueInsertStrategy.NEXT if force is False else TurboInteractionUtil.QueueInsertStrategy.FIRST, priority=TurboInteractionUtil.Priority.High if force is False else TurboInteractionUtil.Priority.Critical, run_priority=TurboInteractionUtil.Priority.High if force is False else TurboInteractionUtil.Priority.Critical ) if only_mixer is False else None if not si_result and ( si_result is None or TurboInteractionUtil.can_interaction_fallback_to_mixer_interaction( sim, si_result.execute_result.interaction)): si_result = TurboSimUtil.Interaction.push_affordance( sim, SimInteraction.WW_NUDITY_REACTION_MIXER, target=target, interaction_context=TurboInteractionUtil.InteractionContext. SOURCE_REACTION, insert_strategy=TurboInteractionUtil.QueueInsertStrategy.NEXT) if si_result: if TurboSimUtil.Age.get_age(sim) == TurboSimUtil.Age.CHILD: add_sim_buff(sim, SimBuff.PRIVACY_EMBARRASSED) cooldown_offset = random.randint(-1, 2) sim_ev(sim).full_nudity_reaction_cooldown = 12 + cooldown_offset sim_ev(sim).inner_nudity_reaction_cooldown = 6 + cooldown_offset set_sim_penis_state(sim, True, 8, set_if_nude=True) return True return False
def on_interaction_start(cls, interaction_instance): sim = cls.get_interaction_sim(interaction_instance) target = cls.get_interaction_target(interaction_instance) _flash_sim_result(sim, target) increase_sim_ww_statistic(sim, 'times_flashed_bottom') set_sim_penis_state(sim, True, 5) nudity_notification( text=1399400780, text_tokens=(sim, target), icon=sim, sims=(sim, target), is_autonomy=cls.get_interaction_source(interaction_instance) == TurboInteractionUtil.InteractionSource.AUTONOMY) return True
def _update_actors_heavy_other_flags(sims_list): for (_, sim_info) in sims_list: set_sim_penis_state(sim_info, True, 9999, set_if_nude=True, force=True)
def _wickedwhims_command_lose_sim_erection(output=None): sim = TurboManagerUtil.Sim.get_active_sim() set_sim_penis_state(sim, False, 0, set_if_nude=True) output('Soften out.')
def _wickedwhims_command_give_sim_erection(output=None): sim = TurboManagerUtil.Sim.get_active_sim() set_sim_penis_state(sim, True, 10, set_if_nude=True) output('Got hard.')
def update_sims_high_desire(sim_identifier): sim_info = TurboManagerUtil.Sim.get_sim_info(sim_identifier) if get_sim_desire_level(sim_info) > 60: set_sim_penis_state(sim_info, True, 8, set_if_nude=True)