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:
Anewbe
2018-06-21 00:19:29 -07:00
committed by Atermonera
parent b22f44d560
commit 2d94e00267
42 changed files with 1213 additions and 198 deletions
+3 -3
View File
@@ -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.
+4
View File
@@ -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)
+17
View File
@@ -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")