mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 05:30:05 +01:00
65 lines
2.5 KiB
Plaintext
65 lines
2.5 KiB
Plaintext
|
|
/// AI controller for normal roach
|
|
/datum/ai_controller/basic_controller/cockroach
|
|
blackboard = list(
|
|
BB_TARGETING_STRATEGY = /datum/targeting_strategy/basic,
|
|
BB_PET_TARGETING_STRATEGY = /datum/targeting_strategy/basic/not_friends,
|
|
BB_OWNER_SELF_HARM_RESPONSES = list(
|
|
"*me waves its antennae in disapproval.",
|
|
"*me chitters sadly."
|
|
)
|
|
)
|
|
|
|
ai_traits = PASSIVE_AI_FLAGS
|
|
ai_movement = /datum/ai_movement/basic_avoidance
|
|
idle_behavior = /datum/idle_behavior/idle_random_walk
|
|
planning_subtrees = list(
|
|
/datum/ai_planning_subtree/random_speech/insect,
|
|
/datum/ai_planning_subtree/find_and_hunt_target/roach,
|
|
)
|
|
|
|
/// AI controller for aggressive roach
|
|
/datum/ai_controller/basic_controller/cockroach/aggro
|
|
planning_subtrees = list(
|
|
/datum/ai_planning_subtree/escape_captivity,
|
|
/datum/ai_planning_subtree/pet_planning,
|
|
/datum/ai_planning_subtree/random_speech/insect,
|
|
/datum/ai_planning_subtree/simple_find_target,
|
|
/datum/ai_planning_subtree/basic_melee_attack_subtree,
|
|
/datum/ai_planning_subtree/find_and_hunt_target/roach,
|
|
)
|
|
|
|
/// AI controller for roach who can shoot at you
|
|
/datum/ai_controller/basic_controller/cockroach/glockroach
|
|
planning_subtrees = list(
|
|
/datum/ai_planning_subtree/escape_captivity,
|
|
/datum/ai_planning_subtree/pet_planning,
|
|
/datum/ai_planning_subtree/random_speech/insect,
|
|
/datum/ai_planning_subtree/simple_find_target,
|
|
/datum/ai_planning_subtree/basic_ranged_attack_subtree/glockroach, //If we are attacking someone, this will prevent us from hunting
|
|
/datum/ai_planning_subtree/find_and_hunt_target/roach,
|
|
)
|
|
|
|
/datum/ai_planning_subtree/basic_ranged_attack_subtree/glockroach
|
|
ranged_attack_behavior = /datum/ai_behavior/basic_ranged_attack/glockroach
|
|
|
|
/datum/ai_behavior/basic_ranged_attack/glockroach //Slightly slower, as this is being made in feature freeze ;)
|
|
action_cooldown = 1 SECONDS
|
|
|
|
/// roach who shoots at you slightly slower
|
|
/datum/ai_controller/basic_controller/cockroach/mobroach
|
|
planning_subtrees = list(
|
|
/datum/ai_planning_subtree/escape_captivity,
|
|
/datum/ai_planning_subtree/pet_planning,
|
|
/datum/ai_planning_subtree/random_speech/insect,
|
|
/datum/ai_planning_subtree/simple_find_target,
|
|
/datum/ai_planning_subtree/basic_ranged_attack_subtree/mobroach,
|
|
/datum/ai_planning_subtree/find_and_hunt_target/roach,
|
|
)
|
|
|
|
/datum/ai_planning_subtree/basic_ranged_attack_subtree/mobroach
|
|
ranged_attack_behavior = /datum/ai_behavior/basic_ranged_attack/mobroach
|
|
|
|
/datum/ai_behavior/basic_ranged_attack/mobroach
|
|
action_cooldown = 2 SECONDS
|