From 583b5a42cd458730e9c7cd6568efa90b3d48b898 Mon Sep 17 00:00:00 2001 From: uporotiy Date: Wed, 4 May 2011 20:15:14 +0000 Subject: [PATCH] Glowshrooms Nerfed the spread rate and chance, made the suspectible to plantbgone and acid. Arcade Added a new prize. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1528 316c924e-a436-60f5-8080-3fe189b3f50e --- code/WorkInProgress/Chemistry-Reagents.dm | 8 +- code/defines/obj/hydro.dm | 4 +- code/defines/obj/toy.dm | 98 +++++++++++++++++++++- code/game/machinery/computer/arcade.dm | 4 +- code/game/objects/glowshroom.dm | 4 +- icons/obj/rune.dmi | Bin 1284 -> 3217 bytes icons/obj/toy.dmi | Bin 5911 -> 1748 bytes 7 files changed, 110 insertions(+), 8 deletions(-) diff --git a/code/WorkInProgress/Chemistry-Reagents.dm b/code/WorkInProgress/Chemistry-Reagents.dm index ba0ac874ba9..9bfe70cbb9a 100644 --- a/code/WorkInProgress/Chemistry-Reagents.dm +++ b/code/WorkInProgress/Chemistry-Reagents.dm @@ -520,7 +520,7 @@ datum M.take_organ_damage(15) reaction_obj(var/obj/O, var/volume) - if(istype(O,/obj/item) && prob(40)) + if((istype(O,/obj/item) || istype(O,/obj/glowshroom)) && prob(40)) var/obj/decal/cleanable/molten_item/I = new/obj/decal/cleanable/molten_item(O.loc) I.desc = "Looks like this was \an [O] some time ago." for(var/mob/M in viewers(5, O)) @@ -575,7 +575,7 @@ datum M.take_organ_damage(15) reaction_obj(var/obj/O, var/volume) - if(istype(O,/obj/item)) + if((istype(O,/obj/item) || istype(O,/obj/glowshroom))) var/obj/decal/cleanable/molten_item/I = new/obj/decal/cleanable/molten_item(O.loc) I.desc = "Looks like this was \an [O] some time ago." for(var/mob/M in viewers(5, O)) @@ -796,6 +796,8 @@ datum if(istype(O,/obj/alien/weeds/)) O:health -= rand(15,35) // Kills alien weeds pretty fast O:healthcheck() + else if(istype(O,/obj/glowshroom)) //even a small amount is enough to kill it + del(O) // Damage that is done to growing plants is separately // at code/game/machinery/hydroponics at obj/item/hydroponics @@ -804,6 +806,8 @@ datum if(istype(M, /mob/living/carbon)) if(!M.wear_mask) // If not wearing a mask M:toxloss += 2 // 4 toxic damage per application, doubled for some reason + if(istype(M,/mob/living/carbon/human) && M:mutantrace == "plant") //plantmen take a LOT of damage + M:toxloss += 10 //if(prob(10)) //M.make_dizzy(1) doesn't seem to do anything diff --git a/code/defines/obj/hydro.dm b/code/defines/obj/hydro.dm index ba80b20264d..c709836628f 100644 --- a/code/defines/obj/hydro.dm +++ b/code/defines/obj/hydro.dm @@ -358,7 +358,7 @@ species = "glowshroom" plantname = "Glowshroom" productname = "/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom" - lifespan = 60 //ten times that is the delay + lifespan = 120 //ten times that is the delay endurance = 30 maturation = 15 production = 1 @@ -816,7 +816,7 @@ pickup(src.loc) else src.sd_SetLuminosity(potency/10) - lifespan = 60 //ten times that is the delay + lifespan = 120 //ten times that is the delay endurance = 30 maturation = 15 production = 1 diff --git a/code/defines/obj/toy.dm b/code/defines/obj/toy.dm index 250a5624fa3..e96b0f8707d 100644 --- a/code/defines/obj/toy.dm +++ b/code/defines/obj/toy.dm @@ -218,4 +218,100 @@ obj/item/toy/blink for(var/mob/O in viewers(M, null)) if (O.client) O.show_message(text("\red [] casually lines up a shot with []'s head, pulls the trigger, then realizes they are out of ammo and drops to the floor in search of some!", user, M), 1, "\red You hear someone fall", 2) user.weakened += 5 - return \ No newline at end of file + return + +/obj/item/toy/crayonbox + name = "box of crayons" + desc = "A box of crayons for all your rune drawing needs." + icon = 'toy.dmi' + icon_state = "crayonbox6" + +/obj/item/toy/crayonbox/New() + ..() + new /obj/item/toy/crayon/red(src) + new /obj/item/toy/crayon/orange(src) + new /obj/item/toy/crayon/yellow(src) + new /obj/item/toy/crayon/green(src) + new /obj/item/toy/crayon/blue(src) + new /obj/item/toy/crayon/purple(src) + +/obj/item/toy/crayonbox/attack_hand(mob/user as mob) + if(user.r_hand == src || user.l_hand == src) + if(!contents.len) + user << "\red You're out of crayons!" + return + else + var/crayon = contents[contents.len] + user.contents += crayon + if(user.hand) + user.l_hand = crayon + else + user.r_hand = crayon + crayon:layer = 20 + else + return ..() + icon_state = "crayonbox[contents.len]" + return + +/obj/item/toy/crayon + name = "crayon" + desc = "A colourful crayon. Looks tasty. Mmmm..." + icon = 'toy.dmi' + icon_state = "crayonred" + var/colour = "000000" //RGB + var/shadeColour = "000000" //RGB + +/obj/item/toy/crayon/red + icon_state = "crayonred" + colour = "DA0000" + shadeColour = "810C0C" + +/obj/item/toy/crayon/orange + icon_state = "crayonorange" + colour = "FF9300" + shadeColour = "A55403" + +/obj/item/toy/crayon/yellow + icon_state = "crayonyellow" + colour = "FFF200" + shadeColour = "886422" + +/obj/item/toy/crayon/green + icon_state = "crayongreen" + colour = "A8E61D" + shadeColour = "61840F" + +/obj/item/toy/crayon/blue + icon_state = "crayonblue" + colour = "00B7EF" + shadeColour = "0082A8" + +/obj/item/toy/crayon/purple + icon_state = "crayonpurple" + colour = "DA00FF" + shadeColour = "810CFF" + +/obj/item/toy/crayon/afterattack(atom/target, mob/user as mob) + if(istype(target,/turf/simulated/floor)) + new /obj/crayonrune(target,colour,shadeColour) + user << "You draw a rune on the [target.name]." + return + +/obj/crayonrune + name = "rune" + desc = "A rune drawn in crayon." + icon = 'rune.dmi' + +/obj/crayonrune/New(location,main = "FFFFFF",shade = "000000") + ..() + loc = location + var/runeShape = rand(1,6) + + var/icon/mainOverlay = new/icon('rune.dmi',"main[runeShape]",2.1) + mainOverlay.Blend("#[main]",ICON_ADD) + + var/icon/shadeOverlay = new/icon('rune.dmi',"shade[runeShape]",3) + shadeOverlay.Blend("#[shade]",ICON_ADD) + + overlays += mainOverlay + overlays += shadeOverlay \ No newline at end of file diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index e994c1f8249..88abf6d5074 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -133,7 +133,7 @@ src.gameover = 1 src.temp = "[src.enemy_name] has fallen! Rejoice!" var/obj/item/prize - var/prizeselect = pick(1,2,3,4,5,6,7) + var/prizeselect = pick(1,2,3,4,5,6,7,8) switch(prizeselect) if(1) prize = new /obj/item/weapon/spacecash(src.loc) @@ -153,6 +153,8 @@ if(7) prize = new /obj/item/clothing/suit/syndicatefake(src.loc) prize = new /obj/item/clothing/head/syndicatefake(src.loc) + if(8) + prize = new /obj/item/toy/crayonbox(loc) else if ((src.enemy_mp <= 5) && (prob(70))) diff --git a/code/game/objects/glowshroom.dm b/code/game/objects/glowshroom.dm index c243ec5acb3..3c36e80b38c 100644 --- a/code/game/objects/glowshroom.dm +++ b/code/game/objects/glowshroom.dm @@ -10,10 +10,10 @@ layer = 2.1 var/endurance = 30 var/potency = 30 - var/delay = 600 + var/delay = 1200 var/floor = 0 var/yield = 3 - var/spreadChance = 80 + var/spreadChance = 40 var/spreadIntoAdjacentChance = 60 var/evolveChance = 2 diff --git a/icons/obj/rune.dmi b/icons/obj/rune.dmi index 4e8787553e4243a4f1fe6fc1eeea5252dd7c6dbe..d0bd47d6858ff40abe682df524dea7bcb24a828f 100644 GIT binary patch literal 3217 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 D&^s)O literal 1284 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