diff --git a/code/game/objects/effects/semirandom_mobs_vr.dm b/code/game/objects/effects/semirandom_mobs_vr.dm index 261c2d8620..343bf77e7f 100644 --- a/code/game/objects/effects/semirandom_mobs_vr.dm +++ b/code/game/objects/effects/semirandom_mobs_vr.dm @@ -292,7 +292,6 @@ var/global/list/semirandom_mob_spawner_decisions = list() ), list(/mob/living/simple_mob/vore/solargrub), list(/mob/living/simple_mob/vore/woof), - list(/mob/living/simple_mob/vore/alienanimals/teppi), list(/mob/living/simple_mob/vore/alienanimals/space_ghost), list(/mob/living/simple_mob/vore/alienanimals/catslug), list(/mob/living/simple_mob/vore/alienanimals/space_jellyfish), diff --git a/code/modules/emotes/definitions/audible_furry_vr.dm b/code/modules/emotes/definitions/audible_furry_vr.dm index a3ac8727f9..4fb63982ce 100644 --- a/code/modules/emotes/definitions/audible_furry_vr.dm +++ b/code/modules/emotes/definitions/audible_furry_vr.dm @@ -1,234 +1,240 @@ /decl/emote/audible/awoo - key = "awoo" - emote_message_3p = "lets out an awoo." - emote_sound = 'sound/voice/awoo.ogg' + key = "awoo" + emote_message_3p = "lets out an awoo." + emote_sound = 'sound/voice/awoo.ogg' /decl/emote/audible/awoo2 - key = "awoo2" - emote_message_3p = "lets out an awoo." - emote_sound = 'sound/voice/long_awoo.ogg' + key = "awoo2" + emote_message_3p = "lets out an awoo." + emote_sound = 'sound/voice/long_awoo.ogg' /decl/emote/audible/growl - key = "growl" - emote_message_3p = "lets out a growl." - emote_sound = 'sound/voice/growl.ogg' + key = "growl" + emote_message_3p = "lets out a growl." + emote_sound = 'sound/voice/growl.ogg' /decl/emote/audible/woof - key = "woof" - emote_message_3p = "lets out a woof." - emote_sound = 'sound/voice/woof.ogg' + key = "woof" + emote_message_3p = "lets out a woof." + emote_sound = 'sound/voice/woof.ogg' /decl/emote/audible/woof2 - key = "woof2" - emote_message_3p = "lets out a woof." - emote_sound = 'sound/voice/woof2.ogg' + key = "woof2" + emote_message_3p = "lets out a woof." + emote_sound = 'sound/voice/woof2.ogg' /decl/emote/audible/nya - key = "nya" - emote_message_3p = "lets out a nya." - emote_sound = 'sound/voice/nya.ogg' + key = "nya" + emote_message_3p = "lets out a nya." + emote_sound = 'sound/voice/nya.ogg' /decl/emote/audible/mrowl - key = "mrowl" - emote_message_3p = "mrowls." - emote_sound = 'sound/voice/mrow.ogg' + key = "mrowl" + emote_message_3p = "mrowls." + emote_sound = 'sound/voice/mrow.ogg' /decl/emote/audible/peep - key = "peep" - emote_message_3p = "peeps like a bird." - emote_sound = 'sound/voice/peep.ogg' + key = "peep" + emote_message_3p = "peeps like a bird." + emote_sound = 'sound/voice/peep.ogg' /decl/emote/audible/chirp - key = "chirp" - emote_message_3p = "chirps!" - emote_sound = 'sound/misc/nymphchirp.ogg' - sound_vary = FALSE + key = "chirp" + emote_message_3p = "chirps!" + emote_sound = 'sound/misc/nymphchirp.ogg' + sound_vary = FALSE /decl/emote/audible/hoot - key = "hoot" - emote_message_3p = "hoots!" - emote_sound = 'sound/voice/hoot.ogg' + key = "hoot" + emote_message_3p = "hoots!" + emote_sound = 'sound/voice/hoot.ogg' /decl/emote/audible/weh - key = "weh" - emote_message_3p = "lets out a weh." - emote_sound = 'sound/voice/weh.ogg' + key = "weh" + emote_message_3p = "lets out a weh." + emote_sound = 'sound/voice/weh.ogg' /decl/emote/audible/merp - key = "merp" - emote_message_3p = "lets out a merp." - emote_sound = 'sound/voice/merp.ogg' + key = "merp" + emote_message_3p = "lets out a merp." + emote_sound = 'sound/voice/merp.ogg' /decl/emote/audible/myarp - key = "myarp" - emote_message_3p = "lets out a myarp." - emote_sound = 'sound/voice/myarp.ogg' + key = "myarp" + emote_message_3p = "lets out a myarp." + emote_sound = 'sound/voice/myarp.ogg' /decl/emote/audible/bark - key = "bark" - emote_message_3p = "lets out a bark." - emote_sound = 'sound/voice/bark2.ogg' + key = "bark" + emote_message_3p = "lets out a bark." + emote_sound = 'sound/voice/bark2.ogg' /decl/emote/audible/bork - key = "bork" - emote_message_3p = "lets out a bork." - emote_sound = 'sound/voice/bork.ogg' + key = "bork" + emote_message_3p = "lets out a bork." + emote_sound = 'sound/voice/bork.ogg' /decl/emote/audible/mrow - key = "mrow" - emote_message_3p = "lets out a mrow." - emote_sound = 'sound/voice/mrow.ogg' + key = "mrow" + emote_message_3p = "lets out a mrow." + emote_sound = 'sound/voice/mrow.ogg' /decl/emote/audible/hypno - key = "hypno" - emote_message_3p = "lets out a mystifying tone." - emote_sound = 'sound/voice/hypno.ogg' + key = "hypno" + emote_message_3p = "lets out a mystifying tone." + emote_sound = 'sound/voice/hypno.ogg' /decl/emote/audible/hiss - key = "hiss" - emote_message_3p = "lets out a hiss." - emote_sound = 'sound/voice/hiss.ogg' + key = "hiss" + emote_message_3p = "lets out a hiss." + emote_sound = 'sound/voice/hiss.ogg' /decl/emote/audible/rattle - key = "rattle" - emote_message_3p = "rattles!" - emote_sound = 'sound/voice/rattle.ogg' + key = "rattle" + emote_message_3p = "rattles!" + emote_sound = 'sound/voice/rattle.ogg' /decl/emote/audible/squeak - key = "squeak" - emote_message_3p = "lets out a squeak." - emote_sound = 'sound/effects/mouse_squeak.ogg' + key = "squeak" + emote_message_3p = "lets out a squeak." + emote_sound = 'sound/effects/mouse_squeak.ogg' /decl/emote/audible/geck - key = "geck" - emote_message_3p = "geckers!" - emote_sound = 'sound/voice/geck.ogg' + key = "geck" + emote_message_3p = "geckers!" + emote_sound = 'sound/voice/geck.ogg' /decl/emote/audible/baa - key = "baa" - emote_message_3p = "lets out a baa." - emote_sound = 'sound/voice/baa.ogg' + key = "baa" + emote_message_3p = "lets out a baa." + emote_sound = 'sound/voice/baa.ogg' /decl/emote/audible/baa2 - key = "baa2" - emote_message_3p = "bleats." - emote_sound = 'sound/voice/baa2.ogg' + key = "baa2" + emote_message_3p = "bleats." + emote_sound = 'sound/voice/baa2.ogg' /* /decl/emote/audible/deathgasp2 - key = "deathgasp2" - emote_message_3p = "[species.get_death_message()]" - m_type = 1 - emote_sound = 'sound/voice/deathgasp2.ogg' + key = "deathgasp2" + emote_message_3p = "[species.get_death_message()]" + m_type = 1 + emote_sound = 'sound/voice/deathgasp2.ogg' */ /decl/emote/audible/mar - key = "mar" - emote_message_3p = "lets out a mar." - emote_sound = 'sound/voice/mar.ogg' + key = "mar" + emote_message_3p = "lets out a mar." + emote_sound = 'sound/voice/mar.ogg' /decl/emote/audible/wurble - key = "wurble" - emote_message_3p = "lets out a wurble." - emote_sound = 'sound/voice/wurble.ogg' + key = "wurble" + emote_message_3p = "lets out a wurble." + emote_sound = 'sound/voice/wurble.ogg' /decl/emote/audible/snort - key = "snort" - emote_message_3p = "snorts!" - emote_sound = 'sound/voice/Snort.ogg' - sound_vary = FALSE + key = "snort" + emote_message_3p = "snorts!" + emote_sound = 'sound/voice/Snort.ogg' + sound_vary = FALSE /decl/emote/audible/meow - key = "meow" - emote_message_3p = "gently meows!" - emote_sound = 'sound/voice/Meow.ogg' - sound_vary = FALSE + key = "meow" + emote_message_3p = "gently meows!" + emote_sound = 'sound/voice/Meow.ogg' + sound_vary = FALSE /decl/emote/audible/moo - key = "moo" - emote_message_3p = "takes a breath and lets out a moo." - emote_sound = 'sound/voice/Moo.ogg' + key = "moo" + emote_message_3p = "takes a breath and lets out a moo." + emote_sound = 'sound/voice/Moo.ogg' /decl/emote/audible/croak - key = "croak" - emote_message_3p = "rumbles their throat, puffs their cheeks and croaks." - emote_sound = 'sound/voice/croak_frog.ogg' + key = "croak" + emote_message_3p = "rumbles their throat, puffs their cheeks and croaks." + emote_sound = 'sound/voice/croak_frog.ogg' /decl/emote/audible/gao - key = "gao" - emote_message_3p = "lets out a gao." - emote_sound = 'sound/voice/gao.ogg' + key = "gao" + emote_message_3p = "lets out a gao." + emote_sound = 'sound/voice/gao.ogg' /decl/emote/audible/cackle - key = "cackle" - emote_message_3p = "cackles hysterically!" - emote_sound = 'sound/voice/YeenCackle.ogg' + key = "cackle" + emote_message_3p = "cackles hysterically!" + emote_sound = 'sound/voice/YeenCackle.ogg' /decl/emote/audible/spiderchitter - key = "spiderchitter" - emote_message_3p = "chitters." - emote_sound = 'sound/voice/spiderchitter.ogg' + key = "spiderchitter" + emote_message_3p = "chitters." + emote_sound = 'sound/voice/spiderchitter.ogg' /decl/emote/audible/spiderpurr - key = "spiderpurr" - emote_message_3p = "purrs." - emote_sound = 'sound/voice/spiderpurr.ogg' + key = "spiderpurr" + emote_message_3p = "purrs." + emote_sound = 'sound/voice/spiderpurr.ogg' /decl/emote/audible/squeaky - key = "squeaky" - emote_message_3p = "squeaks." - emote_sound = 'sound/items/drop/plushie.ogg' + key = "squeaky" + emote_message_3p = "squeaks." + emote_sound = 'sound/items/drop/plushie.ogg' /decl/emote/audible/mothscream key = "mothscream" emote_message_3p ="screams" emote_sound = 'sound/voice/moth/scream_moth.ogg' /decl/emote/audible/mothchitter - key = "mothchitter" - emote_message_3p = "chitters" - emote_sound = 'sound/voice/moth/moth_chitter.ogg' + key = "mothchitter" + emote_message_3p = "chitters" + emote_sound = 'sound/voice/moth/moth_chitter.ogg' /decl/emote/audible/mothlaugh - key = "mothlaugh" - emote_message_3p = "laughs" - emote_sound = 'sound/voice/moth/moth_laugh.ogg' + key = "mothlaugh" + emote_message_3p = "laughs" + emote_sound = 'sound/voice/moth/moth_laugh.ogg' /decl/emote/audible/gyoh - key = "gyoh" - emote_message_3p = "gyohs." - emote_sound = 'sound/voice/teppi/whine1.ogg' - var/list/bigsound = list('sound/voice/teppi/gyooh1.ogg', 'sound/voice/teppi/gyooh2.ogg', 'sound/voice/teppi/gyooh3.ogg', 'sound/voice/teppi/gyooh4.ogg', 'sound/voice/teppi/gyooh5.ogg','sound/voice/teppi/gyooh6.ogg') - var/list/smolsound = list('sound/voice/teppi/whine1.ogg', 'sound/voice/teppi/whine2.ogg') + key = "gyoh" + emote_message_3p = "gyohs." + emote_sound = 'sound/voice/teppi/whine1.ogg' + var/list/bigsound = list('sound/voice/teppi/gyooh1.ogg', 'sound/voice/teppi/gyooh2.ogg', 'sound/voice/teppi/gyooh3.ogg', 'sound/voice/teppi/gyooh4.ogg', 'sound/voice/teppi/gyooh5.ogg','sound/voice/teppi/gyooh6.ogg') + var/list/smolsound = list('sound/voice/teppi/whine1.ogg', 'sound/voice/teppi/whine2.ogg') /decl/emote/audible/gyoh/get_emote_sound(var/mob/living/user) - if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi)) - if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi/baby)) - emote_sound = pick(smolsound) - else - emote_sound = pick(bigsound) - else if(istype(user, /mob/living/silicon/pai)) - var/mob/living/silicon/pai/me = user - if(me.chassis == "teppi") - emote_sound = pick(bigsound) - else - emote_sound = pick(smolsound) - else if(user.size_multiplier >= 1.5) - emote_sound = pick(bigsound) - else - emote_sound = pick(smolsound) - . = ..() + if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi)) + if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi/baby)) + emote_sound = pick(smolsound) + else + emote_sound = pick(bigsound) + else if(istype(user, /mob/living/silicon/pai)) + var/mob/living/silicon/pai/me = user + if(me.chassis == "teppi") + emote_sound = pick(bigsound) + else if(user.size_multiplier >= 1.5) + emote_sound = pick(bigsound) + else + emote_sound = pick(smolsound) + else if(user.size_multiplier >= 1.5) + emote_sound = pick(bigsound) + else + emote_sound = pick(smolsound) + . = ..() /decl/emote/audible/rumble - key = "rumble" - emote_message_3p = "rumbles contentedly." - emote_sound = 'sound/voice/teppi/whine1.ogg' - var/list/bigsound = list('sound/voice/teppi/rumble.ogg') - var/list/smolsound = list('sound/voice/teppi/cute_rumble.ogg') + key = "rumble" + emote_message_3p = "rumbles contentedly." + emote_sound = 'sound/voice/teppi/whine1.ogg' + var/list/bigsound = list('sound/voice/teppi/rumble.ogg') + var/list/smolsound = list('sound/voice/teppi/cute_rumble.ogg') /decl/emote/audible/rumble/get_emote_sound(var/mob/living/user) - if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi)) - if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi/baby)) - emote_sound = pick(smolsound) - else - emote_sound = pick(bigsound) - else if(istype(user, /mob/living/silicon/pai)) - var/mob/living/silicon/pai/me = user - if(me.chassis == "teppi") - emote_sound = pick(bigsound) - else if(user.size_multiplier >= 1.5) - emote_sound = pick(bigsound) - else - emote_sound = pick(smolsound) - . = ..() + if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi)) + if(istype(user, /mob/living/simple_mob/vore/alienanimals/teppi/baby)) + emote_sound = pick(smolsound) + else + emote_sound = pick(bigsound) + else if(istype(user, /mob/living/silicon/pai)) + var/mob/living/silicon/pai/me = user + if(me.chassis == "teppi") + emote_sound = pick(bigsound) + else if(user.size_multiplier >= 1.5) + emote_sound = pick(bigsound) + else + emote_sound = pick(smolsound) + else if(user.size_multiplier >= 1.5) + emote_sound = pick(bigsound) + else + emote_sound = pick(smolsound) + . = ..() /decl/emote/audible/coyawoo - key = "coyawoo" - emote_message_3p = "lets out a scraggly awoo." - emote_sound = 'sound/voice/coyoteawoo.ogg' + key = "coyawoo" + emote_message_3p = "lets out a scraggly awoo." + emote_sound = 'sound/voice/coyoteawoo.ogg' /decl/emote/audible/coyawoo2 - key = "coyawoo2" - emote_message_3p = "lets out a pronounced, scraggly awoo." - emote_sound = 'sound/voice/coyoteawoo2.ogg' + key = "coyawoo2" + emote_message_3p = "lets out a pronounced, scraggly awoo." + emote_sound = 'sound/voice/coyoteawoo2.ogg' /decl/emote/audible/coyawoo3 - key = "coyawoo3" - emote_message_3p = "yaps and lets out a scraggly awoo." - emote_sound = 'sound/voice/coyoteawoo3.ogg' + key = "coyawoo3" + emote_message_3p = "yaps and lets out a scraggly awoo." + emote_sound = 'sound/voice/coyoteawoo3.ogg' /decl/emote/audible/coyawoo4 - key = "coyawoo4" - emote_message_3p = "yaps several times, and lets out a short, scraggly awoo." - emote_sound = 'sound/voice/coyoteawoo4.ogg' + key = "coyawoo4" + emote_message_3p = "yaps several times, and lets out a short, scraggly awoo." + emote_sound = 'sound/voice/coyoteawoo4.ogg' /decl/emote/audible/coyawoo5 - key = "coyawoo5" - emote_message_3p = "lets out a scraggly, whine-awoo." - emote_sound = 'sound/voice/coyoteawoo5.ogg' + key = "coyawoo5" + emote_message_3p = "lets out a scraggly, whine-awoo." + emote_sound = 'sound/voice/coyoteawoo5.ogg' diff --git a/code/modules/mob/living/carbon/human/species/station/prommie_blob.dm b/code/modules/mob/living/carbon/human/species/station/prommie_blob.dm index c7c9d0b101..c69286b8a2 100644 --- a/code/modules/mob/living/carbon/human/species/station/prommie_blob.dm +++ b/code/modules/mob/living/carbon/human/species/station/prommie_blob.dm @@ -556,4 +556,4 @@ return TRUE else if(humanform.say_understands(other, speaking)) //So they're speaking something other than promethean or sign, let's just ask our original mob if it understands return TRUE - else return FALSE \ No newline at end of file + else return FALSE diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm new file mode 100644 index 0000000000..09c1b80cfa --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm @@ -0,0 +1,504 @@ +// Simple animal nanogoopeyness +/mob/living/simple_mob/protean_blob + name = "protean blob" + desc = "Some sort of big viscous pool of jelly." + tt_desc = "Animated nanogoop" + icon = 'icons/mob/species/protean/protean.dmi' + icon_state = "to_puddle" + icon_living = "puddle2" + icon_rest = "rest" + icon_dead = "puddle" + + faction = "neutral" + maxHealth = 200 + health = 200 + say_list_type = /datum/say_list/protean_blob + + show_stat_health = FALSE //We will do it ourselves + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "hits" + + harm_intent_damage = 2 + melee_damage_lower = 5 + melee_damage_upper = 5 + attacktext = list("slashed") + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + maxbodytemp = 900 + movement_cooldown = 1 + + var/mob/living/carbon/human/humanform + var/obj/item/organ/internal/nano/refactory/refactory + var/datum/modifier/healing + + var/obj/prev_left_hand + var/obj/prev_right_hand + + var/human_brute = 0 + var/human_burn = 0 + + player_msg = "In this form, you can move a little faster, your health will regenerate as long as you have metal in you, and you can ventcrawl!" + + can_buckle = TRUE //Blobsurfing + +/datum/say_list/protean_blob + speak = list("Blrb?","Sqrsh.","Glrsh!") + emote_hear = list("squishes softly","spluts quietly","makes wet noises") + emote_see = list("shifts wetly","undulates placidly") + +//Constructor allows passing the human to sync damages +/mob/living/simple_mob/protean_blob/New(var/newloc, var/mob/living/carbon/human/H) + ..() + if(H) + humanform = H + updatehealth() + refactory = locate() in humanform.internal_organs + verbs |= /mob/living/proc/ventcrawl + verbs |= /mob/living/proc/hide + else + update_icon() + +/mob/living/simple_mob/protean_blob/Login() + . = ..() + copy_from_prefs_vr(bellies = FALSE) //Load vore prefs + +/mob/living/simple_mob/protean_blob/Destroy() + humanform = null + refactory = null + vore_organs = null + vore_selected = null + if(healing) + healing.expire() + return ..() + +/mob/living/simple_mob/protean_blob/say_understands(var/mob/other, var/datum/language/speaking = null) + // The parent of this proc and its parent are SHAMS and should be rewritten, but I'm not up to it right now. + if(!speaking) + return TRUE // can understand common, they're like, a normal person thing + return ..() + +/mob/living/simple_mob/protean_blob/speech_bubble_appearance() + return "synthetic" + +/mob/living/simple_mob/protean_blob/get_available_emotes() + return global._robot_default_emotes.Copy() + +/mob/living/simple_mob/protean_blob/init_vore() + return //Don't make a random belly, don't waste your time + +/mob/living/simple_mob/protean_blob/isSynthetic() + return TRUE // yup + +/mob/living/simple_mob/protean_blob/Stat() + ..() + if(humanform) + humanform.species.Stat(humanform) + +/mob/living/simple_mob/protean_blob/update_icon() + if(humanform) + //Still have a refactory + if(istype(refactory)) + icon_living = "puddle2" + + //Else missing one + else + icon_living = "puddle1" + + //Not human-based + else + icon_living = "puddle0" + + ..() + +/mob/living/simple_mob/protean_blob/updatehealth() + if(!humanform) + return ..() + + //Set the max + maxHealth = humanform.getMaxHealth()*2 //HUMANS, and their 'double health', bleh. + //Set us to their health, but, human health ignores robolimbs so we do it 'the hard way' + human_brute = humanform.getActualBruteLoss() + human_burn = humanform.getActualFireLoss() + health = maxHealth - humanform.getOxyLoss() - humanform.getToxLoss() - humanform.getCloneLoss() - human_brute - human_burn + + //Alive, becoming dead + if((stat < DEAD) && (health <= 0)) + death() + + //Overhealth + if(health > getMaxHealth()) + health = getMaxHealth() + + //Grab any other interesting values + confused = humanform.confused + radiation = humanform.radiation + paralysis = humanform.paralysis + + //Update our hud if we have one + if(healths) + if(stat != DEAD) + var/heal_per = (health / getMaxHealth()) * 100 + switch(heal_per) + if(100 to INFINITY) + healths.icon_state = "health0" + if(80 to 100) + healths.icon_state = "health1" + if(60 to 80) + healths.icon_state = "health2" + if(40 to 60) + healths.icon_state = "health3" + if(20 to 40) + healths.icon_state = "health4" + if(0 to 20) + healths.icon_state = "health5" + else + healths.icon_state = "health6" + else + healths.icon_state = "health7" + +// All the damage and such to the blob translates to the human +/mob/living/simple_mob/protean_blob/apply_effect(var/effect = 0, var/effecttype = STUN, var/blocked = 0, var/check_protection = 1) + if(humanform) + return humanform.apply_effect(effect, effecttype, blocked, check_protection) + else + return ..() + +/mob/living/simple_mob/protean_blob/adjustBruteLoss(var/amount,var/include_robo) + amount *= 1.5 + if(humanform) + return humanform.adjustBruteLoss(amount) + else + return ..() + +/mob/living/simple_mob/protean_blob/adjustFireLoss(var/amount,var/include_robo) + amount *= 1.5 + if(humanform) + return humanform.adjustFireLoss(amount) + else + return ..() + +/mob/living/simple_mob/protean_blob/adjustToxLoss(amount) + if(humanform) + return humanform.adjustToxLoss(amount) + else + return ..() + +/mob/living/simple_mob/protean_blob/adjustOxyLoss(amount) + if(humanform) + return humanform.adjustOxyLoss(amount) + else + return ..() + +/mob/living/simple_mob/protean_blob/adjustHalLoss(amount) + if(humanform) + return humanform.adjustHalLoss(amount) + else + return ..() + +/mob/living/simple_mob/protean_blob/adjustCloneLoss(amount) + if(humanform) + return humanform.adjustCloneLoss(amount) + else + return ..() + +/mob/living/simple_mob/protean_blob/emp_act(severity) + if(humanform) + return humanform.emp_act(severity) + else + return ..() + +/mob/living/simple_mob/protean_blob/ex_act(severity) + if(humanform) + return humanform.ex_act(severity) + else + return ..() + +/mob/living/simple_mob/protean_blob/rad_act(severity) + if(humanform) + return humanform.ex_act(severity) + else + return ..() + +/mob/living/simple_mob/protean_blob/bullet_act(obj/item/projectile/P) + if(humanform) + return humanform.bullet_act(P) + else + return ..() + +/mob/living/simple_mob/protean_blob/death(gibbed, deathmessage = "dissolves away, leaving only a few spare parts!") + if(humanform) + humanform.death(gibbed, deathmessage) + else + animate(src, alpha = 0, time = 2 SECONDS) + sleep(2 SECONDS) + + if(!QDELETED(src)) // Human's handle death should have taken us, but maybe we were adminspawned or something without a human counterpart + qdel(src) + +/mob/living/simple_mob/protean_blob/Life() + . = ..() + if(. && istype(refactory) && humanform) + if(!healing && (human_brute || human_burn) && refactory.get_stored_material(MAT_STEEL) >= 100) + healing = humanform.add_modifier(/datum/modifier/protean/steel, origin = refactory) + else if(healing && !(human_brute || human_burn)) + healing.expire() + healing = null + +/mob/living/simple_mob/protean_blob/lay_down() + ..() + if(resting) + animate(src,alpha = 40,time = 1 SECOND) + mouse_opacity = 0 + plane = ABOVE_OBJ_PLANE + else + mouse_opacity = 1 + icon_state = "wake" + animate(src,alpha = 255,time = 1 SECOND) + plane = MOB_PLANE + sleep(7) + update_icon() + //Potential glob noms + if(can_be_drop_pred) //Toggleable in vore panel + var/list/potentials = living_mobs(0) + if(potentials.len) + var/mob/living/target = pick(potentials) + if(istype(target) && target.devourable && target.can_be_drop_prey && vore_selected) + if(target.buckled) + target.buckled.unbuckle_mob(target, force = TRUE) + target.forceMove(vore_selected) + to_chat(target,"\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.name]!") + +/mob/living/simple_mob/protean_blob/attack_target(var/atom/A) + if(refactory && istype(A,/obj/item/stack/material)) + var/obj/item/stack/material/S = A + var/substance = S.material.name + var allowed = FALSE + for(var/material in PROTEAN_EDIBLE_MATERIALS) + if(material == substance) allowed = TRUE + if(!allowed) + return + if(refactory.add_stored_material(S.material.name,1*S.perunit) && S.use(1)) + visible_message("[name] gloms over some of \the [S], absorbing it.") + else + return ..() + +/mob/living/simple_mob/protean_blob/attackby(var/obj/item/O, var/mob/user) + if(refactory && istype(O,/obj/item/stack/material)) + var/obj/item/stack/material/S = O + var/substance = S.material.name + var allowed = FALSE + for(var/material in PROTEAN_EDIBLE_MATERIALS) + if(material == substance) allowed = TRUE + if(!allowed) + return + if(refactory.add_stored_material(S.material.name,1*S.perunit) && S.use(1)) + visible_message("[name] gloms over some of \the [S], absorbing it.") + else + return ..() + +/mob/living/simple_mob/protean_blob/MouseEntered(location,control,params) + if(resting) + return + ..() + +var/global/list/disallowed_protean_accessories = list( + /obj/item/clothing/accessory/holster, + /obj/item/clothing/accessory/storage, + /obj/item/clothing/accessory/armor + ) + +// Helpers - Unsafe, WILL perform change. +/mob/living/carbon/human/proc/nano_intoblob(force) + if(!force && !isturf(loc)) + to_chat(src,"You can't change forms while inside something.") + return + + var/panel_was_up = FALSE + if(client?.statpanel == "Protean") + panel_was_up = TRUE + + handle_grasp() //It's possible to blob out before some key parts of the life loop. This results in things getting dropped at null. TODO: Fix the code so this can be done better. + remove_micros(src, src) //Living things don't fare well in roblobs. + if(buckled) + buckled.unbuckle_mob() + if(LAZYLEN(buckled_mobs)) + for(var/buckledmob in buckled_mobs) + riding_datum.force_dismount(buckledmob) + if(pulledby) + pulledby.stop_pulling() + stop_pulling() + + //Record where they should go + var/atom/creation_spot = drop_location() + + //Create our new blob + var/mob/living/simple_mob/protean_blob/blob = new(creation_spot,src) + + //Drop all our things + var/list/things_to_drop = contents.Copy() + var/list/things_to_not_drop = list(w_uniform,nif,l_store,r_store,wear_id,l_ear,r_ear) //And whatever else we decide for balancing. + + /* No for now, because insta-pepperspray or flash on unblob + if(l_hand && l_hand.w_class <= ITEMSIZE_SMALL) //Hands but only if small or smaller + things_to_not_drop += l_hand + if(r_hand && r_hand.w_class <= ITEMSIZE_SMALL) + things_to_not_drop += r_hand + */ + + things_to_drop -= things_to_not_drop //Crunch the lists + things_to_drop -= organs //Mah armbs + things_to_drop -= internal_organs //Mah sqeedily spooch + + for(var/obj/item/I in things_to_drop) //rip hoarders + if(I.protean_drop_whitelist) + continue + drop_from_inventory(I) + + if(w_uniform && istype(w_uniform,/obj/item/clothing)) //No webbings tho. We do this after in case a suit was in the way + var/obj/item/clothing/uniform = w_uniform + if(LAZYLEN(uniform.accessories)) + for(var/obj/item/clothing/accessory/A in uniform.accessories) + if(is_type_in_list(A, disallowed_protean_accessories)) + uniform.remove_accessory(null,A) //First param is user, but adds fingerprints and messages + + //Size update + blob.transform = matrix()*size_multiplier + blob.size_multiplier = size_multiplier + + if(l_hand) blob.prev_left_hand = l_hand //Won't save them if dropped above, but necessary if handdrop is disabled. + if(r_hand) blob.prev_right_hand = r_hand + + //Put our owner in it (don't transfer var/mind) + blob.ckey = ckey + blob.ooc_notes = ooc_notes + temporary_form = blob + + //Mail them to nullspace + moveToNullspace() + + //Message + blob.visible_message("[src.name] collapses into a gooey blob!") + + //Duration of the to_puddle iconstate that the blob starts with + sleep(13) + blob.update_icon() //Will remove the collapse anim + + //Transfer vore organs + blob.vore_organs = vore_organs + blob.vore_selected = vore_selected + for(var/obj/belly/B as anything in vore_organs) + B.forceMove(blob) + B.owner = blob + + //We can still speak our languages! + blob.languages = languages.Copy() + + //Flip them to the protean panel + if(panel_was_up) + client?.statpanel = "Protean" + + //Return our blob in case someone wants it + return blob + +//For some reason, there's no way to force drop all the mobs grabbed. This ought to fix that. And be moved elsewhere. Call with caution, doesn't handle cycles. +/proc/remove_micros(var/src, var/mob/root) + for(var/obj/item/I in src) + remove_micros(I, root) //Recursion. I'm honestly depending on there being no containment loop, but at the cost of performance that can be fixed too. + if(istype(I, /obj/item/weapon/holder)) + root.remove_from_mob(I) + +/mob/living/carbon/human/proc/nano_outofblob(var/mob/living/simple_mob/protean_blob/blob, force) + if(!istype(blob)) + return + + if(!force && !isturf(blob.loc)) + to_chat(blob,"You can't change forms while inside something.") + return + + var/panel_was_up = FALSE + if(client?.statpanel == "Protean") + panel_was_up = TRUE + + if(buckled) + buckled.unbuckle_mob() + if(LAZYLEN(buckled_mobs)) + for(var/buckledmob in buckled_mobs) + riding_datum.force_dismount(buckledmob) + if(pulledby) + pulledby.stop_pulling() + stop_pulling() + + //Stop healing if we are + if(blob.healing) + blob.healing.expire() + + //Play the animation + blob.icon_state = "from_puddle" + + //Message + blob.visible_message("[src.name] reshapes into a humanoid appearance!") + + //Duration of above animation + sleep(8) + + //Record where they should go + var/atom/reform_spot = blob.drop_location() + + //Size update + resize(blob.size_multiplier, FALSE, ignore_prefs = TRUE) + + //Move them back where the blob was + forceMove(reform_spot) + + //Put our owner in it (don't transfer var/mind) + ckey = blob.ckey + ooc_notes = blob.ooc_notes // Lets give the protean any updated notes from blob form. + temporary_form = null + + //Transfer vore organs + vore_selected = blob.vore_selected + for(var/obj/belly/B as anything in blob.vore_organs) + B.forceMove(src) + B.owner = src + + if(blob.prev_left_hand) put_in_l_hand(blob.prev_left_hand) //The restore for when reforming. + if(blob.prev_right_hand) put_in_r_hand(blob.prev_right_hand) + + Life(1) //Fix my blindness right meow //Has to be moved up here, there exists a circumstance where blob could be deleted without vore organs moving right. + + //Get rid of friend blob + qdel(blob) + + //Flip them to the protean panel + if(panel_was_up) + client?.statpanel = "Protean" + + //Return ourselves in case someone wants it + return src + +/mob/living/simple_mob/protean_blob/CanStumbleVore(mob/living/target) + if(target == humanform) + return FALSE + return ..() + +/mob/living/simple_mob/protean_blob/CanStumbleVore(mob/living/target) + if(target == humanform) + return FALSE + return ..() + +/mob/living/carbon/human/CanStumbleVore(mob/living/target) + if(istype(target, /mob/living/simple_mob/protean_blob)) + var/mob/living/simple_mob/protean_blob/PB = target + if(PB.humanform == src) + return FALSE + return ..() diff --git a/code/modules/mob/living/simple_mob/simple_mob.dm b/code/modules/mob/living/simple_mob/simple_mob.dm index 6325016c52..0e7f3830ca 100644 --- a/code/modules/mob/living/simple_mob/simple_mob.dm +++ b/code/modules/mob/living/simple_mob/simple_mob.dm @@ -47,7 +47,7 @@ var/has_langs = list(LANGUAGE_GALCOM)// Text name of their language if they speak something other than galcom. They speak the first one. //Movement things. - var/movement_cooldown = 5 // Lower is faster. + var/movement_cooldown = 1 //VOREStation Edit - 1 is slower than normal human speed // Lower is faster. var/movement_sound = null // If set, will play this sound when it moves on its own will. var/turn_sound = null // If set, plays the sound when the mob's dir changes in most cases. var/movement_shake_radius = 0 // If set, moving will shake the camera of all living mobs within this radius slightly. diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm index f87d118f81..5d027afe45 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm @@ -32,7 +32,7 @@ GLOBAL_VAR_INIT(jellyfish_count, 0) health = 100 nutrition = 150 pass_flags = PASSTABLE - movement_cooldown = 3.25 + movement_cooldown = 1 see_in_dark = 10 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm index 60be79dadd..ab56b07622 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm @@ -20,7 +20,7 @@ faction = "space mouse" maxHealth = 20 health = 20 - movement_cooldown = 1 + movement_cooldown = -1 see_in_dark = 10 @@ -81,7 +81,7 @@ movement_cooldown = initial(movement_cooldown) /mob/living/simple_mob/vore/alienanimals/dustjumper/perform_the_nom(mob/living/user, mob/living/prey, mob/living/pred, obj/belly/belly, delay) . = ..() - movement_cooldown = 50 + movement_cooldown = 10 /datum/ai_holder/simple_mob/melee/evasive/dustjumper hostile = FALSE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm index 883e5b887b..0d75c18425 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm @@ -21,7 +21,7 @@ maxHealth = 100000 health = 100000 - movement_cooldown = 50 + movement_cooldown = 10 see_in_dark = 10 @@ -155,7 +155,7 @@ restless = TRUE hazard_pickup_chance *= 1.5 hazard_drop_chance *= 1.5 - movement_cooldown = 1 + movement_cooldown = -1 ai_holder.base_wander_delay = 2 ai_holder.wander_delay = 2 ai_holder.wander = TRUE @@ -185,7 +185,7 @@ . = ..() var/mob/living/simple_mob/vore/overmap/spacewhale/W = holder if(stance == STANCE_FIGHT) - W.movement_cooldown = 0 + W.movement_cooldown = -2 W.child_om_marker.glide_size = 0 if(stance == STANCE_IDLE) W.hazard_pickup_chance = initial(W.hazard_pickup_chance) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm index 783084f09f..0b8dcee721 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm @@ -25,7 +25,7 @@ faction = "space ghost" maxHealth = 50 health = 50 - movement_cooldown = 3.25 + movement_cooldown = 0 see_in_dark = 10 @@ -139,7 +139,7 @@ faction = "space ghost" maxHealth = 5 health = 5 - movement_cooldown = 1 + movement_cooldown = -1 see_in_dark = 10 alpha = 128 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm index d0ac5273dc..3dfd449b39 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm @@ -20,7 +20,7 @@ faction = "space turtle" maxHealth = 1000 health = 1000 - movement_cooldown = 20 + movement_cooldown = 10 see_in_dark = 10 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm b/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm index 1edfc304f2..3187efe699 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm @@ -20,7 +20,7 @@ status_flags = CANPUSH pass_flags = PASSTABLE - movement_cooldown = 5 + movement_cooldown = 1.5 universal_understand = TRUE can_be_antagged = TRUE @@ -30,7 +30,7 @@ var/mob/living/carbon/human/host = null // The humanoid host for the brain worm. var/mob/living/captive_brain/host_brain // Used for swapping control of the body back and forth. - + var/roundstart = FALSE // If true, spawning won't try to pull a ghost. var/antag = TRUE // If false, will avoid setting up objectives and events @@ -39,7 +39,7 @@ var/true_name = null // String used when speaking among other worms. var/controlling = FALSE // Used in human death ceck. var/docile = FALSE // Sugar can stop borers from acting. - + var/has_reproduced = FALSE var/used_dominate // world.time when the dominate power was last used. @@ -273,4 +273,4 @@ /decl/mob_organ_names/borer - hit_zones = list("head", "central segment", "tail segment") \ No newline at end of file + hit_zones = list("head", "central segment", "tail segment") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm index 213a5a80db..f5e239a8d1 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm @@ -73,7 +73,7 @@ maxHealth = 200 health = 200 pass_flags = PASSTABLE - movement_cooldown = 10 + movement_cooldown = 3 movement_sound = 'sound/effects/spider_loop.ogg' poison_resist = 0.5 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother_spawn.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother_spawn.dm index 00ba897cd6..8d07077f1a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother_spawn.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother_spawn.dm @@ -5,7 +5,7 @@ melee_damage_lower = 10 melee_damage_upper = 15 - movement_cooldown = 4 + movement_cooldown = 3 /mob/living/simple_mob/animal/giant_spider/frost/broodling/Initialize() . = ..() @@ -23,7 +23,7 @@ taser_kill = TRUE base_attack_cooldown = 20 - movement_cooldown = 5 + movement_cooldown = -1 /mob/living/simple_mob/animal/giant_spider/electric/broodling/Initialize() . = ..() @@ -38,7 +38,7 @@ maxHealth = 40 health = 40 - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/animal/giant_spider/hunter/broodling/Initialize() . = ..() @@ -53,7 +53,7 @@ maxHealth = 40 health = 40 - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/animal/giant_spider/lurker/broodling/Initialize() . = ..() @@ -68,7 +68,7 @@ maxHealth = 60 health = 60 - movement_cooldown = 8 + movement_cooldown = 3 ai_holder_type = /datum/ai_holder/simple_mob/melee /mob/living/simple_mob/animal/giant_spider/nurse/broodling/Initialize() @@ -84,7 +84,7 @@ maxHealth = 40 health = 40 - movement_cooldown = 4 + movement_cooldown = 3 /mob/living/simple_mob/animal/giant_spider/pepper/broodling/Initialize() . = ..() @@ -102,7 +102,7 @@ melee_damage_lower = 10 melee_damage_upper = 15 - movement_cooldown = 4 + movement_cooldown = 1 /mob/living/simple_mob/animal/giant_spider/thermic/broodling/Initialize() . = ..() @@ -117,7 +117,7 @@ maxHealth = 40 health = 40 - movement_cooldown = 4 + movement_cooldown = 1 /mob/living/simple_mob/animal/giant_spider/tunneler/broodling/Initialize() . = ..() @@ -134,7 +134,7 @@ base_attack_cooldown = 20 - movement_cooldown = 5 + movement_cooldown = 1.5 /mob/living/simple_mob/animal/giant_spider/webslinger/broodling/Initialize() . = ..() @@ -152,7 +152,7 @@ melee_damage_lower = 10 melee_damage_upper = 20 - movement_cooldown = 8 + movement_cooldown = 3 /mob/living/simple_mob/animal/giant_spider/broodling/Initialize() . = ..() @@ -161,4 +161,4 @@ /mob/living/simple_mob/animal/giant_spider/broodling/death() new /obj/effect/decal/cleanable/spiderling_remains(src.loc) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/carrier.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/carrier.dm index a6837002a8..3efce724d2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/carrier.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/carrier.dm @@ -29,7 +29,7 @@ poison_per_bite = 3 poison_type = "chloralhydrate" - movement_cooldown = 5 + movement_cooldown = 2 player_msg = "Upon dying, you will release a swarm of spiderlings or young hunter spiders.
\ If a spider emerges, you will be placed in control of it." diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/hunter.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/hunter.dm index 3037717917..8b332f9050 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/hunter.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/hunter.dm @@ -30,7 +30,7 @@ melee_damage_lower = 9 melee_damage_upper = 15 - movement_cooldown = 0 // Hunters are FAST. + movement_cooldown = -2 // Hunters are FAST. ai_holder_type = /datum/ai_holder/simple_mob/melee/hunter_spider diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/lurker.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/lurker.dm index cb086c6ec3..7a8d649541 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/lurker.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/lurker.dm @@ -33,7 +33,7 @@ poison_per_bite = 5 - movement_cooldown = 5 + movement_cooldown = 1.5 melee_damage_lower = 10 melee_damage_upper = 10 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/nurse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/nurse.dm index 361e778e33..1fa42a6e2a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/nurse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/nurse.dm @@ -33,7 +33,7 @@ maxHealth = 40 health = 40 - movement_cooldown = 5 // A bit faster so that they can inject the eggs easier. + movement_cooldown = 1.5 // A bit faster so that they can inject the eggs easier. melee_damage_lower = 5 // Doesn't do a lot of damage, since the goal is to make more spiders with egg attacks. melee_damage_upper = 10 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/phorogenic.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/phorogenic.dm index 94bb77ee71..3e51d4c368 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/phorogenic.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/phorogenic.dm @@ -39,7 +39,7 @@ melee_damage_upper = 40 attack_armor_pen = 15 - movement_cooldown = 15 + movement_cooldown = 4 poison_chance = 30 poison_per_bite = 0.5 @@ -82,4 +82,3 @@ exploded = TRUE explosion(src.loc, explosion_dev_range, explosion_heavy_range, explosion_light_range, explosion_flash_range) return ..() - diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/cockroach.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/cockroach.dm index 29b54fad74..603f5746c4 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/cockroach.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/cockroach.dm @@ -14,7 +14,7 @@ maxHealth = 1 health = 1 - movement_cooldown = 2.5 + movement_cooldown = -1 mob_size = MOB_MINISCULE pass_flags = PASSTABLE @@ -74,4 +74,4 @@ name = "bug remains" desc = "Green squishy mess." icon = 'icons/effects/effects.dmi' - icon_state = "greenshatter" \ No newline at end of file + icon_state = "greenshatter" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/jerboa_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/jerboa_vr.dm index 7e64bfd376..7f40761eb8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/jerboa_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/jerboa_vr.dm @@ -10,6 +10,6 @@ icon_dead = "mouse_brown_dead" kitchen_tag = "rodent" - movement_cooldown = 0.5 + movement_cooldown = -2 - body_color = "brown" \ No newline at end of file + body_color = "brown" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm index c9fe11b486..edde1c5bbb 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm @@ -15,7 +15,7 @@ melee_damage_lower = 1 melee_damage_upper = 3 - movement_cooldown = 1.5 + movement_cooldown = -1 mob_size = MOB_MINISCULE pass_flags = PASSTABLE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm index af1c72ca54..4eff5abe4e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm @@ -18,7 +18,7 @@ melee_damage_lower = 3 melee_damage_upper = 3 - movement_cooldown = 0 + movement_cooldown = -1 hovering = TRUE // Birds can fly. softfall = TRUE parachuting = TRUE @@ -90,4 +90,4 @@ icon_scale_y = 0.5 /decl/mob_organ_names/bird - hit_zones = list("head", "chest", "left leg", "right leg", "left wing", "right wing") \ No newline at end of file + hit_zones = list("head", "chest", "left leg", "right leg", "left wing", "right wing") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm index 184e7c4ed5..51ae8f8738 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm @@ -35,7 +35,7 @@ var/list/_cat_default_emotes = list( icon_state = "cat2" item_state = "cat2" - movement_cooldown = 0.5 SECONDS + movement_cooldown = -1 meat_amount = 1 see_in_dark = 6 // Not sure if this actually works. diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fennec.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fennec.dm index 249af03a4e..27c6cc7f09 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fennec.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fennec.dm @@ -5,7 +5,7 @@ icon_state = "fennec" item_state = "fennec" - movement_cooldown = 0.5 SECONDS + movement_cooldown = -1 see_in_dark = 6 response_help = "pets" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm index 7ec636defd..448eea688e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm @@ -9,7 +9,7 @@ icon_rest = "fox2_rest" icon = 'icons/mob/pets.dmi' - movement_cooldown = 0.5 + movement_cooldown = -1 see_in_dark = 6 mob_size = MOB_SMALL //Foxes are not smaller than cats so bumping them up to small @@ -243,4 +243,4 @@ max_co2 = 0 min_n2 = 0 max_n2 = 0 - minbodytemp = 0 \ No newline at end of file + minbodytemp = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm index b830cbec2b..08014b8746 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm @@ -32,7 +32,7 @@ meat_amount = 2 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - movement_cooldown = 0 + movement_cooldown = -1 melee_damage_lower = 2 melee_damage_upper = 6 @@ -64,4 +64,3 @@ speak = list("Awrr?", "Aowrl!", "Worrl.") emote_see = list("sniffs the air cautiously","looks around") emote_hear = list("snuffles") - diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm index ba46bc56dc..0e3b7a8ecc 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm @@ -30,7 +30,7 @@ maxHealth = 50 health = 50 - movement_cooldown = 0 + movement_cooldown = -1 meat_amount = 4 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/fluffy_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/fluffy_vr.dm index 298cdffd84..0b581ca511 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/fluffy_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/fluffy_vr.dm @@ -13,7 +13,7 @@ maxHealth = 20 //don't want Fluff to die on a missclick health = 20 - movement_cooldown = 5 + movement_cooldown = 1.5 makes_dirt = 0 see_in_dark = 5 @@ -47,4 +47,4 @@ icon_state = "diyaab" icon_living = "diyaab" icon_dead = "diyaab_dead" - icon = 'icons/jungle.dmi' \ No newline at end of file + icon = 'icons/jungle.dmi' diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm index 3ffd545d7b..e89cca1999 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm @@ -40,7 +40,7 @@ var/energy = 100 var/max_energy = 100 - movement_cooldown = 0.5 + movement_cooldown = -1 melee_damage_lower = 5 melee_damage_upper = 10 @@ -174,4 +174,4 @@ /decl/mob_organ_names/frostfly - hit_zones = list("head", "thorax", "abdomen", "left vestigal wing", "right vestigal wing", "left legs", "right legs") \ No newline at end of file + hit_zones = list("head", "thorax", "abdomen", "left vestigal wing", "right vestigal wing", "left legs", "right legs") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm index 1a93754af3..d59db7ac28 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm @@ -38,7 +38,7 @@ maxHealth = 10 health = 10 - movement_cooldown = -1 + movement_cooldown = -2 hovering = TRUE melee_damage_lower = 1 @@ -80,7 +80,7 @@ maxHealth = 30 health = 30 - movement_cooldown = -2 + movement_cooldown = -3 melee_damage_upper = 5 @@ -127,4 +127,4 @@ hostile = initial(hostile) /decl/mob_organ_names/smallflying - hit_zones = list("body", "left wing", "right wing") //For flying things too tiny to be granular \ No newline at end of file + hit_zones = list("body", "left wing", "right wing") //For flying things too tiny to be granular diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm index c07c0cd467..9dd02f083c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm @@ -149,7 +149,7 @@ Field studies suggest analytical abilities on par with some species of cepholapo maxHealth = 150 health = 150 - movement_cooldown = 2 + movement_cooldown = -1 base_attack_cooldown = 1 SECOND organ_names = /decl/mob_organ_names/grafadreka diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm index f566e738b2..b6fbbaf55c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm @@ -47,7 +47,7 @@ "rad" = 0 ) - movement_cooldown = 2 + movement_cooldown = -1 mob_size = MOB_SMALL pass_flags = PASSTABLE @@ -73,4 +73,4 @@ emote_see = list("stomps the ground", "sniffs the air", "chews on something") /decl/mob_organ_names/hare - hit_zones = list("head", "chest", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "left head spike", "right head spike") \ No newline at end of file + hit_zones = list("head", "chest", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "left head spike", "right head spike") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm index 9831ac3769..93d8700abe 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm @@ -39,7 +39,7 @@ maxHealth = 200 health = 200 - movement_cooldown = 10 + movement_cooldown = 4 movement_sound = 'sound/weapons/heavysmash.ogg' movement_shake_radius = 5 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm index f8bf5195e2..6bce1a3043 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm @@ -39,7 +39,7 @@ universal_understand = 1 - movement_cooldown = 1 + movement_cooldown = -1 melee_damage_lower = 15 melee_damage_upper = 20 @@ -427,4 +427,4 @@ attack_speed_percent = 0.8 /decl/mob_organ_names/kururak - hit_zones = list("head", "chest", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "far left tail", "far right tail", "left middle tail", "right middle tail") \ No newline at end of file + hit_zones = list("head", "chest", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "far left tail", "far right tail", "left middle tail", "right middle tail") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm index 1c89c7f21b..0493f5b180 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm @@ -60,7 +60,7 @@ holder_type = /obj/item/weapon/holder/leech - movement_cooldown = 0 + movement_cooldown = -2 aquatic_movement = -2 melee_damage_lower = 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm index 489c464b7a..67177bb19b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm @@ -41,7 +41,7 @@ hovering = TRUE - movement_cooldown = 0.5 + movement_cooldown = -1 melee_damage_lower = 5 melee_damage_upper = 10 @@ -144,4 +144,4 @@ return FALSE /decl/mob_organ_names/moth - hit_zones = list("head", "thorax", "abdomen", "left forewing", "left hindwing", "right forewing", "right hindwing", "left foreleg", "right foreleg", "left hindleg", "right hindleg") \ No newline at end of file + hit_zones = list("head", "thorax", "abdomen", "left forewing", "left hindwing", "right forewing", "right hindwing", "left foreleg", "right foreleg", "left hindleg", "right hindleg") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm index 6ee3ca8d92..0d02ddcb8a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm @@ -34,7 +34,7 @@ universal_understand = 1 - movement_cooldown = 0 + movement_cooldown = -1 melee_damage_lower = 5 melee_damage_upper = 15 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm index 53e8a23079..bc238262c6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm @@ -31,7 +31,7 @@ maxHealth = 125 health = 125 minbodytemp = 175 //yw edit, Makes mobs survive cryogaia temps - movement_cooldown = 0.5 SECONDS + movement_cooldown = -1 heat_resist = -0.50 cold_resist = 0.75 melee_damage_lower = 15 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm index a1965be8af..339d5de1cb 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm @@ -44,7 +44,7 @@ ) heat_resist = -0.50 cold_resist = 0.75 - movement_cooldown = 5 + movement_cooldown = -1 minbodytemp = 175 //yw edit, Makes mobs survive cryogaia temps melee_damage_lower = 6 melee_damage_upper = 14 @@ -110,6 +110,6 @@ ai_holder_type = /datum/ai_holder/simple_mob/passive makes_dirt = 0 faction = "neutral" - + /decl/mob_organ_names/shantak hit_zones = list("head", "torso", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "tail", "mane", "snout") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm index 39419d458c..3288af2ffa 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm @@ -30,7 +30,7 @@ maxHealth = 60 health = 60 - movement_cooldown = 0 + movement_cooldown = -2 melee_damage_lower = 10 melee_damage_upper = 15 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm index b61320f87c..ab37f678f2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm @@ -87,7 +87,7 @@ projectilesound = 'sound/weapons/pierce.ogg' - movement_cooldown = 10 + movement_cooldown = 3 /mob/living/simple_mob/animal/space/alien/queen/empress name = "alien empress" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm index 9efa23c3f8..6c7c162071 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm @@ -12,7 +12,7 @@ maxHealth = 125 health = 125 - movement_cooldown = 0.5 SECONDS + movement_cooldown = -1 melee_damage_lower = 15 melee_damage_upper = 35 @@ -46,4 +46,4 @@ set desc = "Enrage and become vastly stronger for a period of time, however you will be weaker afterwards." set category = "Abilities" - add_modifier(/datum/modifier/berserk, 30 SECONDS) \ No newline at end of file + add_modifier(/datum/modifier/berserk, 30 SECONDS) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm index b09d61c9c3..ec8153a79c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm @@ -37,7 +37,7 @@ faction = "carp" maxHealth = 25 health = 25 - movement_cooldown = 0 // Carp go fast + movement_cooldown = -2 hovering = TRUE response_help = "pets the" @@ -86,7 +86,7 @@ maxHealth = 50 health = 50 - movement_cooldown = 5 // Slower than the younger carp. + movement_cooldown = 1 // Slower than the younger carp. mob_size = MOB_LARGE pixel_x = -16 @@ -107,7 +107,7 @@ maxHealth = 230 health = 230 - movement_cooldown = 10 + movement_cooldown = 3 melee_damage_lower = 15 // About 20 DPS. melee_damage_upper = 25 @@ -157,5 +157,3 @@ /mob/living/simple_mob/animal/space/carp/holographic/death() ..() derez() - - diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm index b3651a63de..4616ce8243 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm @@ -30,7 +30,7 @@ TODO: Make them light up and heat the air when exposed to oxygen. faction = "virgo3b" maxHealth = 100 health = 100 - movement_cooldown = 12 + movement_cooldown = 4 say_list_type = /datum/say_list/gaslamp ai_holder_type = /datum/ai_holder/simple_mob/gaslamp diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm index 1aa342ca86..538c506186 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm @@ -31,7 +31,7 @@ maxHealth = 15 health = 15 - movement_cooldown = 8 // SLOW-ASS MUTHAFUCKA, I hope. + movement_cooldown = 3 // SLOW-ASS MUTHAFUCKA, I hope. response_help = "pets" response_disarm = "shoos" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm index 91952185ae..d92718d61c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm @@ -12,7 +12,7 @@ maxHealth = 200 health = 200 - movement_cooldown = 0 + movement_cooldown = -1 faction = "worm" @@ -372,4 +372,4 @@ if(previous) previous.update_body_faction() return 1 - return 0 \ No newline at end of file + return 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm b/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm index 96012ad12e..c9511ad0a9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm +++ b/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm @@ -17,7 +17,7 @@ maxHealth = 30 melee_damage_lower = 2 melee_damage_upper = 4 - movement_cooldown = 0 + movement_cooldown = -2 hovering = TRUE attacktext = list("slammed into") diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm index 9ae28c6e6e..2e765d3e62 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm @@ -13,7 +13,7 @@ icon_gib = "syndicate_gib" faction = "syndicate" - movement_cooldown = 4 + movement_cooldown = 1 status_flags = 0 @@ -362,7 +362,7 @@ icon_state = "syndicatemeleespace" icon_living = "syndicatemeleespace" - movement_cooldown = 0 + movement_cooldown = -1 armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 100) // Same armor as their voidsuit @@ -387,7 +387,7 @@ icon_state = "syndicaterangedpsace" icon_living = "syndicaterangedpsace" - movement_cooldown = 0 + movement_cooldown = -1 min_oxy = 0 max_oxy = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/illusion/illusion.dm b/code/modules/mob/living/simple_mob/subtypes/illusion/illusion.dm index 75497a7b21..b5b4ee313f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/illusion/illusion.dm +++ b/code/modules/mob/living/simple_mob/subtypes/illusion/illusion.dm @@ -10,7 +10,7 @@ shock_resist = 1 poison_resist = 1 - movement_cooldown = 0 + movement_cooldown = -2 mob_bump_flag = 0 // If the illusion can't be swapped it will be obvious. response_help = "pushes a hand through" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm index a75c0c2f2f..e001972ae8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm @@ -29,7 +29,7 @@ faction = "underdark" maxHealth = 25 health = 25 - movement_cooldown = 0 + movement_cooldown = -1 movement_sound = 'sound/effects/servostep.ogg' pass_flags = PASSTABLE @@ -68,4 +68,4 @@ /mob/living/simple_mob/mechanical/corrupt_maint_drone/death() ..(null,"is smashed into pieces!") - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm index dbcf5150c2..5ea69697d6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm @@ -29,7 +29,7 @@ maxHealth = 65 health = 40 - movement_cooldown = 4 + movement_cooldown = 1 response_help = "pets the" response_disarm = "gently pushes aside the" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm index 6c1be00472..1d37471dbf 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm @@ -43,7 +43,7 @@ maxHealth = 50 // Shield has 150 for total of 200. health = 50 - movement_cooldown = 5 + movement_cooldown = 1.5 hovering = TRUE base_attack_cooldown = 5 @@ -102,7 +102,7 @@ // Difference is that it should not be faster than you. /mob/living/simple_mob/mechanical/combat_drone/lesser desc = "An automated combat drone with an aged apperance." - movement_cooldown = 10 + movement_cooldown = 3 // This one is the type spawned by the random event. @@ -111,4 +111,4 @@ ai_holder_type = /datum/ai_holder/simple_mob/ranged/kiting/threatening/event /decl/mob_organ_names/combatdrone - hit_zones = list("chassis", "comms array", "sensor suite", "left weapons module", "right weapons module", "maneuvering thruster") \ No newline at end of file + hit_zones = list("chassis", "comms array", "sensor suite", "left weapons module", "right weapons module", "maneuvering thruster") diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm index 1bd3b9279a..8732246b68 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm @@ -29,7 +29,7 @@ maxHealth = 50 health = 50 - movement_cooldown = 5 + movement_cooldown = 1.5 hovering = TRUE base_attack_cooldown = 2.5 SECONDS @@ -179,4 +179,4 @@ name = "scavenger drone" ignoreunarmed = FALSE allowedtools = list(/obj/item/weapon/pickaxe) - projectiletype = /obj/item/projectile/energy/excavate/weak \ No newline at end of file + projectiletype = /obj/item/projectile/energy/excavate/weak diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm index dcfdc5b2c1..24207dc178 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm @@ -4,7 +4,7 @@ icon_state = "white" icon_living = "white" attacktext = list("prodded") - movement_cooldown = 5 + movement_cooldown = 1.5 melee_damage_lower = 2 melee_damage_upper = 2 @@ -88,4 +88,4 @@ break // Only one resupply per pulse. /decl/mob_organ_names/hivebotsupport - hit_zones = list("central chassis", "positioning servo", "head", "sensor suite", "manipulator arm", "battle analytics mount", "weapons array", "front right leg", "front left leg", "rear left leg", "rear right leg") \ No newline at end of file + hit_zones = list("central chassis", "positioning servo", "head", "sensor suite", "manipulator arm", "battle analytics mount", "weapons array", "front right leg", "front left leg", "rear left leg", "rear right leg") diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/tank.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/tank.dm index 6b30eccab0..81e46f8d63 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/tank.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/tank.dm @@ -5,7 +5,7 @@ /mob/living/simple_mob/mechanical/hivebot/tank attacktext = list("prodded") projectiletype = null // To force the AI to melee. - movement_cooldown = 10 + movement_cooldown = 3 melee_damage_lower = 3 melee_damage_upper = 3 attack_sound = 'sound/weapons/Egloves.ogg' @@ -170,4 +170,4 @@ return (..(P)) /decl/mob_organ_names/hivebottank - hit_zones = list("central chassis", "armor plating", "component shielding", "positioning servo", "head", "sensor suite", "heavy manipulator arm", "shoulder weapon mount", "weapons array", "front right leg", "front left leg", "rear left leg", "rear right leg") \ No newline at end of file + hit_zones = list("central chassis", "armor plating", "component shielding", "positioning servo", "head", "sensor suite", "heavy manipulator arm", "shoulder weapon mount", "weapons array", "front right leg", "front left leg", "rear left leg", "rear right leg") diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/combat_mecha.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/combat_mecha.dm index bf04d20080..cf9c0ea3ea 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/combat_mecha.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/combat_mecha.dm @@ -5,7 +5,7 @@ name = "combat mecha" desc = "An even bigger stompy mech!!" - movement_cooldown = 10 + movement_cooldown = 3 melee_damage_lower = 30 melee_damage_upper = 30 melee_attack_delay = 1 SECOND diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/durand.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/durand.dm index df0984878e..ba25363f8d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/durand.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/durand.dm @@ -20,7 +20,7 @@ desc = "An aging combat exosuit utilized by many corporations. It was originally developed to fight in the First Contact War." catalogue_data = list(/datum/category_item/catalogue/technology/durand) icon_state = "durand" - movement_cooldown = 10 + movement_cooldown = 3 wreckage = /obj/structure/loot_pile/mecha/durand maxHealth = 400 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/gygax.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/gygax.dm index cecd4bcb7f..e06960b195 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/gygax.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/gygax.dm @@ -17,7 +17,7 @@ desc = "A lightweight, security exosuit. Popular among private and corporate security." catalogue_data = list(/datum/category_item/catalogue/technology/gygax) icon_state = "gygax" - movement_cooldown = 0 + movement_cooldown = -1 wreckage = /obj/structure/loot_pile/mecha/gygax maxHealth = 300 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/marauder.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/marauder.dm index f6efa12828..b6e2934c8c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/marauder.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/marauder.dm @@ -13,7 +13,7 @@ desc = "A heavy-duty, combat exosuit, developed after the Durand model. This is rarely found among civilian populations." catalogue_data = list(/datum/category_item/catalogue/technology/marauder) icon_state = "marauder" - movement_cooldown = 5 + movement_cooldown = 1.5 wreckage = /obj/structure/loot_pile/mecha/marauder maxHealth = 500 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm index f07eef358c..dc4733b6f0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm @@ -8,7 +8,7 @@ icon = 'icons/mecha/mecha.dmi' faction = "syndicate" - movement_cooldown = 5 + movement_cooldown = 1.5 movement_sound = "mechstep" // This gets fed into playsound(), which can also take strings as a 'group' of sound files. turn_sound = 'sound/mecha/mechturn.ogg' maxHealth = 300 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/odysseus.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/odysseus.dm index 338200c8d6..c97050e6f6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/odysseus.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/odysseus.dm @@ -22,7 +22,7 @@ wreckage = /obj/structure/loot_pile/mecha/odysseus maxHealth = 120 - movement_cooldown = 0 + movement_cooldown = -1 turn_sound = 'sound/mecha/mechmove01.ogg' melee_damage_lower = 5 @@ -79,6 +79,3 @@ /obj/item/projectile/fake_syringe/poison modifier_type_to_apply = /datum/modifier/poisoned modifier_duration = 1 MINUTE // About 30 damage per stack over a minute. - - - diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/phazon.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/phazon.dm index ebbe80ecf4..562a686385 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/phazon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/phazon.dm @@ -4,7 +4,7 @@ name = "phazon" desc = "An extremly enigmatic exosuit." icon_state = "phazon" - movement_cooldown = 5 + movement_cooldown = 1.5 wreckage = /obj/structure/loot_pile/mecha/phazon maxHealth = 200 @@ -19,4 +19,3 @@ "rad" = 100 ) projectiletype = /obj/item/projectile/energy/declone - diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm index 488d622042..1dc84a86f1 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm @@ -30,7 +30,7 @@ faction = "syndicate" maxHealth = 15 health = 15 - movement_cooldown = 0 + movement_cooldown = -2 pass_flags = PASSTABLE mob_swap_flags = 0 @@ -94,7 +94,7 @@ /mob/living/simple_mob/mechanical/viscerator/piercing attack_armor_pen = 20 base_attack_cooldown = 10 // One attack a second or so. - movement_cooldown = 0.5 + movement_cooldown = -1 /decl/mob_organ_names/viscerator hit_zones = list("chassis", "rotor blades", "sensor array") diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm index e1b1bb80fd..9120bec728 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm @@ -19,7 +19,7 @@ maxHealth = 15 health = 15 - movement_cooldown = 0 + movement_cooldown = -1 hovering = TRUE mob_bump_flag = 0 @@ -44,4 +44,4 @@ return ..() /decl/mob_organ_names/ward - hit_zones = list("chassis", "sensor array", "hover thruster") \ No newline at end of file + hit_zones = list("chassis", "sensor array", "hover thruster") diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/harvester.dm b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/harvester.dm index 93ed046f74..a2ae87d39a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/harvester.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/harvester.dm @@ -18,7 +18,7 @@ attacktext = list("violently stabbed") friendly = list("caresses") organ_names = /decl/mob_organ_names/harvester - movement_cooldown = 0 + movement_cooldown = -1 // environment_smash = 1 // Whatever this gets renamed to, Harvesters need to break things @@ -41,4 +41,4 @@ ) /decl/mob_organ_names/harvester - hit_zones = list("cephalothorax", "eye", "carapace", "energy crystal", "mandible") \ No newline at end of file + hit_zones = list("cephalothorax", "eye", "carapace", "energy crystal", "mandible") diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/juggernaut.dm b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/juggernaut.dm index 199820f3e2..96b950f5a5 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/juggernaut.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/juggernaut.dm @@ -23,7 +23,7 @@ mob_size = MOB_HUGE - movement_cooldown = 6 //Not super fast, but it might catch up to someone in armor who got punched once or twice. + movement_cooldown = 2 //Not super fast, but it might catch up to someone in armor who got punched once or twice. // environment_smash = 2 // Whatever this gets renamed to, Juggernauts need to break things @@ -145,4 +145,4 @@ return (..(P)) /decl/mob_organ_names/juggernaut - hit_zones = list("body", "left pauldron", "right pauldron", "left arm", "right arm", "eye", "head", "crystaline spike") \ No newline at end of file + hit_zones = list("body", "left pauldron", "right pauldron", "left arm", "right arm", "eye", "head", "crystaline spike") diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/wraith.dm b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/wraith.dm index f933f5fdba..1c9ad2db84 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/wraith.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/wraith.dm @@ -20,7 +20,7 @@ attacktext = list("slashed") friendly = list("pinches") organ_names = /decl/mob_organ_names/wraith - movement_cooldown = 0 + movement_cooldown = -1 attack_sound = 'sound/weapons/rapidslice.ogg' construct_spells = list(/spell/targeted/ethereal_jaunt/shift, /spell/targeted/ambush_mode @@ -34,4 +34,4 @@ L.add_modifier(/datum/modifier/deep_wounds, 30 SECONDS) /decl/mob_organ_names/wraith - hit_zones = list("body", "eye", "crystaline spike", "left claw", "right claw") \ No newline at end of file + hit_zones = list("body", "eye", "crystaline spike", "left claw", "right claw") diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/feral/feral.dm b/code/modules/mob/living/simple_mob/subtypes/slime/feral/feral.dm index e2ef92e982..ea524c3c80 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/feral/feral.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/feral/feral.dm @@ -20,7 +20,7 @@ default_pixel_y = -10 // To prevent resetting above var. maxHealth = 300 - movement_cooldown = 10 + movement_cooldown = -3 melee_attack_delay = 0.5 SECONDS ai_holder_type = /datum/ai_holder/simple_mob/ranged/pointblank @@ -93,4 +93,3 @@ if(L.has_AI()) // Other AIs should react to hostile auras. L.ai_holder.react_to_attack(src) - diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm b/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm index 78b27372a4..790672aa95 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm @@ -33,7 +33,7 @@ var/list/_slime_default_emotes = list( faction = "slime" // Note that slimes are hostile to other slimes of different color regardless of faction (unless Unified). maxHealth = 150 - movement_cooldown = 0 + movement_cooldown = -1 pass_flags = PASSTABLE makes_dirt = FALSE // Goop mob_class = MOB_CLASS_SLIME diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm index e3f526bb5b..d13469d8a6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm @@ -474,7 +474,7 @@ melee_damage_lower = 10 melee_damage_upper = 30 - movement_cooldown = 0 // This actually isn't any faster due to AI limitations that hopefully the timer subsystem can fix in the future. + movement_cooldown = -1 // This actually isn't any faster due to AI limitations that hopefully the timer subsystem can fix in the future. slime_mutation = list( /mob/living/simple_mob/slime/xenobio/dark_blue, @@ -490,7 +490,7 @@ color = "#FF3333" slime_color = "red" coretype = /obj/item/slime_extract/red - movement_cooldown = 0 // See above. + movement_cooldown = -1 // See above. untamable = TRUE // Will enrage if disciplined. description_info = "This slime is faster than the others. Attempting to discipline this slime will always cause it to go rabid and berserk." diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm b/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm index cac9a79b10..010dbafed1 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm @@ -11,7 +11,7 @@ response_disarm = "gently pushes aside" response_harm = "hits" - movement_cooldown = 5 + movement_cooldown = 1.5 // speed = 5 maxHealth = 25 health = 25 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/c_pet.dm b/code/modules/mob/living/simple_mob/subtypes/vore/c_pet.dm index 2a6871ac12..b2460c5522 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/c_pet.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/c_pet.dm @@ -56,7 +56,7 @@ icon_state = "dave1" icon_living = "dave1" icon_dead = "dave_dead" - movement_cooldown = 300 + movement_cooldown = 100 maxHealth = 1500 health = 1500 @@ -93,4 +93,4 @@ /mob/living/simple_mob/animal/passive/mimepet/attack_hand(mob/living/user as mob) if(user.a_intent == I_DISARM) icon_state = pick("dave1", "dave2", "dave3", "dave5" , "dave6" , "dave7" , "dave8" , "dave9" , "dave10") - .=..() \ No newline at end of file + .=..() diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm index c255cc31a0..7bdd95f2e7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm @@ -115,7 +115,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/vore/aggressive/corrupthound/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm index c5a04ea5b5..7a3497d7ce 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm @@ -76,7 +76,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/vore/aggressive/deathclaw/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm index a98d942dd1..a67ee85b33 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm @@ -15,7 +15,7 @@ faction = "demon" maxHealth = 30 health = 30 - movement_cooldown = 0 + movement_cooldown = -2 see_in_dark = 10 seedarkness = FALSE @@ -96,4 +96,4 @@ else return ..() -*/ \ No newline at end of file +*/ diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm index f7b1492f0d..2531f35df7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm @@ -13,7 +13,7 @@ response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" - movement_cooldown = 4 + movement_cooldown = 0.5 harm_intent_damage = 5 melee_damage_lower = 5 melee_damage_upper = 12 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm index 1e5ed98d6c..b83c403da2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm @@ -122,7 +122,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/vore/aggressive/dragon/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm index 94b5780f32..7af9ae941b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm @@ -103,7 +103,7 @@ mob_bump_flag = HEAVY grab_resist = 100 mob_class = MOB_CLASS_HUMANOID - movement_cooldown = 1 + movement_cooldown = -1 melee_miss_chance = 10 old_x = -32 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm b/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm index 41895be835..6792ffd237 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm @@ -28,7 +28,7 @@ icon_state = "frog" icon = 'icons/mob/vore.dmi' - movement_cooldown = 4 //fast as fucc boie. + movement_cooldown = 0.5 //fast as fucc boie. can_be_drop_pred = 1 //They can tongue vore. meat_amount = 4 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm index aac01fc1af..1e813680a7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm @@ -24,7 +24,7 @@ response_help = "pets" response_disarm = "shoves" response_harm = "smacks" - movement_cooldown = 2 + movement_cooldown = -1 harm_intent_damage = 10 melee_damage_lower = 10 melee_damage_upper = 20 @@ -101,7 +101,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 1.5 + movement_cooldown = -1.5 /mob/living/simple_mob/vore/greatwolf/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm b/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm index d2760e8304..2052573b4e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm @@ -11,7 +11,7 @@ maxHealth = 200 health = 200 - movement_cooldown = 5 + movement_cooldown = 1.5 see_in_dark = 3 armor = list( @@ -74,7 +74,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/vore/hippo/MouseDrop_T(mob/living/M, mob/living/user) return @@ -85,4 +85,4 @@ /datum/say_list/hippo speak = list("UUUUUUH") emote_hear = list("grunts","groans", "roars", "snorts") - emote_see = list("shakes its head") \ No newline at end of file + emote_see = list("shakes its head") diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm b/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm index 9353c3619f..bc066d1ac7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm @@ -12,7 +12,7 @@ maxHealth = 60 health = 60 - movement_cooldown = 1.5 //horses are fast mkay. + movement_cooldown = -2 //horses are fast mkay. see_in_dark = 6 response_help = "pets" @@ -74,7 +74,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 1.5 + movement_cooldown = -2 /mob/living/simple_mob/vore/horse/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm index 82a9665959..e2749e443f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm @@ -22,7 +22,7 @@ response_help = "pats" response_disarm = "shoves" response_harm = "bops" - movement_cooldown = 2 + movement_cooldown = -1 maxHealth = 1500 attacktext = list("chomped") see_in_dark = 8 @@ -74,7 +74,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 2 + movement_cooldown = -1 /mob/living/simple_mob/vore/leopardmander/Initialize() ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm index 1ce7c81de3..61983b08f2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm @@ -83,7 +83,7 @@ maxHealth = 125 health = 125 - movement_cooldown = 7 + movement_cooldown = 3 response_help = "touches" response_disarm = "pushes" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bigclowns.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bigclowns.dm index 41e0c57dd7..7602016b9e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bigclowns.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bigclowns.dm @@ -215,7 +215,7 @@ pixel_x = -16 pixel_y = 0 - movement_cooldown = 10 + movement_cooldown = 4 movement_sound = 'sound/weapons/heavysmash.ogg' movement_shake_radius = 5 @@ -376,4 +376,4 @@ // icon_living = "" // icon_dead = "_dead" // icon_gib = "generic_gib" -// vis_height = 64 \ No newline at end of file +// vis_height = 64 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/busclowns.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/busclowns.dm index c4b3a13033..21b201bb37 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/busclowns.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/busclowns.dm @@ -215,7 +215,7 @@ pixel_x = -16 pixel_y = 0 - movement_cooldown = 10 + movement_cooldown = 4 movement_sound = 'sound/weapons/heavysmash.ogg' movement_shake_radius = 5 @@ -362,4 +362,4 @@ icon_living = "honkling" icon_dead = "honkling_dead" icon_gib = "generic_gib" - vis_height = 32 \ No newline at end of file + vis_height = 32 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm b/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm index 22e5ca0888..f10ed399e7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm @@ -40,7 +40,7 @@ melee_damage_lower = 1 melee_damage_upper = 3 //low damage, they prefer to flee - movement_cooldown = 8 + movement_cooldown = 3.5 meat_type = /obj/item/weapon/ore/coal @@ -98,7 +98,7 @@ icon_living = "lavagrub" icon_dead = "lavagrub-dead" - movement_cooldown = 5 + movement_cooldown = 2 maxHealth = 75 //lavagrubs are really hardy health = 75 vore_pounce_chance = 80 // Full-grown grubs should pounce. More homf opportunities if you're dumb enough to poke it. @@ -197,4 +197,4 @@ return .=..() var/obj/belly/B = vore_selected - B.belly_fullscreen_color = "#cf741e" // CHOMPedit - Belly Fullscreen \ No newline at end of file + B.belly_fullscreen_color = "#cf741e" // CHOMPedit - Belly Fullscreen diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm index 799bf66503..ba3a14bccd 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm @@ -325,7 +325,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/otie/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm b/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm index dcdaf87b6f..f622eee483 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm @@ -25,7 +25,7 @@ faction = "pakkun" - movement_cooldown = 6 + movement_cooldown = 2 can_be_drop_pred = 1 //They can tongue vore. meat_amount = 5 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm index 15c4e21700..67093e50e9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm @@ -13,7 +13,7 @@ faction = "panther" maxHealth = 200 health = 200 - movement_cooldown = 4 + movement_cooldown = 0.5 see_in_dark = 8 meat_amount = 8 @@ -63,7 +63,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/vore/aggressive/panther/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm index 3e60529764..8d72c060bf 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm @@ -27,7 +27,7 @@ melee_damage_upper = 3 attacktext = list("nipped") - movement_cooldown = 3 + movement_cooldown = 0 say_list_type = /datum/say_list/rabbit ai_holder_type = /datum/ai_holder/simple_mob/passive @@ -169,7 +169,7 @@ melee_damage_upper = 3 attacktext = list("nipped") - movement_cooldown = 0.5 // very fast bunbun. + movement_cooldown = -2 // very fast bunbun. vore_bump_chance = 10 vore_pounce_chance = 100 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm index 42255fd49e..7144f2564f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm @@ -223,7 +223,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 3 + movement_cooldown = 0 /mob/living/simple_mob/vore/aggressive/rat/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm index c5becf41d2..5a2c2b68f4 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm @@ -38,7 +38,7 @@ health = 90 see_in_dark = 8 - movement_cooldown = 3 + movement_cooldown = 0 melee_damage_lower = 6 melee_damage_upper = 12 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm index d32e7ff1b4..084929a5aa 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm @@ -13,7 +13,7 @@ maxHealth = 200 health = 200 - movement_cooldown = 2 + movement_cooldown = -1.5 see_in_dark = 10 //SHADEkin has_hands = TRUE //Pawbs seedarkness = FALSE //SHAAAADEkin diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm index c4f3e19673..6490075057 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm @@ -50,7 +50,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 1.5 + movement_cooldown = -1 /mob/living/simple_mob/vore/sheep/MouseDrop_T(mob/living/M, mob/living/user) return @@ -119,4 +119,4 @@ else icon_living = "sheep_bald" return ..() -*/ \ No newline at end of file +*/ diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm b/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm index b20bab07bd..f927fc3285 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm @@ -18,7 +18,7 @@ faction = "dog" maxHealth = 600 health = 600 - movement_cooldown = 1 + movement_cooldown = -1 response_help = "pets" response_disarm = "rudely paps" @@ -207,7 +207,7 @@ /mob/living/simple_mob/vore/woof/hostile/melee - movement_cooldown = 0 + movement_cooldown = -2 ai_holder_type = /datum/ai_holder/simple_mob/woof/hostile @@ -304,12 +304,12 @@ /mob/living/simple_mob/vore/woof/hostile/aweful/melee - movement_cooldown = 0 + movement_cooldown = -2 ai_holder_type = /datum/ai_holder/simple_mob/woof/hostile /mob/living/simple_mob/vore/woof/hostile/aweful/ranged - movement_cooldown = 0 + movement_cooldown = -2 ai_holder_type = /datum/ai_holder/simple_mob/ranged/kiting/threatening/woof diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm index cfb0f5ea77..978fe3c626 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm @@ -40,7 +40,7 @@ var/global/list/moth_amount = 0 // Chompstation Addition, Rykka waz here. *pawst melee_damage_lower = 1 melee_damage_upper = 3 //low damage, but poison and stuns are strong - movement_cooldown = 8 + movement_cooldown = 3 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat meat_amount = 6 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm index 454b4cafcd..218211770b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm @@ -11,7 +11,7 @@ var/global/list/grub_machine_overlays = list() health = 5 maxHealth = 5 - movement_cooldown = 3 + movement_cooldown = 0 melee_damage_lower = 1 // This is a tiny worm. It will nibble and thats about it. melee_damage_upper = 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm b/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm index 0e71039ef7..8d49313493 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm @@ -12,7 +12,7 @@ faction = "panther" maxHealth = 150 health = 150 - movement_cooldown = 2 + movement_cooldown = -1 response_help = "pats" response_disarm = "gently pushes aside" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm index 450955ca01..d0f63a8730 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm @@ -19,7 +19,7 @@ response_disarm = "bops" response_harm = "hits" - movement_cooldown = 5 + movement_cooldown = 1.5 harm_intent_damage = 5 melee_damage_lower = 5 @@ -66,7 +66,7 @@ health = 40 maxHealth = 40 - movement_cooldown = 3 + movement_cooldown = 0 harm_intent_damage = 5 melee_damage_lower = 10 @@ -122,7 +122,7 @@ riding_datum = new /datum/riding/simple_mob(src) verbs |= /mob/living/simple_mob/proc/animal_mount verbs |= /mob/living/proc/toggle_rider_reins - movement_cooldown = 2 + movement_cooldown = -1 /mob/living/simple_mob/animal/wolf/direwolf/MouseDrop_T(mob/living/M, mob/living/user) return diff --git a/maps/groundbase/gb-z2.dmm b/maps/groundbase/gb-z2.dmm index 180c322367..7d8547c2b0 100644 --- a/maps/groundbase/gb-z2.dmm +++ b/maps/groundbase/gb-z2.dmm @@ -1933,9 +1933,10 @@ lol bye /turf/simulated/floor/tiled, /area/groundbase/science/rd) "fs" = ( -/obj/machinery/newscaster{ - layer = 3.3; - pixel_x = -27 +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 }, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) @@ -2779,6 +2780,10 @@ lol bye /obj/machinery/light{ dir = 8 }, +/obj/machinery/requests_console{ + department = "Service"; + pixel_y = 25 + }, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) "hS" = ( @@ -5506,8 +5511,17 @@ lol bye /turf/simulated/floor/tiled/dark, /area/groundbase/dorms) "pM" = ( -/obj/machinery/alarm{ - dir = 4 +/obj/machinery/button/remote/blast_door{ + dir = 4; + id = "botgate"; + name = "Botany shutters"; + pixel_x = -27; + pixel_y = 6 + }, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -28; + pixel_y = -1 }, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) @@ -7625,13 +7639,13 @@ lol bye }, /area/groundbase/level2/nw) "vV" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - name = "Hydroponics"; - sortType = "Hydroponics" +/obj/structure/reagent_dispensers/watertank, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/machinery/newscaster{ + pixel_y = 28 }, -/turf/simulated/floor/outdoors/sidewalk/slab, -/area/groundbase/level2/nw) +/turf/simulated/floor/tiled, +/area/groundbase/civilian/hydroponics) "vW" = ( /obj/structure/bed/chair/office/dark, /obj/effect/landmark/start/qm, @@ -9603,10 +9617,13 @@ lol bye /turf/simulated/floor/tiled, /area/groundbase/science/xenobot) "BS" = ( -/obj/structure/closet/secure_closet/hydroponics, /obj/machinery/light{ dir = 8 }, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/machinery/disposal, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) "BT" = ( @@ -10556,10 +10573,7 @@ lol bye /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) "Ep" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) "Eq" = ( @@ -11024,6 +11038,25 @@ lol bye }, /turf/simulated/floor, /area/rnd/xenobiology) +"FQ" = ( +/obj/structure/table/marble, +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/window/brigdoor/westright{ + dir = 4; + name = "Research Desk"; + req_access = null; + req_one_access = list(35,28) + }, +/obj/machinery/door/blast/gate/thin{ + dir = 8; + id = "botgate"; + layer = 3.3 + }, +/turf/simulated/floor, +/area/groundbase/civilian/hydroponics) "FR" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -12578,11 +12611,12 @@ lol bye /turf/simulated/floor/wood, /area/groundbase/dorms/room4) "JZ" = ( -/obj/machinery/disposal, -/obj/structure/disposalpipe/trunk, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -30 +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/item/weapon/stool/padded{ + dir = 8 }, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) @@ -12597,6 +12631,12 @@ lol bye }, /turf/simulated/floor/wood, /area/groundbase/dorms/room6) +"Kb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/simulated/floor/outdoors/sidewalk/side, +/area/groundbase/level2/nw) "Kc" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 @@ -13969,15 +14009,17 @@ lol bye }, /area/groundbase/level2/se) "NP" = ( -/obj/machinery/door/airlock/glass{ - name = "Hydroponics"; - req_one_access = list(35,28) - }, +/obj/structure/table/marble, /obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ +/obj/structure/window/reinforced{ dir = 4 }, -/turf/simulated/floor/bmarble, +/obj/machinery/door/blast/gate/thin{ + dir = 8; + id = "botgate"; + layer = 3.3 + }, +/turf/simulated/floor, /area/groundbase/civilian/hydroponics) "NR" = ( /obj/structure/cable/yellow, @@ -14058,11 +14100,12 @@ lol bye /turf/simulated/floor/tiled/white, /area/groundbase/dorms/room4) "Oa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/machinery/beehive, +/obj/machinery/alarm{ + dir = 8 }, -/turf/simulated/floor/outdoors/sidewalk/side, -/area/groundbase/level2/nw) +/turf/simulated/floor/tiled, +/area/groundbase/civilian/hydroponics) "Ob" = ( /obj/machinery/door/firedoor, /obj/structure/cable/yellow{ @@ -14244,11 +14287,11 @@ lol bye /turf/simulated/floor/tiled/eris/cafe, /area/groundbase/civilian/kitchen) "OA" = ( -/obj/structure/closet/secure_closet/hydroponics, /obj/machinery/computer/guestpass{ dir = 4; pixel_x = -25 }, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled, /area/groundbase/civilian/hydroponics) "OB" = ( @@ -16366,18 +16409,13 @@ lol bye /turf/simulated/floor/tiled, /area/groundbase/science/circuits) "UC" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12; - pixel_y = 2 +/obj/structure/disposalpipe/sortjunction{ + dir = 1; + name = "Hydroponics"; + sortType = "Hydroponics" }, -/obj/machinery/requests_console{ - department = "Service"; - dir = 4; - pixel_x = -25 - }, -/turf/simulated/floor/tiled, -/area/groundbase/civilian/hydroponics) +/turf/simulated/floor/outdoors/sidewalk/slab, +/area/groundbase/level2/nw) "UD" = ( /turf/simulated/floor{ edge_blending_priority = -1; @@ -17655,6 +17693,10 @@ lol bye outdoors = 1 }, /area/groundbase/science/xenobot) +"Yo" = ( +/obj/structure/closet/secure_closet/hydroponics, +/turf/simulated/floor/tiled, +/area/groundbase/civilian/hydroponics) "Yp" = ( /turf/simulated/floor/tiled/dark, /area/groundbase/dorms) @@ -24657,8 +24699,8 @@ Hr pJ sF go +UC sF -vV go sF sF @@ -24799,8 +24841,8 @@ wl sN pw oG +Kb bY -Oa oG bY bY @@ -24940,9 +24982,9 @@ bY lM sN bY -lM -bY -Oa +EZ +Kb +pw lM wD Aq @@ -25082,8 +25124,8 @@ Wl Wl gH Wl -Wl -Wl +NP +FQ NP Wl Wl @@ -25224,7 +25266,7 @@ hQ fs Wv pM -UC +Yt JZ Ep OA @@ -26072,7 +26114,7 @@ iI Hi HH Wl -WP +vV Yt Wv Yt @@ -26506,7 +26548,7 @@ Yt Yt Yt Yt -Yt +Yo In bY bY @@ -26648,7 +26690,7 @@ Ox Yt Yt Yt -Yt +Yo In bY bY @@ -26785,7 +26827,7 @@ Wl Kh Yt Rf -Rf +Oa HF KN YS diff --git a/maps/tether/submaps/underdark_pois/underdark_things.dm b/maps/tether/submaps/underdark_pois/underdark_things.dm index 926fb7393b..499d5a924c 100644 --- a/maps/tether/submaps/underdark_pois/underdark_things.dm +++ b/maps/tether/submaps/underdark_pois/underdark_things.dm @@ -18,7 +18,7 @@ /mob/living/simple_mob/animal/wolf/phoron faction = "underdark" - movement_cooldown = 0 + movement_cooldown = -1.5 harm_intent_damage = 5 melee_damage_lower = 5 @@ -103,4 +103,4 @@ VIRGO3B_TURF_CREATE(/turf/simulated/floor/tiled/kafel_full/yellow) /obj/mecha/working/ripley/abandoned/Initialize() ..() for(var/obj/item/mecha_parts/mecha_tracking/B in src.contents) //Deletes the beacon so it can't be found easily - qdel(B) \ No newline at end of file + qdel(B) diff --git a/maps/tether/tether.dm b/maps/tether/tether.dm index 2c77a8c376..b903bc0988 100644 --- a/maps/tether/tether.dm +++ b/maps/tether/tether.dm @@ -29,4 +29,4 @@ #warn A map has already been included, ignoring Tether -#endif \ No newline at end of file +#endif