Terror Princess Rework (#13657)

* rework queen eggs, princess caste

* add trailing newlines for travis

* refactor for code standards

* Remove old/incorrect comment from queen.dm

* refactor purple.dm, add notification for which area queen is in

* princesses no longer lose ventcrawl or gain wallsmash when nesting, deletes MassFlicker()

* add status tab info for purples about where their queen is

* Simplified princess code: removed NestMode(), NestMode2().

* makes terrors use 'bite' animation when attacking something

* status tab spider regeneration helptext

* converts queen spit from TOX to BURN, empress single-fire

* fixes terror gender, double-examine text. add terrors closing airlocks, remove queen wrap

* newline for travis

* alter terror spider event balance depending on server pop

* white infection sequence: gray, red, brown, green, green

* moves #define isterrorspider(A) to __DEFINES\mobs.dm

* remove typoed comment

* fix: prevent exploit with spam-clicking egglay action button

* fix: prevent AI trying to move spiders after a player takes control of them

* fix bug where terrors bumping an airlock repeatedly could make it both open and close

* clarify comment on event odds

* increase queen spit burn damage from 30 to 40

* add: queen webs are now airtight, instead of dealing damage/hallucination

* remove spider alert for already-controlled spiders

* queen spit naming fix

* travis newline

* encourage princesses to remain outside vents

* fixes calls to CountSpidersDetailed not using list()

* makes it easier to debug away mission AI

* code quality: more typeless loops

* add: killing a queen, also kills most of her offspring

* remove walk fix, for splitting into another PR

* remove events\spider_terror.dm changes, move to another PR

* makes it compile - will still require merge conflict resolving later.

* fix: purple webs cause purples to lose sign of queen and die

* visible-> near for purples

* fix wrong gender on spiders

* queen spit now damages structures (like mechs) and other spiders

* ghost spacing

* show queen living time on examine

* Fixes #12969 - terrors getting stuck in web

* revert all changes to purple.dm

* farie requests 1

* farie refactoring II

* var/list/spider_array

* var/list/spider_totals

* more farie

* queen examine laycount, initial eggcount

* terror heat vulnerability, refactoring 1/0 vars

Co-authored-by: Kyep <Kyep@users.noreply.github.com>
This commit is contained in:
Kyep
2020-09-17 22:29:32 +00:00
committed by GitHub
parent 5cafb0bf16
commit e135c2326b
16 changed files with 395 additions and 287 deletions
+10 -8
View File
@@ -54,8 +54,6 @@
var/eggs_hatched = 0 // num of hatch events completed
var/awaymission_checked = FALSE
var/awaymission_infection = FALSE // TRUE if infection occurred inside gateway
var/list/types_basic = list(/mob/living/simple_animal/hostile/poison/terror_spider/red, /mob/living/simple_animal/hostile/poison/terror_spider/gray)
var/list/types_adv = list(/mob/living/simple_animal/hostile/poison/terror_spider/red, /mob/living/simple_animal/hostile/poison/terror_spider/gray, /mob/living/simple_animal/hostile/poison/terror_spider/green)
/obj/item/organ/internal/body_egg/terror_eggs/on_life()
@@ -104,12 +102,16 @@
var/infection_completed = FALSE
var/obj/structure/spider/spiderling/terror_spiderling/S = new(get_turf(owner))
switch(eggs_hatched)
if(0) // First spiderling
S.grow_as = pick(types_basic)
if(1) // Second
S.grow_as = pick(types_adv)
if(2) // Last
S.grow_as = /mob/living/simple_animal/hostile/poison/terror_spider/princess
if(0) // 1st spiderling
S.grow_as = /mob/living/simple_animal/hostile/poison/terror_spider/gray
if(1) // 2nd
S.grow_as = /mob/living/simple_animal/hostile/poison/terror_spider/red
if(2) // 3rd
S.grow_as = /mob/living/simple_animal/hostile/poison/terror_spider/brown
if(3) // 4th
S.grow_as = /mob/living/simple_animal/hostile/poison/terror_spider/green
if(4) // 5th
S.grow_as = /mob/living/simple_animal/hostile/poison/terror_spider/green
infection_completed = TRUE
S.immediate_ventcrawl = TRUE
eggs_hatched++