extends PickPlayerAction class_name ProtectNightAction @export var infinite_protection: bool = false func execute_with_target(user: WolfPlayer, target: WolfPlayer) -> bool: if !super.execute_with_target(user, target): return false target.add_murder_callback(_target_about_to_be_murdered) return true func _target_about_to_be_murdered(target: WolfPlayer, killer: WolfPlayer) -> WolfPlayer.CallbackFlags: if !infinite_protection: return WolfPlayer.CallbackFlags.STOP_PROCESS # no you don't else: return WolfPlayer.CallbackFlags.STOP_PROCESS | WolfPlayer.CallbackFlags.KEEP_CALLBACK # no you REALLY don't