def on_exchange(evt, var, actor, target, actor_role, target_role): if not ANGRY_WOLVES: return wcroles = var.WOLFCHAT_ROLES if var.RESTRICT_WOLFCHAT & var.RW_REM_NON_WOLVES: if var.RESTRICT_WOLFCHAT & var.RW_TRAITOR_NON_WOLF: wcroles = var.WOLF_ROLES else: wcroles = var.WOLF_ROLES | {"traitor"} if target_role in wcroles and actor_role not in wcroles and wolf.wolf_can_kill(var, target): evt.data["actor_messages"].append(messages["angry_wolves"]) elif actor_role in wcroles and target_role not in wcroles and wolf.wolf_can_kill(var, actor): evt.data["target_messages"].append(messages["angry_wolves"])
def on_transition_night_end(evt, var): if not ANGRY_WOLVES: return wolves = get_players(wolf.CAN_KILL) if not wolves or not wolf.wolf_can_kill(var, wolves[0]): return for wofl in wolves: wofl.queue_message(messages["angry_wolves"]) wofl.send_messages()