mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-11 10:11:09 +00:00
* done * straight walk * movement * yep * removes unused macro * done * Update ai_movement.dm
24 lines
849 B
Plaintext
24 lines
849 B
Plaintext
/// The subsystem used to tick [/datum/ai_controllers] instances. Handling the re-checking of plans.
|
|
PROCESSING_SUBSYSTEM_DEF(ai_controllers)
|
|
name = "AI behavior"
|
|
flags = SS_POST_FIRE_TIMING|SS_BACKGROUND
|
|
priority = FIRE_PRIORITY_NPC
|
|
runlevels = RUNLEVEL_GAME | RUNLEVEL_POSTGAME
|
|
init_order = INIT_ORDER_AI_CONTROLLERS
|
|
wait = 8 //Uses the value of CLICK_CD_MELEE because that seemed like a nice standard for the speed of AI behavior
|
|
|
|
///an assoc list of all ai_behaviors by type, to
|
|
var/list/ai_behaviors
|
|
|
|
/datum/controller/subsystem/processing/ai_controllers/Initialize(timeofday)
|
|
SetupAIBehaviors()
|
|
return ..()
|
|
|
|
/datum/controller/subsystem/processing/ai_controllers/proc/SetupAIBehaviors()
|
|
ai_behaviors = list()
|
|
for(var/i in subtypesof(/datum/ai_behavior))
|
|
var/datum/ai_behavior/ai_behavior = new i
|
|
ai_behaviors[i] = ai_behavior
|
|
|
|
|