mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2026-08-24 05:36:57 +01:00
Clones merc simple_animal mobs into the simple_mob format (#5363)
* Planet controller startup delay * Fix the New() on this interfering with my work! * Creates SSplanets subsystem For SPEEDYNESS It probably works. I mean it's hard to sit there for 8 hours and test it. But it seems to work okay. At worst if it doesn't you'll have weather that doesn't make sense. ;v * Reworks weather to fit the faster weather ticker * Allows AIs to produce and control maint/construction/mining drones. (#5282) * Allows AIs to control maint/construction drones. * Radio control online. * Things Not Saving * Drone control respects intellicores. * Config control, AI drones are disableable if the AI isn't an antag. * There's a diff so it must have saved. Right? * No un/wrenching of the core. * Complies to Replies. * Folders props, and adds the laser prism, receptor, and sealed doors. (#5337) * Re-bases props, and adds the laser prism. * Ver 1 of Puzzle Lock and Doors * Doors * Fix door hiccup I made, modify Prism * Converts merc simple_animal to simple_mob
This commit is contained in:
@@ -23,9 +23,9 @@ as most other objects ( process() ) or mobs ( Life() ) do.
|
||||
|
||||
Flow of Execution:
|
||||
|
||||
/ - Every 0.5s - > /datum/ai_holder/handle_tactics() - > /datum/ai_holder/handle_stance_tactical() - > switch(stance)...
|
||||
AI Subsystem - *
|
||||
\ - Every 2.0s - > /datum/ai_holder/handle_strategicals() - > /datum/ai_holder/handle_stance_strategical() - > switch(stance)...
|
||||
AI Subsystem
|
||||
- > Every 0.5s - > /datum/ai_holder/handle_tactics() - > /datum/ai_holder/handle_stance_tactical() - > switch(stance)...
|
||||
- > Every 2.0s - > /datum/ai_holder/handle_strategicals() - > /datum/ai_holder/handle_stance_strategical() - > switch(stance)...
|
||||
|
||||
The datum is not driven by its mob, as previous implementations did, meaning Life() is not involved. Instead, it is processed by a specific Master Controller Subsystem
|
||||
titled 'AI', which by default ticks every half a second. Each instance of the ai_holder datum that is not 'asleep' is part of a list, containing ai_holders that are awake.
|
||||
|
||||
@@ -24,6 +24,10 @@
|
||||
return FALSE
|
||||
|
||||
/mob/living/simple_mob/ICheckRangedAttack(atom/A)
|
||||
if(needs_reload)
|
||||
if(reload_count >= reload_max)
|
||||
try_reload()
|
||||
return FALSE
|
||||
return projectiletype ? TRUE : FALSE
|
||||
|
||||
/mob/living/proc/ISpecialAttack(atom/A)
|
||||
|
||||
@@ -55,6 +55,23 @@
|
||||
say_stand_down = list("Good.")
|
||||
say_escalate = list("Yarr! The booty is mine!")
|
||||
|
||||
// Mercs!
|
||||
/datum/say_list/merc
|
||||
speak = list("When are we gonna get out of this chicken-shit outfit?",
|
||||
"Wish I had better equipment...",
|
||||
"I knew I should have been a line chef...",
|
||||
"Fuckin' helmet keeps fogging up.",
|
||||
"Anyone else smell that?")
|
||||
emote_see = list("sniffs", "coughs", "taps his foot", "looks around", "checks his equipment")
|
||||
|
||||
say_understood = list("Understood!", "Affirmative!")
|
||||
say_cannot = list("Negative!")
|
||||
say_maybe_target = list("Who's there?")
|
||||
say_got_target = list("Engaging!")
|
||||
say_threaten = list("Get out of here!", "Hey! Private Property!")
|
||||
say_stand_down = list("Good.")
|
||||
say_escalate = list("Your funeral!", "Bring it!")
|
||||
|
||||
/datum/say_list/malf_drone
|
||||
speak = list("ALERT.","Hostile-ile-ile entities dee-twhoooo-wected.","Threat parameterszzzz- szzet.","Bring sub-sub-sub-systems uuuup to combat alert alpha-a-a.")
|
||||
emote_see = list("beeps menacingly","whirrs threateningly","scans its immediate vicinity")
|
||||
|
||||
Reference in New Issue
Block a user