mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 21:18:37 +01:00
[no gbp] few repairbot fixes and some beacon pathing improvements. (#88144)
## About The Pull Request this fixes some few sentient repairbot-related issues that were reported a few days ago. ive also given sentient repairbots a new simple UI to manage their materials.  while I was at it, i also fixed bots continuously trying to path to unreachable beacons, which can be quite costly since they're regularly very far away. ## Why It's Good For The Game closes #88067 ## Changelog 🆑 fix: repairbots no longer get flashed by their own welder fix: repairbots no longer break glass tables they step on fix: repairbots can no longer flush their own welders fix: fixes some runtimes when emagged repairbots try to deconstruct things fix: fixes sentient repairbots not being able to see or remove their material counts /🆑
This commit is contained in:
@@ -3,11 +3,10 @@
|
||||
/datum/ai_controller/basic_controller/bot/firebot
|
||||
blackboard = list(
|
||||
BB_TARGETING_STRATEGY = /datum/targeting_strategy/basic/allow_turfs,
|
||||
BB_UNREACHABLE_LIST_COOLDOWN = 45 SECONDS,
|
||||
BB_UNREACHABLE_LIST_COOLDOWN = 3 MINUTES,
|
||||
)
|
||||
planning_subtrees = list(
|
||||
/datum/ai_planning_subtree/respond_to_summon,
|
||||
/datum/ai_planning_subtree/manage_unreachable_list,
|
||||
/datum/ai_planning_subtree/extinguishing_people,
|
||||
/datum/ai_planning_subtree/extinguishing_turfs,
|
||||
/datum/ai_planning_subtree/salute_authority,
|
||||
@@ -99,7 +98,7 @@
|
||||
continue
|
||||
if(LAZYACCESS(ignore_list, possible_turf))
|
||||
continue
|
||||
if(controller.set_if_can_reach(target_key, possible_turf, bypass_add_to_blacklist = bypass_add_blacklist))
|
||||
if(controller.set_if_can_reach(key = target_key, target = possible_turf, bypass_add_to_blacklist = bypass_add_blacklist))
|
||||
return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED
|
||||
|
||||
return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED
|
||||
@@ -113,7 +112,7 @@
|
||||
|
||||
//if we couldnt path, or we successfully burnt someone, ignore them for a bit!
|
||||
if(!succeeded || (isliving(target) && (living_bot.bot_access_flags & BOT_COVER_EMAGGED)))
|
||||
controller.set_blackboard_key_assoc_lazylist(BB_TEMPORARY_IGNORE_LIST, target, TRUE)
|
||||
controller.add_to_blacklist(target)
|
||||
|
||||
return ..()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user