mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
Fixed the map/code issues that the body bags caused.
/obj/effects is now /obj/effect. /obj/station_objects is now /obj/structure. Did a bit of minor blob work. The Bay 12 body bags were replaced with closets because having two sets of code that do almost the same thing is silly. Changed back a few of the last jobproc edits as the remove from list before assign was a check to see if the mob was fucked up and if it was remove it so we did not check it again as it would still be fucked up. The medbay/tox monkeys names are random once more. More random name monkeys will help with changeling and clean up the observe/mob menus. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2324 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -123,7 +123,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
client.update_admins(rank)
|
||||
if(iscultist(corpse) && corpse.ajourn==1 && corpse.stat!=2) //checks if it's an astral-journeying cultistm if it is and he's not on an astral journey rune, re-entering won't work
|
||||
var/S=0
|
||||
for(var/obj/effects/rune/R in world)
|
||||
for(var/obj/effect/rune/R in world)
|
||||
if(corpse.loc==R.loc && R.word1 == wordhell && R.word2 == wordtravel && R.word3 == wordself)
|
||||
S=1
|
||||
if(!S)
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
if(!T)
|
||||
creating_blob = 0
|
||||
return
|
||||
var/obj/effects/blob/B = (locate(/obj/effects/blob) in T)
|
||||
var/obj/effect/blob/B = (locate(/obj/effect/blob) in T)
|
||||
if(!B)//We are on a blob
|
||||
usr << "There is no blob here!"
|
||||
creating_blob = 0
|
||||
@@ -103,12 +103,12 @@
|
||||
usr << "Unable to use this blob, find another one."
|
||||
creating_blob = 0
|
||||
return
|
||||
for(var/obj/effects/blob/blob in orange(5))
|
||||
for(var/obj/effect/blob/blob in orange(5))
|
||||
if(blob.blobtype == "Node")
|
||||
usr << "There is another node nearby, move away from it!"
|
||||
creating_blob = 0
|
||||
return
|
||||
for(var/obj/effects/blob/blob in orange(2))
|
||||
for(var/obj/effect/blob/blob in orange(2))
|
||||
if(blob.blobtype == "Factory")
|
||||
usr << "There is a porus blob nearby, move away from it!"
|
||||
creating_blob = 0
|
||||
@@ -129,7 +129,7 @@
|
||||
if(!T)
|
||||
creating_blob = 0
|
||||
return
|
||||
var/obj/effects/blob/B = (locate(/obj/effects/blob) in T)
|
||||
var/obj/effect/blob/B = (locate(/obj/effect/blob) in T)
|
||||
if(!B)
|
||||
usr << "There is no blob here!"
|
||||
creating_blob = 0
|
||||
@@ -138,7 +138,7 @@
|
||||
usr << "Unable to use this blob, find another one."
|
||||
creating_blob = 0
|
||||
return
|
||||
for(var/obj/effects/blob/blob in orange(2))//Not right next to nodes/cores
|
||||
for(var/obj/effect/blob/blob in orange(2))//Not right next to nodes/cores
|
||||
if(blob.blobtype == "Node")
|
||||
usr << "There is a node nearby, move away from it!"
|
||||
creating_blob = 0
|
||||
@@ -168,7 +168,7 @@
|
||||
if(!T)
|
||||
creating_blob = 0
|
||||
return
|
||||
var/obj/effects/blob/B = (locate(/obj/effects/blob) in T)
|
||||
var/obj/effect/blob/B = (locate(/obj/effect/blob) in T)
|
||||
if(!B)
|
||||
usr << "There is no blob here!"
|
||||
creating_blob = 0
|
||||
@@ -192,13 +192,13 @@
|
||||
if(!T)
|
||||
creating_blob = 0
|
||||
return
|
||||
var/obj/effects/blob/B = (locate(/obj/effects/blob) in T)
|
||||
var/obj/effect/blob/B = (locate(/obj/effect/blob) in T)
|
||||
if(B)
|
||||
usr << "There is a blob here!"
|
||||
creating_blob = 0
|
||||
return
|
||||
if(prob(50))
|
||||
new/obj/effects/blob(src.loc)
|
||||
new/obj/effect/blob(src.loc)
|
||||
src << "\blue Success."
|
||||
else
|
||||
src << "\red Creation failed."
|
||||
@@ -240,7 +240,7 @@
|
||||
if(G_found.client)
|
||||
G_found.client.screen.len = null
|
||||
var/mob/living/blob/B = new/mob/living/blob(locate(0,0,1))//temp area also just in case should do this better but tired
|
||||
for(var/obj/effects/blob/core in world)
|
||||
for(var/obj/effect/blob/core in world)
|
||||
if(core)
|
||||
if(core.blobtype == "Core")
|
||||
B.loc = core.loc
|
||||
|
||||
@@ -27,7 +27,7 @@ Doesn't work on other aliens/AI.*/
|
||||
toxloss -= 100
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message(text("\green <B>[src] has planted some alien weeds!</B>"), 1)
|
||||
var/obj/effects/alien/weeds/W = new (loc)
|
||||
var/obj/effect/alien/weeds/W = new (loc)
|
||||
W.Life()
|
||||
return
|
||||
|
||||
@@ -38,7 +38,7 @@ Doesn't work on other aliens/AI.*/
|
||||
|
||||
if(powerc(5))
|
||||
toxloss -= 5
|
||||
for(var/obj/effects/alien/facehugger/F in range(8,src))
|
||||
for(var/obj/effect/alien/facehugger/F in range(8,src))
|
||||
F.call_to(src)
|
||||
emote("roar")
|
||||
return
|
||||
@@ -80,7 +80,7 @@ The first proc defines the acid throw function while the other two work in the g
|
||||
I kind of like the right click only--the window version can get a little confusing. Perhaps something telling the alien they need to right click?
|
||||
/N*/
|
||||
/obj/proc/acid()
|
||||
var/obj/effects/alien/acid/A = new(src.loc)
|
||||
var/obj/effect/alien/acid/A = new(src.loc)
|
||||
A.target = src
|
||||
for(var/mob/M in viewers(src, null))
|
||||
M.show_message(text("\green <B>[src] vomits globs of vile stuff all over [src]!</B>"), 1)
|
||||
@@ -167,12 +167,12 @@ I kind of like the right click only--the window version can get a little confusi
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message(text("<B>[src] scrambles into the ventillation ducts!</B>"), 1)
|
||||
var/list/huggers = list()
|
||||
for(var/obj/effects/alien/facehugger/F in view(3, src))
|
||||
if(istype(F, /obj/effects/alien/facehugger))
|
||||
for(var/obj/effect/alien/facehugger/F in view(3, src))
|
||||
if(istype(F, /obj/effect/alien/facehugger))
|
||||
huggers.Add(F)
|
||||
loc = vent_found
|
||||
|
||||
for(var/obj/effects/alien/facehugger/F in huggers)
|
||||
for(var/obj/effect/alien/facehugger/F in huggers)
|
||||
F.loc = vent_found
|
||||
var/travel_time = get_dist(loc, target_vent.loc)
|
||||
|
||||
@@ -186,7 +186,7 @@ I kind of like the right click only--the window version can get a little confusi
|
||||
target_vent = vent_found //travel back. No additional time required.
|
||||
src << "\red The vent you were heading to appears to be welded."
|
||||
loc = target_vent.loc
|
||||
for(var/obj/effects/alien/facehugger/F in huggers)
|
||||
for(var/obj/effect/alien/facehugger/F in huggers)
|
||||
F.loc = loc
|
||||
|
||||
else
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
O.show_message(text("\red <B>[src] vomits up a thick purple substance and begins to shape it!</B>"), 1)
|
||||
switch(choice)
|
||||
if("resin wall")
|
||||
new /obj/effects/alien/resin/wall(loc)
|
||||
new /obj/effect/alien/resin/wall(loc)
|
||||
if("resin membrane")
|
||||
new /obj/effects/alien/resin/membrane(loc)
|
||||
new /obj/effect/alien/resin/membrane(loc)
|
||||
return
|
||||
@@ -64,7 +64,7 @@
|
||||
handle_environment()
|
||||
|
||||
//If there are alien weeds on the ground then heal if needed or give some toxins
|
||||
if(locate(/obj/effects/alien/weeds) in loc)
|
||||
if(locate(/obj/effect/alien/weeds) in loc)
|
||||
if(health >= 150)
|
||||
toxloss += 5
|
||||
if(toxloss > max_plasma)
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
handle_environment()
|
||||
|
||||
//If there are alien weeds on the ground then heal if needed or give some toxins
|
||||
if(locate(/obj/effects/alien/weeds) in loc)
|
||||
if(locate(/obj/effect/alien/weeds) in loc)
|
||||
if(health >= 125)
|
||||
toxloss += 10
|
||||
if(toxloss > max_plasma)
|
||||
|
||||
@@ -40,9 +40,9 @@
|
||||
now_pushing = 1
|
||||
if (!AM.anchored)
|
||||
var/t = get_dir(src, AM)
|
||||
if (istype(AM, /obj/station_objects/window))
|
||||
if (istype(AM, /obj/structure/window))
|
||||
if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(AM,t))
|
||||
for(var/obj/structure/window/win in get_step(AM,t))
|
||||
now_pushing = 0
|
||||
return
|
||||
step(AM, t)
|
||||
@@ -290,7 +290,7 @@
|
||||
if (emptyHand)
|
||||
head.DblClick()
|
||||
return
|
||||
if (( istype(W, /obj/effects/alien/head) ))
|
||||
if (( istype(W, /obj/effect/alien/head) ))
|
||||
u_equip(W)
|
||||
head = W
|
||||
return
|
||||
@@ -327,7 +327,7 @@
|
||||
if ((M.client && !( M.blinded )))
|
||||
M.show_message(text("\red [] has been hit by []", src, O), 1)
|
||||
if (health > 0)
|
||||
bruteloss += (istype(O, /obj/effects/meteor/small) ? 10 : 25)
|
||||
bruteloss += (istype(O, /obj/effect/meteor/small) ? 10 : 25)
|
||||
fireloss += 30
|
||||
|
||||
updatehealth()
|
||||
@@ -392,9 +392,9 @@
|
||||
M.pulling = t
|
||||
else
|
||||
if (pulling)
|
||||
if (istype(pulling, /obj/station_objects/window))
|
||||
if (istype(pulling, /obj/structure/window))
|
||||
if(pulling:ini_dir == NORTHWEST || pulling:ini_dir == NORTHEAST || pulling:ini_dir == SOUTHWEST || pulling:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
for(var/obj/structure/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
pulling = null
|
||||
if (pulling)
|
||||
step(pulling, get_dir(pulling.loc, T))
|
||||
@@ -418,7 +418,7 @@
|
||||
overlays = null
|
||||
|
||||
if(buckled)
|
||||
if(istype(buckled, /obj/station_objects/stool/bed))
|
||||
if(istype(buckled, /obj/structure/stool/bed))
|
||||
lying = 1
|
||||
else
|
||||
lying = 0
|
||||
@@ -651,7 +651,7 @@
|
||||
if (stunned < power)
|
||||
stunned = power
|
||||
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
|
||||
s.set_up(5, 1, src)
|
||||
s.start()
|
||||
|
||||
@@ -697,7 +697,7 @@
|
||||
if (((M.head && M.head.flags & 4) || ((M.wear_mask && !( M.wear_mask.flags & 32 )) || ((head && head.flags & 4) || (wear_mask && !( wear_mask.flags & 32 ))))))
|
||||
M << "\blue <B>Remove that mask!</B>"
|
||||
return
|
||||
var/obj/effects/equip_e/human/O = new /obj/effects/equip_e/human( )
|
||||
var/obj/effect/equip_e/human/O = new /obj/effect/equip_e/human( )
|
||||
O.source = M
|
||||
O.target = src
|
||||
O.s_loc = M.loc
|
||||
|
||||
@@ -203,7 +203,7 @@
|
||||
else if(istype(loc, /turf/))
|
||||
var/breath_moles = 0
|
||||
/*if(environment.return_pressure() > ONE_ATMOSPHERE)
|
||||
// Loads of air around (pressure effects will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT)
|
||||
// Loads of air around (pressure effect will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT)
|
||||
breath_moles = (ONE_ATMOSPHERE*BREATH_VOLUME/R_IDEAL_GAS_EQUATION*environment.temperature)
|
||||
else*/
|
||||
// Not enough air around, take a percentage of what's there to model this properly
|
||||
@@ -211,8 +211,8 @@
|
||||
|
||||
breath = loc.remove_air(breath_moles)
|
||||
|
||||
// Handle chem smoke effects -- Doohl
|
||||
for(var/obj/effects/chem_smoke/smoke in view(1, src))
|
||||
// Handle chem smoke effect -- Doohl
|
||||
for(var/obj/effect/chem_smoke/smoke in view(1, src))
|
||||
if(smoke.reagents.total_volume)
|
||||
smoke.reagents.reaction(src, INGEST)
|
||||
spawn(5)
|
||||
@@ -293,7 +293,7 @@
|
||||
handle_environment()
|
||||
|
||||
//If there are alien weeds on the ground then heal if needed or give some toxins
|
||||
if(locate(/obj/effects/alien/weeds) in loc)
|
||||
if(locate(/obj/effect/alien/weeds) in loc)
|
||||
if(health >= 100)
|
||||
toxloss += 15
|
||||
if(toxloss > max_plasma)
|
||||
@@ -560,7 +560,7 @@
|
||||
|
||||
check_if_buckled()
|
||||
if (src.buckled)
|
||||
src.lying = (istype(src.buckled, /obj/station_objects/stool/bed) ? 1 : 0)
|
||||
src.lying = (istype(src.buckled, /obj/structure/stool/bed) ? 1 : 0)
|
||||
if(src.lying)
|
||||
src.drop_item()
|
||||
src.density = 1
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
handle_environment()
|
||||
|
||||
//If there are alien weeds on the ground then heal if needed or give some toxins
|
||||
if(locate(/obj/effects/alien/weeds) in loc)
|
||||
if(locate(/obj/effect/alien/weeds) in loc)
|
||||
if(health >= 250)
|
||||
toxloss += 20
|
||||
if(toxloss > max_plasma)
|
||||
@@ -171,5 +171,5 @@
|
||||
toxloss -= 200
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message(text("\green <B>[src] has laid an egg!</B>"), 1)
|
||||
new /obj/effects/alien/egg(loc)
|
||||
new /obj/effect/alien/egg(loc)
|
||||
return
|
||||
|
||||
@@ -243,7 +243,7 @@
|
||||
if ((M.client && !( M.blinded )))
|
||||
M.show_message(text("\red [] has been hit by []", src, O), 1)
|
||||
if (health > 0)
|
||||
bruteloss += (istype(O, /obj/effects/meteor/small) ? 10 : 25)
|
||||
bruteloss += (istype(O, /obj/effect/meteor/small) ? 10 : 25)
|
||||
fireloss += 30
|
||||
|
||||
updatehealth()
|
||||
@@ -467,7 +467,7 @@
|
||||
if ((M.head && M.head.flags & 4) || (M.wear_mask && !( M.wear_mask.flags & 32 )) )
|
||||
M << "\blue <B>Remove that mask!</B>"
|
||||
return
|
||||
var/obj/effects/equip_e/human/O = new /obj/effects/equip_e/human( )
|
||||
var/obj/effect/equip_e/human/O = new /obj/effect/equip_e/human( )
|
||||
O.source = M
|
||||
O.target = src
|
||||
O.s_loc = M.loc
|
||||
|
||||
@@ -184,7 +184,7 @@
|
||||
else if(istype(loc, /turf/))
|
||||
var/breath_moles = 0
|
||||
/*if(environment.return_pressure() > ONE_ATMOSPHERE)
|
||||
// Loads of air around (pressure effects will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT)
|
||||
// Loads of air around (pressure effect will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT)
|
||||
breath_moles = (ONE_ATMOSPHERE*BREATH_VOLUME/R_IDEAL_GAS_EQUATION*environment.temperature)
|
||||
else*/
|
||||
// Not enough air around, take a percentage of what's there to model this properly
|
||||
@@ -192,8 +192,8 @@
|
||||
|
||||
breath = loc.remove_air(breath_moles)
|
||||
|
||||
// Handle chem smoke effects -- Doohl
|
||||
for(var/obj/effects/chem_smoke/smoke in view(1, src))
|
||||
// Handle chem smoke effect -- Doohl
|
||||
for(var/obj/effect/chem_smoke/smoke in view(1, src))
|
||||
if(smoke.reagents.total_volume)
|
||||
smoke.reagents.reaction(src, INGEST)
|
||||
spawn(5)
|
||||
@@ -274,7 +274,7 @@
|
||||
handle_environment()
|
||||
|
||||
//If there are alien weeds on the ground then heal if needed or give some toxins
|
||||
if(locate(/obj/effects/alien/weeds) in loc)
|
||||
if(locate(/obj/effect/alien/weeds) in loc)
|
||||
if(health >= 25)
|
||||
toxloss += 5
|
||||
else
|
||||
@@ -491,7 +491,7 @@
|
||||
|
||||
check_if_buckled()
|
||||
if (buckled)
|
||||
lying = (istype(buckled, /obj/station_objects/stool/bed) ? 1 : 0)
|
||||
lying = (istype(buckled, /obj/structure/stool/bed) ? 1 : 0)
|
||||
if(lying)
|
||||
drop_item()
|
||||
density = 1
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
return
|
||||
|
||||
if(M.client)
|
||||
M.client.mob = new/mob/living/carbon/alien/humanoid/special/snakeman(new/obj/effects/snake_egg(src.loc))
|
||||
M.client.mob = new/mob/living/carbon/alien/humanoid/special/snakeman(new/obj/effect/snake_egg(src.loc))
|
||||
visible_message("[src] injects [M] with an egg.")
|
||||
visible_message("The egg absorbs [M]")
|
||||
M.mutations |= HUSK
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
return
|
||||
|
||||
/obj/effects/snake_egg
|
||||
/obj/effect/snake_egg
|
||||
name = "Egg"
|
||||
icon = 'alien.dmi'
|
||||
icon_state = "egg"
|
||||
|
||||
@@ -62,14 +62,14 @@
|
||||
|
||||
..()
|
||||
|
||||
organStructure = new /obj/effects/organstructure/human(src)
|
||||
organStructure = new /obj/effect/organstructure/human(src)
|
||||
|
||||
/mob/living/carbon/human/cyborg
|
||||
New()
|
||||
..()
|
||||
if(organStructure) //hacky, but it's not supposed to be in for a long time anyway
|
||||
del(organStructure)
|
||||
organStructure = new /obj/effects/organstructure/cyber(src)
|
||||
organStructure = new /obj/effect/organstructure/cyber(src)
|
||||
|
||||
/mob/living/carbon/human/Bump(atom/movable/AM as mob|obj, yes)
|
||||
if ((!( yes ) || now_pushing))
|
||||
@@ -106,9 +106,9 @@
|
||||
|
||||
if (!AM.anchored)
|
||||
var/t = get_dir(src, AM)
|
||||
if (istype(AM, /obj/station_objects/window))
|
||||
if (istype(AM, /obj/structure/window))
|
||||
if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(AM,t))
|
||||
for(var/obj/structure/window/win in get_step(AM,t))
|
||||
now_pushing = 0
|
||||
return
|
||||
step(AM, t)
|
||||
@@ -640,10 +640,10 @@
|
||||
var/dam_zone = pick("chest", "chest", "chest", "head", "groin")
|
||||
if (istype(organs[dam_zone], /datum/organ/external))
|
||||
var/datum/organ/external/temp = organs[dam_zone]
|
||||
if (istype(O, /obj/effects/immovablerod))
|
||||
if (istype(O, /obj/effect/immovablerod))
|
||||
temp.take_damage(101, 0)
|
||||
else
|
||||
temp.take_damage((istype(O, /obj/effects/meteor/small) ? 10 : 25), 30)
|
||||
temp.take_damage((istype(O, /obj/effect/meteor/small) ? 10 : 25), 30)
|
||||
UpdateDamageIcon()
|
||||
updatehealth()
|
||||
return
|
||||
@@ -716,9 +716,9 @@
|
||||
M.pulling = t
|
||||
else
|
||||
if (pulling)
|
||||
if (istype(pulling, /obj/station_objects/window))
|
||||
if (istype(pulling, /obj/structure/window))
|
||||
if(pulling:ini_dir == NORTHWEST || pulling:ini_dir == NORTHEAST || pulling:ini_dir == SOUTHWEST || pulling:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
for(var/obj/structure/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
pulling = null
|
||||
if (pulling)
|
||||
step(pulling, get_dir(pulling.loc, T))
|
||||
@@ -790,7 +790,7 @@
|
||||
update_body()
|
||||
|
||||
if(buckled)
|
||||
if(istype(buckled, /obj/station_objects/stool/bed))
|
||||
if(istype(buckled, /obj/structure/stool/bed))
|
||||
lying = 1
|
||||
else
|
||||
lying = 0
|
||||
@@ -1436,7 +1436,7 @@
|
||||
if (stunned < power)
|
||||
stunned = power
|
||||
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
|
||||
s.set_up(5, 1, src)
|
||||
s.start()
|
||||
|
||||
@@ -1484,7 +1484,7 @@
|
||||
if (((M.head && M.head.flags & 4) || ((M.wear_mask && !( M.wear_mask.flags & 32 )) || ((head && head.flags & 4) || (wear_mask && !( wear_mask.flags & 32 ))))))
|
||||
M << "\blue <B>Remove that mask!</B>"
|
||||
return
|
||||
var/obj/effects/equip_e/human/O = new /obj/effects/equip_e/human( )
|
||||
var/obj/effect/equip_e/human/O = new /obj/effect/equip_e/human( )
|
||||
O.source = M
|
||||
O.target = src
|
||||
O.s_loc = M.loc
|
||||
@@ -1742,7 +1742,7 @@
|
||||
/mob/living/carbon/human/var/co2overloadtime = null
|
||||
/mob/living/carbon/human/var/temperature_resistance = T0C+75
|
||||
|
||||
/obj/effects/equip_e/human/process()
|
||||
/obj/effect/equip_e/human/process()
|
||||
if (item)
|
||||
item.add_fingerprint(source)
|
||||
if (!item)
|
||||
@@ -1942,7 +1942,7 @@ The else statement is for equipping stuff to empty slots.
|
||||
!canremove refers to variable of /obj/item/clothing which either allows or disallows that item to be removed.
|
||||
It can still be worn/put on as normal.
|
||||
*/
|
||||
/obj/effects/equip_e/human/done()
|
||||
/obj/effect/equip_e/human/done()
|
||||
if(!source || !target) return
|
||||
if(source.loc != s_loc) return
|
||||
if(target.loc != t_loc) return
|
||||
@@ -2676,7 +2676,7 @@ It can still be worn/put on as normal.
|
||||
src << browse(null, t1)
|
||||
|
||||
if ((href_list["item"] && !( usr.stat ) && usr.canmove && !( usr.restrained() ) && in_range(src, usr) && ticker)) //if game hasn't started, can't make an equip_e
|
||||
var/obj/effects/equip_e/human/O = new /obj/effects/equip_e/human( )
|
||||
var/obj/effect/equip_e/human/O = new /obj/effect/equip_e/human( )
|
||||
O.source = usr
|
||||
O.target = src
|
||||
O.item = usr.equipped()
|
||||
|
||||
@@ -240,7 +240,7 @@
|
||||
else if(istype(loc, /turf/))
|
||||
var/breath_moles = 0
|
||||
/*if(environment.return_pressure() > ONE_ATMOSPHERE)
|
||||
// Loads of air around (pressure effects will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT)
|
||||
// Loads of air around (pressure effect will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT)
|
||||
breath_moles = (ONE_ATMOSPHERE*BREATH_VOLUME/R_IDEAL_GAS_EQUATION*environment.temperature)
|
||||
else*/
|
||||
// Not enough air around, take a percentage of what's there to model this properly
|
||||
@@ -248,7 +248,7 @@
|
||||
|
||||
breath = loc.remove_air(breath_moles)
|
||||
|
||||
// Handle chem smoke effects -- Doohl
|
||||
// Handle chem smoke effect -- Doohl
|
||||
|
||||
var/block = 0
|
||||
if(wear_mask)
|
||||
@@ -257,7 +257,7 @@
|
||||
|
||||
if(!block)
|
||||
|
||||
for(var/obj/effects/chem_smoke/smoke in view(1, src))
|
||||
for(var/obj/effect/chem_smoke/smoke in view(1, src))
|
||||
if(smoke.reagents.total_volume)
|
||||
smoke.reagents.reaction(src, INGEST)
|
||||
spawn(5)
|
||||
@@ -760,7 +760,7 @@
|
||||
see_invisible = 2
|
||||
|
||||
else if (seer)
|
||||
var/obj/effects/rune/R = locate() in loc
|
||||
var/obj/effect/rune/R = locate() in loc
|
||||
if (istype(R) && R.word1 == wordsee && R.word2 == wordhell && R.word3 == wordjoin)
|
||||
see_invisible = 15
|
||||
else
|
||||
@@ -841,7 +841,7 @@
|
||||
else
|
||||
see_in_dark = 2
|
||||
var/seer = 0
|
||||
for(var/obj/effects/rune/R in world)
|
||||
for(var/obj/effect/rune/R in world)
|
||||
if(loc==R.loc && R.word1==wordsee && R.word2==wordhell && R.word3==wordjoin)
|
||||
seer = 1
|
||||
if(!seer)
|
||||
@@ -983,7 +983,7 @@
|
||||
for(var/mob/living/carbon/M in oviewers(4,src))
|
||||
if(M.virus2)
|
||||
infect_virus2(src,M.virus2)
|
||||
for(var/obj/effects/decal/cleanable/blood/B in view(4, src))
|
||||
for(var/obj/effect/decal/cleanable/blood/B in view(4, src))
|
||||
if(B.virus2)
|
||||
infect_virus2(src,B.virus2)
|
||||
else
|
||||
@@ -996,7 +996,7 @@
|
||||
|
||||
check_if_buckled()
|
||||
if (buckled)
|
||||
lying = istype(buckled, /obj/station_objects/stool/bed) || istype(buckled, /obj/machinery/conveyor)
|
||||
lying = istype(buckled, /obj/structure/stool/bed) || istype(buckled, /obj/machinery/conveyor)
|
||||
if(lying)
|
||||
drop_item()
|
||||
density = 1
|
||||
@@ -1028,7 +1028,7 @@
|
||||
|
||||
/*
|
||||
// Commented out so hunger system won't be such shock
|
||||
// Damage and effects from not eating
|
||||
// Damage and effect from not eating
|
||||
if(nutrition <= 50)
|
||||
if (prob (0.1))
|
||||
src << "\red Your stomach rumbles."
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
if(prob(probab))
|
||||
|
||||
|
||||
if(istype(AM, /obj/station_objects/window) || istype(AM, /obj/station_objects/grille))
|
||||
if(istype(AM, /obj/structure/window) || istype(AM, /obj/structure/grille))
|
||||
if(istype(src, /mob/living/carbon/metroid/adult))
|
||||
if(nutrition <= 600 && !Atkcool)
|
||||
AM.attack_metroid(src)
|
||||
@@ -102,9 +102,9 @@
|
||||
now_pushing = 1
|
||||
if (!( AM.anchored ))
|
||||
var/t = get_dir(src, AM)
|
||||
if (istype(AM, /obj/station_objects/window))
|
||||
if (istype(AM, /obj/structure/window))
|
||||
if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(AM,t))
|
||||
for(var/obj/structure/window/win in get_step(AM,t))
|
||||
now_pushing = 0
|
||||
return
|
||||
step(AM, t)
|
||||
@@ -187,7 +187,7 @@
|
||||
|
||||
// K
|
||||
// ~~~~ N
|
||||
// Metroids aren't effected by extra status effects. DO NOT NERF THIS PLZ THNX - LOVE, DOOHL 3===========D ~~~~ HONK
|
||||
// Metroids aren't effected by extra status effect. DO NOT NERF THIS PLZ THNX - LOVE, DOOHL 3===========D ~~~~ HONK
|
||||
// ~~~~ H
|
||||
//EMP is special and yes they are because emp
|
||||
if(Proj.effects["emp"])
|
||||
@@ -267,7 +267,7 @@
|
||||
if ((M.client && !( M.blinded )))
|
||||
M.show_message(text("\red [] has been hit by []", src, O), 1)
|
||||
if (health > 0)
|
||||
bruteloss += (istype(O, /obj/effects/meteor/small) ? 10 : 25)
|
||||
bruteloss += (istype(O, /obj/effect/meteor/small) ? 10 : 25)
|
||||
fireloss += 30
|
||||
|
||||
updatehealth()
|
||||
|
||||
@@ -203,7 +203,7 @@
|
||||
var/breath_moles = environment.total_moles()*BREATH_PERCENTAGE
|
||||
breath = loc.remove_air(breath_moles)
|
||||
|
||||
// Handle chem smoke effects -- Doohl
|
||||
// Handle chem smoke effect -- Doohl
|
||||
var/block = 0
|
||||
if(wear_mask)
|
||||
if(istype(wear_mask, /obj/item/clothing/mask/gas))
|
||||
@@ -211,7 +211,7 @@
|
||||
|
||||
if(!block)
|
||||
|
||||
for(var/obj/effects/chem_smoke/smoke in view(1, src))
|
||||
for(var/obj/effect/chem_smoke/smoke in view(1, src))
|
||||
if(smoke.reagents.total_volume)
|
||||
smoke.reagents.reaction(src, INGEST)
|
||||
spawn(5)
|
||||
@@ -591,7 +591,7 @@
|
||||
for(var/mob/living/carbon/M in oviewers(4,src))
|
||||
if(M.virus2)
|
||||
infect_virus2(src,M.virus2)
|
||||
for(var/obj/effects/decal/cleanable/blood/B in view(4, src))
|
||||
for(var/obj/effect/decal/cleanable/blood/B in view(4, src))
|
||||
if(B.virus2)
|
||||
infect_virus2(src,B.virus2)
|
||||
else
|
||||
@@ -600,7 +600,7 @@
|
||||
|
||||
check_if_buckled()
|
||||
if (src.buckled)
|
||||
src.lying = istype(src.buckled, /obj/station_objects/stool/bed) || istype(src.buckled, /obj/machinery/conveyor)
|
||||
src.lying = istype(src.buckled, /obj/structure/stool/bed) || istype(src.buckled, /obj/machinery/conveyor)
|
||||
if(src.lying)
|
||||
src.drop_item()
|
||||
src.density = 1
|
||||
|
||||
@@ -64,9 +64,9 @@
|
||||
now_pushing = 1
|
||||
if (!( AM.anchored ))
|
||||
var/t = get_dir(src, AM)
|
||||
if (istype(AM, /obj/station_objects/window))
|
||||
if (istype(AM, /obj/structure/window))
|
||||
if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(AM,t))
|
||||
for(var/obj/structure/window/win in get_step(AM,t))
|
||||
now_pushing = 0
|
||||
return
|
||||
step(AM, t)
|
||||
@@ -81,7 +81,7 @@
|
||||
machine = null
|
||||
src << browse(null, t1)
|
||||
if ((href_list["item"] && !( usr.stat ) && !( usr.restrained() ) && in_range(src, usr) ))
|
||||
var/obj/effects/equip_e/monkey/O = new /obj/effects/equip_e/monkey( )
|
||||
var/obj/effect/equip_e/monkey/O = new /obj/effect/equip_e/monkey( )
|
||||
O.source = usr
|
||||
O.target = src
|
||||
O.item = usr.equipped()
|
||||
@@ -446,7 +446,7 @@
|
||||
if (stunned < power)
|
||||
stunned = power
|
||||
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
|
||||
s.set_up(5, 1, src)
|
||||
s.start()
|
||||
|
||||
@@ -471,7 +471,7 @@
|
||||
|
||||
/mob/living/carbon/monkey/update_clothing()
|
||||
if(buckled)
|
||||
if(istype(buckled, /obj/station_objects/stool/bed))
|
||||
if(istype(buckled, /obj/structure/stool/bed))
|
||||
lying = 1
|
||||
else
|
||||
lying = 0
|
||||
@@ -580,9 +580,9 @@
|
||||
M.pulling = t
|
||||
else
|
||||
if (pulling)
|
||||
if (istype(pulling, /obj/station_objects/window))
|
||||
if (istype(pulling, /obj/structure/window))
|
||||
if(pulling:ini_dir == NORTHWEST || pulling:ini_dir == NORTHEAST || pulling:ini_dir == SOUTHWEST || pulling:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
for(var/obj/structure/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
pulling = null
|
||||
if (pulling)
|
||||
step(pulling, get_dir(pulling.loc, T))
|
||||
@@ -638,7 +638,7 @@
|
||||
if (prob(50))
|
||||
paralysis += 10
|
||||
|
||||
/obj/effects/equip_e/monkey/process()
|
||||
/obj/effect/equip_e/monkey/process()
|
||||
if (item)
|
||||
item.add_fingerprint(source)
|
||||
if (!( item ))
|
||||
@@ -701,7 +701,7 @@
|
||||
return
|
||||
return
|
||||
|
||||
/obj/effects/equip_e/monkey/done()
|
||||
/obj/effect/equip_e/monkey/done()
|
||||
if(!source || !target) return
|
||||
if(source.loc != s_loc) return
|
||||
if(target.loc != t_loc) return
|
||||
|
||||
@@ -314,7 +314,7 @@
|
||||
|
||||
/*
|
||||
// Create speech bubble
|
||||
var/obj/effects/speech_bubble/B = new/obj/effects/speech_bubble
|
||||
var/obj/effect/speech_bubble/B = new/obj/effect/speech_bubble
|
||||
B.icon = 'speechbubble.dmi'
|
||||
B.parent = src
|
||||
B.mouse_opacity = 0
|
||||
@@ -384,7 +384,7 @@
|
||||
|
||||
/*
|
||||
// Create speech bubble
|
||||
var/obj/effects/speech_bubble/B = new/obj/effects/speech_bubble
|
||||
var/obj/effect/speech_bubble/B = new/obj/effect/speech_bubble
|
||||
B.icon = 'speechbubble.dmi'
|
||||
B.parent = src
|
||||
B.mouse_opacity = 0
|
||||
@@ -430,5 +430,5 @@
|
||||
|
||||
|
||||
|
||||
/obj/effects/speech_bubble
|
||||
/obj/effect/speech_bubble
|
||||
var/mob/parent
|
||||
@@ -38,7 +38,7 @@
|
||||
|
||||
if(!safety)//Only used by AIize() to successfully spawn an AI.
|
||||
if (!B)//If there is no player/brain inside.
|
||||
new/obj/station_objects/AIcore/deactivated(loc)//New empty terminal.
|
||||
new/obj/structure/AIcore/deactivated(loc)//New empty terminal.
|
||||
del(src)//Delete AI.
|
||||
return
|
||||
else
|
||||
@@ -64,7 +64,7 @@
|
||||
ticker.mode.remove_revolutionary(src.mind)
|
||||
|
||||
if(client)
|
||||
for(var/obj/effects/rune/rune in world)
|
||||
for(var/obj/effect/rune/rune in world)
|
||||
var/image/blood = image('blood.dmi', loc = rune, icon_state = "floor[rand(1,7)]")
|
||||
blood.override = 1
|
||||
client.images += blood
|
||||
@@ -277,7 +277,7 @@
|
||||
|
||||
/mob/living/silicon/ai/bullet_act(var/obj/item/projectile/Proj)
|
||||
|
||||
// AI bullet code is pretty simple. No other effects really need to be added.
|
||||
// AI bullet code is pretty simple. No other effect really need to be added.
|
||||
if(!Proj.nodamage) bruteloss += Proj.damage
|
||||
|
||||
if(Proj.effects["emp"])
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
stat(null, text("Systems nonfunctional"))
|
||||
|
||||
if (proc_holder_list.len)//Generic list for proc_holder objects.
|
||||
for(var/obj/effects/proc_holder/P in proc_holder_list)
|
||||
for(var/obj/effect/proc_holder/P in proc_holder_list)
|
||||
statpanel("[P.panel]","",P)
|
||||
|
||||
/mob/living/silicon/pai/check_eye(var/mob/user as mob)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
/mob/living/silicon/robot/New(loc,var/syndie = 0)
|
||||
spark_system = new /datum/effects/system/spark_spread()
|
||||
spark_system = new /datum/effect/system/spark_spread()
|
||||
spark_system.set_up(5, 0, src)
|
||||
spark_system.attach(src)
|
||||
spawn (1)
|
||||
@@ -284,9 +284,9 @@
|
||||
now_pushing = 1
|
||||
if (!AM.anchored)
|
||||
var/t = get_dir(src, AM)
|
||||
if (istype(AM, /obj/station_objects/window))
|
||||
if (istype(AM, /obj/structure/window))
|
||||
if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(AM,t))
|
||||
for(var/obj/structure/window/win in get_step(AM,t))
|
||||
now_pushing = 0
|
||||
return
|
||||
step(AM, t)
|
||||
@@ -592,7 +592,7 @@
|
||||
|
||||
flick("noise", flash)
|
||||
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
|
||||
s.set_up(5, 1, src)
|
||||
s.start()
|
||||
|
||||
@@ -927,9 +927,9 @@ Frequency:
|
||||
M.pulling = t
|
||||
else
|
||||
if (pulling)
|
||||
if (istype(pulling, /obj/station_objects/window))
|
||||
if (istype(pulling, /obj/structure/window))
|
||||
if(pulling:ini_dir == NORTHWEST || pulling:ini_dir == NORTHEAST || pulling:ini_dir == SOUTHWEST || pulling:ini_dir == SOUTHEAST)
|
||||
for(var/obj/station_objects/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
for(var/obj/structure/window/win in get_step(pulling,get_dir(pulling.loc, T)))
|
||||
pulling = null
|
||||
if (pulling)
|
||||
step(pulling, get_dir(pulling.loc, T))
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
if (src.mind in ticker.mode:cult)
|
||||
ticker.mode:update_cult_icons_added(src.mind)
|
||||
if(isAI(src))
|
||||
for(var/obj/effects/rune/rune in world)
|
||||
for(var/obj/effect/rune/rune in world)
|
||||
var/image/blood = image('blood.dmi', loc = rune, icon_state = "floor[rand(1,7)]")
|
||||
blood.override = 1
|
||||
client.images += blood
|
||||
|
||||
+11
-11
@@ -1053,13 +1053,13 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
user.db_click(name, using)
|
||||
return
|
||||
|
||||
/obj/effects/equip_e/process()
|
||||
/obj/effect/equip_e/process()
|
||||
return
|
||||
|
||||
/obj/effects/equip_e/proc/done()
|
||||
/obj/effect/equip_e/proc/done()
|
||||
return
|
||||
|
||||
/obj/effects/equip_e/New()
|
||||
/obj/effect/equip_e/New()
|
||||
if (!ticker)
|
||||
del(src)
|
||||
return
|
||||
@@ -1316,7 +1316,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
return 1
|
||||
|
||||
|
||||
/mob/proc/ret_grab(obj/effects/list_container/mobl/L as obj, flag)
|
||||
/mob/proc/ret_grab(obj/effect/list_container/mobl/L as obj, flag)
|
||||
if ((!( istype(l_hand, /obj/item/weapon/grab) ) && !( istype(r_hand, /obj/item/weapon/grab) )))
|
||||
if (!( L ))
|
||||
return null
|
||||
@@ -1324,7 +1324,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
return L.container
|
||||
else
|
||||
if (!( L ))
|
||||
L = new /obj/effects/list_container/mobl( null )
|
||||
L = new /obj/effect/list_container/mobl( null )
|
||||
L.container += src
|
||||
L.master = src
|
||||
if (istype(l_hand, /obj/item/weapon/grab))
|
||||
@@ -1727,7 +1727,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
/mob/proc/can_use_hands()
|
||||
if(handcuffed)
|
||||
return 0
|
||||
if(buckled && istype(buckled, /obj/station_objects/stool/bed)) // buckling does not restrict hands
|
||||
if(buckled && istype(buckled, /obj/structure/stool/bed)) // buckling does not restrict hands
|
||||
return 0
|
||||
return ..()
|
||||
|
||||
@@ -1810,16 +1810,16 @@ Dusting robots does not eject the MMI, so it's a bit more powerful than gib() /N
|
||||
animation.master = src
|
||||
if(ishuman(src))
|
||||
flick("dust-h", animation)
|
||||
new /obj/effects/decal/remains/human(loc)
|
||||
new /obj/effect/decal/remains/human(loc)
|
||||
else if(ismonkey(src))
|
||||
flick("dust-m", animation)
|
||||
new /obj/effects/decal/remains/human(loc)
|
||||
new /obj/effect/decal/remains/human(loc)
|
||||
else if(isalien(src))
|
||||
flick("dust-a", animation)
|
||||
new /obj/effects/decal/remains/xeno(loc)
|
||||
new /obj/effect/decal/remains/xeno(loc)
|
||||
else
|
||||
flick("dust-r", animation)
|
||||
new /obj/effects/decal/remains/robot(loc)
|
||||
new /obj/effect/decal/remains/robot(loc)
|
||||
|
||||
sleep(15)
|
||||
if(isrobot(src)&&src:mmi)//Is a robot and it has an mmi.
|
||||
@@ -1913,7 +1913,7 @@ note dizziness decrements automatically in the mob's Life() proc.
|
||||
|
||||
if (spell_list.len)
|
||||
|
||||
for(var/obj/effects/proc_holder/spell/S in spell_list)
|
||||
for(var/obj/effect/proc_holder/spell/S in spell_list)
|
||||
switch(S.charge_type)
|
||||
if("recharge")
|
||||
statpanel("Spells","[S.charge_counter/10.0]/[S.charge_max/10]",S)
|
||||
|
||||
@@ -192,7 +192,7 @@
|
||||
step(mob, pick(cardinal))
|
||||
else
|
||||
. = ..()
|
||||
for(var/obj/effects/speech_bubble/S in range(1, mob))
|
||||
for(var/obj/effect/speech_bubble/S in range(1, mob))
|
||||
if(S.parent == mob)
|
||||
S.loc = mob.loc
|
||||
moving = 0
|
||||
@@ -297,7 +297,7 @@
|
||||
dense_object++
|
||||
break
|
||||
|
||||
if(!dense_object && (locate(/obj/station_objects/lattice) in oview(1, src)))
|
||||
if(!dense_object && (locate(/obj/structure/lattice) in oview(1, src)))
|
||||
dense_object++
|
||||
|
||||
//Lastly attempt to locate any dense objects we could push off of
|
||||
|
||||
@@ -28,7 +28,7 @@ mob/new_player
|
||||
loc = starting_loc
|
||||
sight |= SEE_TURFS
|
||||
var/list/watch_locations = list()
|
||||
for(var/obj/effects/landmark/landmark in world)
|
||||
for(var/obj/effect/landmark/landmark in world)
|
||||
if(landmark.tag == "landmark*new_player")
|
||||
watch_locations += landmark.loc
|
||||
|
||||
|
||||
@@ -90,21 +90,21 @@
|
||||
ticker.minds += O.mind//Adds them to regular mind list.
|
||||
|
||||
var/obj/loc_landmark
|
||||
for(var/obj/effects/landmark/start/sloc in world)
|
||||
for(var/obj/effect/landmark/start/sloc in world)
|
||||
if (sloc.name != "AI")
|
||||
continue
|
||||
if (locate(/mob) in sloc.loc)
|
||||
continue
|
||||
loc_landmark = sloc
|
||||
if (!loc_landmark)
|
||||
for(var/obj/effects/landmark/tripai in world)
|
||||
for(var/obj/effect/landmark/tripai in world)
|
||||
if (tripai.name == "tripai")
|
||||
if(locate(/mob) in tripai.loc)
|
||||
continue
|
||||
loc_landmark = tripai
|
||||
if (!loc_landmark)
|
||||
O << "Oh god sorry we can't find an unoccupied AI spawn location, so we're spawning you on top of someone."
|
||||
for(var/obj/effects/landmark/start/sloc in world)
|
||||
for(var/obj/effect/landmark/start/sloc in world)
|
||||
if (sloc.name == "AI")
|
||||
loc_landmark = sloc
|
||||
|
||||
|
||||
Reference in New Issue
Block a user