Removes poo. XSI and co. weren't very fond of it, and the last thing I would do is make them uncomfortable and challenge their leadership by keeping poo in.

An experimental lagfix, which removes a couple THOUSAND unnecessary machines from the machine processing list. Please report any unresponsive machinery (as result of this commit) as HIGH PRIORITY issues. I'm not quite sure how much lag this will kill, but I'm confident that it will be at least slightly noticeable.

More work on step_triggers. The escape shuttle should no longer blast things forever and give them infinite momentum.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3370 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
vageyenaman@gmail.com
2012-03-29 03:53:38 +00:00
parent d4a2a37b50
commit d29e3be8d4
16 changed files with 15 additions and 297 deletions

View File

@@ -25,7 +25,6 @@ obj/machinery/atmospherics
process()
build_network()
..()
proc
network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference)

View File

@@ -297,61 +297,3 @@
layer = 2
icon = 'tomatodecal.dmi'
random_icon_states = list("smashed_pie")
/* April fools shit */
/obj/effect/decal/cleanable/urine
name = "urine"
desc = "It's yellow, and it smells."
density = 0
anchored = 1
layer = 2
icon = 'AF.dmi'
icon_state = "urine1"
random_icon_states = list("urine1", "urine2", "urine3")
/obj/effect/decal/cleanable/poo
name = "poo"
desc = "Aw man, what the FUCK."
density = 0
anchored = 1
layer = 2
icon = 'AF.dmi'
icon_state = "splat1"
random_icon_states = list("splat1", "splat2", "splat3", "splat4", "splat5", "splat6", "splat7", "splat8")
var/dried = 0
/obj/effect/decal/cleanable/urine/New()
src.icon_state = pick(src.random_icon_states)
spawn(500)
del(src)
/obj/effect/decal/cleanable/urine/HasEntered(AM as mob|obj)
if (istype(AM, /mob/living/carbon))
var/mob/M = AM
if(istype(M, /mob/living/carbon/human)) // Added check since monkeys don't have shoes
if ((M.m_intent == "run") && !(istype(M:shoes, /obj/item/clothing/shoes) && M:shoes.flags&NOSLIP))
M.pulling = null
M << "\blue You slipped on the wet urine puddle!"
playsound(src.loc, 'slip.ogg', 50, 1, -3)
M.Stun(rand(1,8))
M.Weaken(rand(1,5))
/obj/effect/decal/cleanable/poo/New()
src.icon_state = pick(src.random_icon_states)
spawn(300)
src.dried = 1
/obj/effect/decal/cleanable/poo/HasEntered(AM as mob|obj)
if (istype(AM, /mob/living/carbon) && src.dried == 0)
var/mob/M = AM
if(istype(M, /mob/living/carbon/human)) // Added check since monkeys don't have shoes
if ((M.m_intent == "run") && !(istype(M:shoes, /obj/item/clothing/shoes) && M:shoes.flags&NOSLIP))
M.pulling = null
M << "\blue You slipped on the wet poo stain!"
playsound(src.loc, 'slip.ogg', 50, 1, -3)
M.Stun(rand(1,8))
M.Weaken(rand(1,5))

View File

@@ -252,15 +252,6 @@
this.viruses += newDisease
newDisease.holder = this
/atom/proc/add_poo_floor()
if( istype(src, /turf))
new /obj/effect/decal/cleanable/poo(src)
/atom/proc/add_piss_floor()
if( istype(src, /turf))
new /obj/effect/decal/cleanable/urine(src)
// Only adds blood on the floor -- Skie
/atom/proc/add_blood_floor(mob/living/carbon/M as mob)
if( istype(M, /mob/living/carbon/monkey) )

View File

@@ -41,7 +41,6 @@
icon_state = "[state]"
process()
..()
if(!Beacon)
var/turf/T = loc
Beacon = new /obj/item/device/radio/beacon

View File

@@ -93,7 +93,6 @@ obj/machinery/computer/general_air_control
process()
..()
src.updateDialog()
attackby(I as obj, user as mob)

View File

@@ -10,7 +10,6 @@
var/volume_rate = 800
/obj/machinery/zvent/process()
..()
//all this object does, is make its turf share air with the ones above and below it, if they have a vent too.
if (istype(loc,/turf/simulated)) //if we're not on a valid turf, forget it

View File

@@ -62,7 +62,6 @@ obj/machinery/embedded_controller
update_icon()
src.updateDialog()
..()
radio
var/frequency

View File

@@ -100,7 +100,16 @@ Class Procs:
..()
/obj/machinery/process()//If you dont use process or power why are you here
// machines.Remove(src)Not going to do this till I test it a bit more
/*
Big note: if do not call ..() in any machinery subtype process() call or it will
be removed from the list of machines to iterate. It is, however, okay to call ..()
if the machine has a parent process() call. For instance, machinery/atmosphereics has a
root process() call, so things like cryocells can call ..() and not worry about
it getting removed from machines.
*/
machines.Remove(src) // uncommented by Doohl
return
/obj/machinery/emp_act(severity)

View File

@@ -129,7 +129,6 @@
process()
..()
if(stat & NOPOWER)
on = 0
@@ -238,7 +237,6 @@
process()
..()
if(magnets.len == 0 && autolink)
for(var/obj/machinery/magnetic_module/M in world)
if(M.freq == frequency && M.code == code)

View File

@@ -16,7 +16,6 @@
build_icon()
process()
..()
if(!(NOPOWER|BROKEN))
return

View File

@@ -45,9 +45,13 @@
if(tiles)
if(curtiles >= tiles)
break
if(A.z != src.z)
break
curtiles++
sleep(speed)
// Calculate if we should stop the process
if(!nostop)
for(var/obj/step_trigger/T in get_step(A, direction))
@@ -63,7 +67,7 @@
if(!facedir)
A.dir = predir
sleep(speed)
affecting.Remove(A)

View File

@@ -1649,7 +1649,6 @@ datum
if(!M) M = holder.my_atom
if(prob(50)) M:heal_organ_damage(1,0)
M:nutrition += nutriment_factor // For hunger and fatness
M.poo += nutriment_factor / 10 // LOLE
/*
// If overeaten - vomit and fall down
// Makes you feel bad but removes reagents and some effect

View File

@@ -1481,7 +1481,6 @@
reagents.trans_to(M, gulp_size)
playsound(M.loc,'drink.ogg', rand(10,50), 1)
M.urine += 0.25
return 1
else if( istype(M, /mob/living/carbon/human) )
@@ -1510,7 +1509,6 @@
R.add_reagent(refill, fillevel)
playsound(M.loc,'drink.ogg', rand(10,50), 1)
M.urine += 0.25
return 1
return 0

View File

@@ -457,218 +457,6 @@
if ("help")
src << "blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough,\ncry, custom, deathgasp, drool, eyebrow, frown, gasp, giggle, groan, grumble, handshake, hug-(none)/mob, glare-(none)/mob,\ngrin, laugh, look-(none)/mob, moan, mumble, nod, pale, point-atom, raise, salute, shake, shiver, shrug,\nsigh, signal-#1-10, smile, sneeze, sniff, snore, stare-(none)/mob, tremble, twitch, twitch_s, whimper,\nwink, yawn"
if ("fart")
if(isAprilFools())
var/gtext = "his"
if(gender == FEMALE)
gtext = "her"
switch(rand(1, 48))
if(1)
message = "<B>[src]</B> lets out a girly little 'toot' from [gtext] butt."
if(2)
message = "<B>[src]</B> farts loudly!"
if(3)
message = "<B>[src]</B> lets one rip!"
if(4)
message = "<B>[src]</B> farts! It sounds wet and smells like rotten eggs."
if(5)
message = "<B>[src]</B> farts robustly!"
if(6)
message = "<B>[src]</B> farted! It reminds you of your grandmother's queefs."
if(7)
message = "<B>[src]</B> queefed out [gtext] ass!"
if(8)
message = "<B>[src]</B> farted! It reminds you of your grandmother's queefs."
if(9)
message = "<B>[src]</B> farts a ten second long fart."
if(10)
message = "<B>[src]</B> groans and moans, farting like the world depended on it."
if(11)
message = "<B>[src]</B> breaks wind!"
if(12)
message = "<B>[src]</B> expels intestinal gas through the anus."
if(13)
message = "<B>[src]</B> release an audible discharge of intestinal gas."
if(14)
message = "\red <B>[src]</B> is a farting motherfucker!!!"
if(15)
message = "\red <B>[src]</B> suffers from flatulence!"
if(16)
message = "<B>[src]</B> releases flatus."
if(17)
message = "<B>[src]</B> releases gas generated in his digestive tract, [gtext] stomach and [gtext] intestines. \red<B>It stinks way bad!</B>"
if(18)
message = "<B>[src]</B> farts like your mom used to!"
if(19)
message = "<B>[src]</B> farts. It smells like Soylent Surprise!"
if(20)
message = "<B>[src]</B> farts. It smells like pizza!"
if(21)
message = "<B>[src]</B> farts. It smells like George Melons' perfume!"
if(22)
message = "<B>[src]</B> farts. It smells like atmos in here now!"
if(23)
message = "<B>[src]</B> farts. It smells like medbay in here now!"
if(24)
message = "<B>[src]</B> farts. It smells like the bridge in here now!"
if(25)
message = "<B>[src]</B> farts like a pubby!"
if(26)
message = "<B>[src]</B> farts like a goone!"
if(27)
message = "<B>[src]</B> farts so hard poop came out with it, but dares not look."
if(28)
message = "<B>[src]</B> farts delicately."
if(29)
message = "<B>[src]</B> farts timidly."
if(30)
message = "<B>[src]</B> farts very, very quietly. The stench is OVERPOWERING."
if(31)
message = "<B>[src]</B> farts and says, \"Mmm! Delightful aroma!\""
if(32)
message = "<B>[src]</B> farts and says, \"Mmm! Sexy!\""
if(33)
message = "<B>[src]</B> farts and fondles [gtext] own buttocks."
if(34)
message = "<B>[src]</B> farts and fondles YOUR buttocks."
if(35)
message = "<B>[src]</B> fart in [gtext] own mouth. A shameful [src]."
if(36)
message = "<B>[src]</B> farts out pure plasma! \red<B>FUCK!</B>"
if(37)
message = "<B>[src]</B> farts out pure oxygen. What the fuck did he eat?"
if(38)
message = "<B>[src]</B> breaks wind noisily!"
if(39)
message = "<B>[src]</B> releases gas with the power of the gods! The very station trembles!!"
if(40)
message = "<B>[src] \red f \blue a \black r \red t \blue s \black !</B>"
if(41)
message = "<B>[src] shat [gtext] pants!</B>"
if(42)
message = "<B>[src] shat [gtext] pants!</B> Oh, no, that was just a really nasty fart."
if(43)
message = "<B>[src]</B> is a flatulent whore."
if(44)
message = "<B>[src]</B> likes the smell of his own farts."
if(45)
message = "<B>[src]</B> doesnt wipe after he poops."
if(46)
message = "<B>[src]</B> farts! Now [gtext] ass smells like Uhangay."
if(47)
message = "<B>[src]</B> farts so loud [gtext] buttocks causes a gravity well in the spacetime continuum!"
if(48)
message = "<B>[src]</B> laughs and [gtext] breath smells like a fart."
playsound(src.loc, 'poo2.ogg', 50, 1)
if("piss", "pee", "tinkle")
if(isAprilFools())
if(src.urine < 3)
if(src.gender == MALE)
message = "<B>[src]</B> unzips his pants and waves his dick around."
else
message = "<B>[src]</B> lowers her pants and squats near the floor."
else
if((locate(/obj/machinery/disposal/toilet) in src.loc) && (src.buckled != null) && (src.poo >= 3))
for(var/obj/machinery/disposal/toilet/T in src.loc)
if(src.gender == MALE)
message = "\blue <B>[src]</B> unzips his pants and urinates in the toilet."
else
message = "\blue <B>[src]</B> lowers her pants, sits on the toilet and urinates."
src.urine -= 3
else
var/shat_on_other = 0
for(var/mob/living/M in src.loc)
if(M == src)
continue
message = "\red <B>[src]</B> pisses all over [M]!"
shat_on_other = 1
break
if(!shat_on_other)
message = pick("<B>[src]</B> pisses on the floor.", "<B>[src]</B> pisses all over the floor!", "<B>[src]</B> unzips their pants and pisses all over the floor.")
src.urine -= 3
src.loc.add_piss_floor(src)
if("poo", "poop", "shit", "crap")
if(isAprilFools())
if(src.poo < 3)
message = "<B>[src]</B> grunts for a moment. Nothing happens."
else
if((locate(/obj/machinery/disposal/toilet) in src.loc) && (src.buckled != null) && (src.poo >= 3))
for(var/obj/machinery/disposal/toilet/T in src.loc)
message = pick("<B>[src]</B> unzips their pants and poops in the toilet.", "<B>[src]</B> farts out a steamer.", "\blue THHBBBBBBBBBBBBBT!")
playsound(src.loc, 'poo2.ogg', 50, 1)
src.poo -= 3
else if(istype(src.wear_suit, /obj/item/clothing/suit))
message = pick("<B>[src]</B> shits in their pants!", "<B>[src]</B> poos in their suit!", "\blue THHHHHHBBBBBBBBT!")
playsound(src.loc, 'poo2.ogg', 50, 1)
src.poo -= 3
else if(istype(src.w_uniform, /obj/item/clothing/under))
message = pick("<B>[src]</B> shits in their pants!", "<B>[src]</B> poos in their suit!", "\blue THHHHHHBBBBBBBBT!")
playsound(src.loc, 'poo2.ogg', 50, 1)
src.poo -= 3
else
var/shat_on_other = 0
for(var/mob/living/M in src.loc)
if(M == src)
continue
message = "\red <B>[src]</B> shits all over [M]!"
shat_on_other = 1
break
if(!shat_on_other)
message = pick("<B>[src]</B> shits on the floor.", "<B>[src]</B> poops all over the floor!", "<B>[src]</B> squeezes out a turd.")
src.poo -= 3
src.loc.add_poo_floor(src)
playsound(src.loc, 'poo2.ogg', 50, 1)
else
src << "\blue Unusable emote '[act]'. Say *help for a list."
@@ -680,5 +468,3 @@
else if (m_type & 2)
for (var/mob/O in hearers(src.loc, null))
O.show_message(message, m_type)
else
src << "\blue Unusable emote '[act]'. Say *help for a list."

View File

@@ -119,9 +119,6 @@
var/charges = 0.0
var/nutrition = 400.0//Carbon
var/poo = 0.0 // APRIL FOOLS
var/urine = 0.0
var/overeatduration = 0 // How long this guy is overeating //Carbon
var/paralysis = 0.0
var/stunned = 0.0

Binary file not shown.