[MIRROR] fixes regal rats not running away [MDB IGNORE] (#23304)

* fixes regal rats not running away (#77888)

## About The Pull Request
fixes the regal rat not running away from whoever attacked him. also
adds a new pet command behavior which makes the king's minions drop
whatever they are doing and defend their king from whoever has attacked
him.

## Why It's Good For The Game
the rats now behave right

## Changelog
🆑
fix: regal rats now run away from whoever attacked them
add: new pet behavior which makes pets defend their owners if they got
attacked
/🆑

* fixes regal rats not running away

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
This commit is contained in:
SkyratBot
2023-08-25 03:23:11 +02:00
committed by GitHub
parent 1f04d51005
commit 6aa87c2456
5 changed files with 53 additions and 2 deletions
@@ -54,6 +54,7 @@
var/static/list/mouse_commands = list(
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/protect_owner,
/datum/pet_command/follow,
/datum/pet_command/point_targetting/attack/mouse
)
@@ -61,6 +62,7 @@
var/static/list/glockroach_commands = list(
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/protect_owner/glockroach,
/datum/pet_command/follow,
/datum/pet_command/point_targetting/attack/glockroach
)
@@ -243,3 +245,6 @@
else if(prob(5))
C.vomit()
return ..()
/datum/pet_command/protect_owner/glockroach
protect_behavior = /datum/ai_planning_subtree/basic_ranged_attack_subtree/glockroach
@@ -1,7 +1,7 @@
/datum/ai_controller/basic_controller/regal_rat
blackboard = list(
BB_TARGETTING_DATUM = new /datum/targetting_datum/basic,
BB_BASIC_MOB_FLEEING = FALSE,
BB_BASIC_MOB_FLEEING = TRUE,
BB_FLEE_TARGETTING_DATUM = new /datum/targetting_datum/basic/ignore_faction,
)
@@ -13,7 +13,7 @@
planning_subtrees = list(
/datum/ai_planning_subtree/target_retaliate/to_flee,
/datum/ai_planning_subtree/targeted_mob_ability/riot,
/datum/ai_planning_subtree/flee_target,
/datum/ai_planning_subtree/flee_target/from_flee_key,
/datum/ai_planning_subtree/attack_obstacle_in_path,
/datum/ai_planning_subtree/basic_melee_attack_subtree,
/datum/ai_planning_subtree/use_mob_ability/domain,
@@ -22,6 +22,7 @@
/datum/ai_planning_subtree/targeted_mob_ability/riot
target_key = BB_BASIC_MOB_FLEE_TARGET // we only want to trigger this when provoked, manpower is low nowadays
ability_key = BB_RAISE_HORDE_ABILITY
finish_planning = FALSE
/datum/ai_planning_subtree/use_mob_ability/domain
ability_key = BB_DOMAIN_ABILITY