mirror of
https://github.com/yogstation13/Yogstation.git
synced 2025-02-26 09:04:50 +00:00
stop the pills (#18703)
* RedPills Processing Now you have to use START_PROCESSING(SSname, thing) (and STOP_PROCESSING) * Fixes a minor bug.
This commit is contained in:
committed by
AnturK
parent
c480ad71ee
commit
0d6bbbb412
@@ -5,6 +5,9 @@
|
||||
#define MC_AVERAGE_SLOW(average, current) (0.9 * (average) + 0.1 * (current))
|
||||
#define NEW_SS_GLOBAL(varname) if(varname != src){if(istype(varname)){Recover();qdel(varname);}varname = src;}
|
||||
|
||||
#define START_PROCESSING(Processor, Datum) if (!Datum.isprocessing) Datum.isprocessing = 1;Processor.processing += Datum
|
||||
#define STOP_PROCESSING(Processor, Datum) if (Datum.isprocessing) Datum.isprocessing = 0;Processor.processing -= Datum
|
||||
|
||||
//SubSystem flags (Please design any new flags so that the default is off, to make adding flags to subsystems easier)
|
||||
|
||||
//subsystem should fire during pre-game lobby.
|
||||
|
||||
@@ -51,7 +51,9 @@ var/datum/subsystem/machines/SSmachine
|
||||
if(thing:use_power)
|
||||
thing:auto_use_power() //add back the power state
|
||||
else
|
||||
processing.Remove(thing)
|
||||
processing -= thing
|
||||
if (thing)
|
||||
thing.isprocessing = 0
|
||||
if (MC_TICK_CHECK)
|
||||
return
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
var/datum/subsystem/objects/SSobj
|
||||
|
||||
/datum/var/isprocessing = 0
|
||||
/datum/proc/process()
|
||||
set waitfor = 0
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return 0
|
||||
|
||||
/datum/subsystem/objects
|
||||
@@ -50,7 +51,7 @@ var/datum/subsystem/objects/SSobj
|
||||
if(thing)
|
||||
thing.process(wait)
|
||||
else
|
||||
SSobj.processing.Remove(thing)
|
||||
SSobj.processing -= thing
|
||||
if (MC_TICK_CHECK)
|
||||
return
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
/obj/effect/blob/core/New(loc, client/new_overmind = null, new_rate = 2, placed = 0)
|
||||
blob_cores += src
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
poi_list |= src
|
||||
update_icon() //so it atleast appears
|
||||
if(!placed && !overmind)
|
||||
@@ -45,7 +45,7 @@
|
||||
if(overmind)
|
||||
overmind.blob_core = null
|
||||
overmind = null
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
poi_list -= src
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
/obj/effect/blob/node/New(loc, var/h = 100)
|
||||
blob_nodes += src
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
..(loc, h)
|
||||
|
||||
/obj/effect/blob/node/scannerreport()
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
/obj/effect/blob/node/Destroy()
|
||||
blob_nodes -= src
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/effect/blob/node/Life()
|
||||
|
||||
@@ -16,10 +16,10 @@
|
||||
|
||||
/obj/effect/proc_holder/changeling/fleshmend/New()
|
||||
..()
|
||||
SSobj.processing.Add(src)
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/proc_holder/changeling/fleshmend/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/effect/proc_holder/changeling/fleshmend/process()
|
||||
|
||||
@@ -284,7 +284,7 @@
|
||||
..()
|
||||
if(ismob(loc))
|
||||
loc.visible_message("<span class='warning'>[loc.name]\'s flesh rapidly inflates, forming a bloated mass around their body!</span>", "<span class='warning'>We inflate our flesh, creating a spaceproof suit!</span>", "<span class='italics'>You hear organic matter ripping and tearing!</span>")
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/clothing/suit/space/changeling/process()
|
||||
if(ishuman(loc))
|
||||
|
||||
@@ -55,16 +55,16 @@
|
||||
|
||||
/obj/item/clockwork/slab/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
production_time = world.time + SLAB_PRODUCTION_TIME
|
||||
|
||||
/obj/item/clockwork/slab/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/clockwork/slab/process()
|
||||
if(!produces_components)
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
if(production_time > world.time)
|
||||
return
|
||||
@@ -396,10 +396,10 @@
|
||||
|
||||
/obj/item/clothing/glasses/wraith_spectacles/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/clothing/glasses/wraith_spectacles/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/clothing/glasses/wraith_spectacles/process()
|
||||
@@ -770,11 +770,11 @@
|
||||
|
||||
/obj/item/clockwork/tinkerers_daemon/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
clockwork_daemons++
|
||||
|
||||
/obj/item/clockwork/tinkerers_daemon/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
clockwork_daemons--
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -34,13 +34,15 @@
|
||||
if(active)
|
||||
icon_state = active_icon
|
||||
if(fast_process)
|
||||
SSfastprocess.processing |= src
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
else
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
icon_state = inactive_icon
|
||||
SSfastprocess.processing -= src
|
||||
SSobj.processing -= src
|
||||
if(fast_process)
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
else
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/structure/clockwork/powered/proc/total_accessable_power() //how much power we have and can use
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
countdown = new(src)
|
||||
countdown.start()
|
||||
SSshuttle.emergencyNoEscape = TRUE
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
var/area/gate_area = get_area(src)
|
||||
for(var/M in mob_list)
|
||||
if(is_servant_of_ratvar(M) || isobserver(M))
|
||||
@@ -50,7 +50,7 @@
|
||||
SSshuttle.emergency.timer = world.time
|
||||
if(!purpose_fulfilled)
|
||||
priority_announce("Hostile enviroment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority")
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
if(!purpose_fulfilled)
|
||||
var/area/gate_area = get_area(src)
|
||||
for(var/M in mob_list)
|
||||
@@ -190,7 +190,7 @@
|
||||
ratvar_awakens = TRUE
|
||||
for(var/obj/item/clockwork/ratvarian_spear/R in all_clockwork_objects)
|
||||
R.update_force()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
world << "<span class='heavy_brass'><font size=6>\"BAPR NTNVA ZL YVTUG FUNYY FUVAR NPEBFF GUVF CNGURGVP ERNYZ!!\"</font></span>"
|
||||
world << 'sound/effects/ratvar_reveal.ogg'
|
||||
var/image/alert_overlay = image('icons/effects/clockwork_effects.dmi', "ratvar_alert")
|
||||
@@ -204,7 +204,7 @@
|
||||
ratvar_awakens = FALSE
|
||||
for(var/obj/item/clockwork/ratvarian_spear/R in all_clockwork_objects)
|
||||
R.update_force()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
world << "<span class='heavy_brass'><font size=6>\"NO! I will not... be...</font> <font size=5>banished...</font> <font size=4>again...\"</font></span>"
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -147,12 +147,12 @@
|
||||
|
||||
/obj/structure/clockwork/cache/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
clockwork_caches++
|
||||
|
||||
/obj/structure/clockwork/cache/Destroy()
|
||||
clockwork_caches--
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/structure/clockwork/cache/destroyed()
|
||||
@@ -324,10 +324,10 @@
|
||||
|
||||
/obj/structure/clockwork/ocular_warden/New()
|
||||
..()
|
||||
SSfastprocess.processing += src
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
|
||||
/obj/structure/clockwork/ocular_warden/Destroy()
|
||||
SSfastprocess.processing -= src
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
return ..()
|
||||
|
||||
/obj/structure/clockwork/ocular_warden/examine(mob/user)
|
||||
|
||||
@@ -110,11 +110,11 @@ var/list/blacklisted_pylon_turfs = typecacheof(list(
|
||||
var/last_corrupt = 0
|
||||
|
||||
/obj/structure/cult/pylon/New()
|
||||
SSfastprocess.processing |= src
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
..()
|
||||
|
||||
/obj/structure/cult/pylon/Destroy()
|
||||
SSfastprocess.processing.Remove(src)
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
return ..()
|
||||
|
||||
/obj/structure/cult/pylon/process()
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
if(G != gang)
|
||||
G.message_gangtools("WARNING: [gang.name] Gang takeover imminent. Their dominator at [domloc.map_name] must be destroyed!",1,1)
|
||||
else
|
||||
SSmachine.processing -= src
|
||||
STOP_PROCESSING(SSmachine, src)
|
||||
|
||||
/obj/machinery/dominator/take_damage(damage, damage_type = BRUTE, sound_effect = 1)
|
||||
switch(damage_type)
|
||||
@@ -115,7 +115,7 @@
|
||||
cut_overlays()
|
||||
operating = 0
|
||||
stat |= BROKEN
|
||||
SSmachine.processing -= src
|
||||
STOP_PROCESSING(SSmachine, src)
|
||||
|
||||
/obj/machinery/dominator/Destroy()
|
||||
if(!(stat & BROKEN))
|
||||
@@ -125,7 +125,7 @@
|
||||
qdel(spark_system)
|
||||
qdel(countdown)
|
||||
countdown = null
|
||||
SSmachine.processing -= src
|
||||
STOP_PROCESSING(SSmachine, src)
|
||||
return ..()
|
||||
|
||||
/obj/machinery/dominator/emp_act(severity)
|
||||
@@ -199,7 +199,7 @@
|
||||
countdown.start()
|
||||
|
||||
SetLuminosity(3)
|
||||
SSmachine.processing += src
|
||||
START_PROCESSING(SSmachine, src)
|
||||
|
||||
gang.message_gangtools("Hostile takeover in progress: Estimated [time] minutes until victory.[gang.dom_attempts ? "" : " This is your final attempt."]")
|
||||
for(var/datum/gang/G in ticker.mode.gangs)
|
||||
|
||||
@@ -289,7 +289,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple"
|
||||
|
||||
/datum/gang_points/New()
|
||||
next_point_time = world.time + next_point_interval
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/datum/gang_points/process(seconds)
|
||||
var/list/winners = list() //stores the winners if there are any
|
||||
|
||||
@@ -275,7 +275,7 @@
|
||||
|
||||
|
||||
/obj/structure/divine/nexus/New()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/structure/divine/nexus/process()
|
||||
@@ -287,7 +287,7 @@
|
||||
|
||||
|
||||
/obj/structure/divine/nexus/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
|
||||
|
||||
@@ -105,12 +105,12 @@
|
||||
M.SetStunned(0)
|
||||
M.SetWeakened(0)
|
||||
combat_cooldown = 0
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/clothing/suit/armor/abductor/vest/process()
|
||||
combat_cooldown++
|
||||
if(combat_cooldown==initial(combat_cooldown))
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/abductor/proc/AbductorCheck(user)
|
||||
if(isabductor(user))
|
||||
@@ -262,7 +262,7 @@
|
||||
if(cooldown == initial(cooldown))
|
||||
home.Retrieve(imp_in,1)
|
||||
cooldown = 0
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
imp_in << "<span class='warning'>You must wait [30 - cooldown] seconds to use [src] again!</span>"
|
||||
return
|
||||
@@ -271,7 +271,7 @@
|
||||
if(cooldown < initial(cooldown))
|
||||
cooldown++
|
||||
if(cooldown == initial(cooldown))
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/implant/abductor/implant(var/mob/source, var/mob/user)
|
||||
if(..())
|
||||
|
||||
@@ -230,11 +230,11 @@
|
||||
|
||||
/obj/effect/cocoon/abductor/proc/Start()
|
||||
hatch_time = world.time + 600
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/cocoon/abductor/process()
|
||||
if(world.time > hatch_time)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
for(var/mob/M in contents)
|
||||
src.visible_message("<span class='warning'>[src] hatches!</span>")
|
||||
M.loc = src.loc
|
||||
|
||||
@@ -40,7 +40,7 @@ var/bomb_set
|
||||
countdown = new(src)
|
||||
nuke_list += src
|
||||
core = new /obj/item/nuke_core(src)
|
||||
SSobj.processing -= core
|
||||
STOP_PROCESSING(SSobj, core)
|
||||
update_icon()
|
||||
poi_list |= src
|
||||
previous_level = get_security_level()
|
||||
@@ -118,7 +118,7 @@ var/bomb_set
|
||||
user << "<span class='notice'>You pry off [src]'s inner plate. You can see the core's green glow!</span>"
|
||||
deconstruction_state = NUKESTATE_CORE_EXPOSED
|
||||
update_icon()
|
||||
SSobj.processing += core
|
||||
START_PROCESSING(SSobj, core)
|
||||
return
|
||||
if(NUKESTATE_CORE_EXPOSED)
|
||||
if(istype(I, /obj/item/nuke_core_container))
|
||||
@@ -141,7 +141,7 @@ var/bomb_set
|
||||
if(M.use(20))
|
||||
user << "<span class='notice'>You repair [src]'s inner metal plate. The radiation is contained.</span>"
|
||||
deconstruction_state = NUKESTATE_PANEL_REMOVED
|
||||
SSobj.processing -= core
|
||||
STOP_PROCESSING(SSobj, core)
|
||||
update_icon()
|
||||
else
|
||||
user << "<span class='warning'>You need more metal to do that!</span>"
|
||||
@@ -434,7 +434,7 @@ This is here to make the tiles around the station mininuke change when it's arme
|
||||
/obj/item/weapon/disk/nuclear/New()
|
||||
..()
|
||||
poi_list |= src
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/disk/nuclear/process()
|
||||
var/turf/disk_loc = get_turf(src)
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
src.spawn_amt_left = spawn_amt
|
||||
src.desc = desc
|
||||
src.spawn_fast = spawn_fast
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
return
|
||||
|
||||
/obj/effect/rend/process()
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
if(beaker)
|
||||
usr.visible_message("<span class='warning'>[usr] attaches \the [src] to \the [target].</span>", "<span class='notice'>You attach \the [src] to \the [target].</span>")
|
||||
attached = target
|
||||
SSmachine.processing.Add(src)
|
||||
START_PROCESSING(SSmachine, src)
|
||||
update_icon()
|
||||
else
|
||||
usr << "<span class='warning'>There's nothing attached to the IV drip!</span>"
|
||||
|
||||
@@ -124,17 +124,17 @@ Class Procs:
|
||||
..()
|
||||
machines += src
|
||||
if(!speed_process)
|
||||
SSmachine.processing += src
|
||||
START_PROCESSING(SSmachine, src)
|
||||
else
|
||||
SSfastprocess.processing += src
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
power_change()
|
||||
|
||||
/obj/machinery/Destroy()
|
||||
machines.Remove(src)
|
||||
if(!speed_process)
|
||||
SSmachine.processing -= src
|
||||
STOP_PROCESSING(SSmachine, src)
|
||||
else
|
||||
SSfastprocess.processing -= src
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
dropContents()
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/can_attach(obj/mecha/medical/M)
|
||||
@@ -14,19 +14,19 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/attach(obj/mecha/M)
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/process()
|
||||
if(!chassis)
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return 1
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/mechmedbeam/detach()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/sleeper
|
||||
@@ -67,7 +67,7 @@
|
||||
return
|
||||
target.forceMove(src)
|
||||
patient = target
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
update_equip_info()
|
||||
occupant_message("<span class='notice'>[target] successfully loaded into [src]. Life support functions engaged.</span>")
|
||||
chassis.visible_message("<span class='warning'>[chassis] loads [target] into [src].</span>")
|
||||
@@ -91,7 +91,7 @@
|
||||
patient.forceMove(get_turf(src))
|
||||
occupant_message("[patient] ejected. Life support functions disabled.")
|
||||
log_message("[patient] ejected. Life support functions disabled.")
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
patient = null
|
||||
update_equip_info()
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
if(patient)
|
||||
occupant_message("<span class='warning'>Unable to detach [src] - equipment occupied!</span>")
|
||||
return
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/sleeper/get_equip_info()
|
||||
@@ -222,7 +222,7 @@
|
||||
set_ready_state(1)
|
||||
log_message("Deactivated.")
|
||||
occupant_message("[src] deactivated - no power.")
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
var/mob/living/carbon/M = patient
|
||||
if(!M)
|
||||
@@ -270,11 +270,11 @@
|
||||
processed_reagents = new
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/detach()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/critfail()
|
||||
@@ -381,7 +381,7 @@
|
||||
m++
|
||||
if(processed_reagents.len)
|
||||
message += " added to production"
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
occupant_message(message)
|
||||
occupant_message("Reagent processing started.")
|
||||
log_message("Reagent processing started.")
|
||||
@@ -520,7 +520,7 @@
|
||||
if(!processed_reagents.len || reagents.total_volume >= reagents.maximum_volume || !chassis.has_charge(energy_drain))
|
||||
occupant_message("<span class=\"alert\">Reagent processing stopped.</a>")
|
||||
log_message("Reagent processing stopped.")
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
var/amount = synth_speed / processed_reagents.len
|
||||
for(var/reagent in processed_reagents)
|
||||
@@ -559,6 +559,6 @@
|
||||
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/medical/mechmedbeam/detach()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
medigun.LoseTarget()
|
||||
return ..()
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
var/scanning = 0
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/mining_scanner/New()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/mining_scanner/attach(obj/mecha/M)
|
||||
..()
|
||||
@@ -130,7 +130,7 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/mining_scanner/process()
|
||||
if(!loc)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
qdel(src)
|
||||
if(scanning)
|
||||
return
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
selectable = 0
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/repair_droid/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
if(chassis)
|
||||
chassis.overlays -= droid_overlay
|
||||
return ..()
|
||||
@@ -207,7 +207,7 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/repair_droid/detach()
|
||||
chassis.overlays -= droid_overlay
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/repair_droid/get_equip_info()
|
||||
@@ -220,12 +220,12 @@
|
||||
if(href_list["toggle_repairs"])
|
||||
chassis.overlays -= droid_overlay
|
||||
if(equip_ready)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
droid_overlay = new(src.icon, icon_state = "repair_droid_a")
|
||||
log_message("Activated.")
|
||||
set_ready_state(0)
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
droid_overlay = new(src.icon, icon_state = "repair_droid")
|
||||
log_message("Deactivated.")
|
||||
set_ready_state(1)
|
||||
@@ -235,7 +235,7 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/repair_droid/process()
|
||||
if(!chassis)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
return
|
||||
var/h_boost = health_boost
|
||||
@@ -253,10 +253,10 @@
|
||||
repaired = 1
|
||||
if(repaired)
|
||||
if(!chassis.use_power(energy_drain))
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
else //no repair needed, we turn off
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
chassis.overlays -= droid_overlay
|
||||
droid_overlay = new(src.icon, icon_state = "repair_droid")
|
||||
@@ -279,11 +279,11 @@
|
||||
selectable = 0
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/tesla_energy_relay/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/tesla_energy_relay/detach()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
return
|
||||
|
||||
@@ -309,11 +309,11 @@
|
||||
..()
|
||||
if(href_list["toggle_relay"])
|
||||
if(equip_ready) //inactive
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
set_ready_state(0)
|
||||
log_message("Activated.")
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
log_message("Deactivated.")
|
||||
|
||||
@@ -324,12 +324,12 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/tesla_energy_relay/process()
|
||||
if(!chassis || chassis.internal_damage & MECHA_INT_SHORT_CIRCUIT)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
return
|
||||
var/cur_charge = chassis.get_charge()
|
||||
if(isnull(cur_charge) || !chassis.cell)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
occupant_message("No powercell detected.")
|
||||
return
|
||||
@@ -370,7 +370,7 @@
|
||||
generator_init()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/proc/generator_init()
|
||||
@@ -378,7 +378,7 @@
|
||||
fuel.amount = 0
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/detach()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/Topic(href, href_list)
|
||||
@@ -386,11 +386,11 @@
|
||||
if(href_list["toggle"])
|
||||
if(equip_ready) //inactive
|
||||
set_ready_state(0)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
log_message("Activated.")
|
||||
else
|
||||
set_ready_state(1)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
log_message("Deactivated.")
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/get_equip_info()
|
||||
@@ -444,11 +444,11 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/process()
|
||||
if(!chassis)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
set_ready_state(1)
|
||||
return
|
||||
if(fuel.amount<=0)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
log_message("Deactivated - no fuel.")
|
||||
set_ready_state(1)
|
||||
return
|
||||
@@ -457,7 +457,7 @@
|
||||
set_ready_state(1)
|
||||
occupant_message("No powercell detected.")
|
||||
log_message("Deactivated.")
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
var/use_fuel = fuel_per_cycle_idle
|
||||
if(cur_charge < chassis.cell.maxcharge)
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
smoke_system.set_up(3, src)
|
||||
smoke_system.attach(src)
|
||||
add_cell()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
poi_list |= src
|
||||
log_message("[src.name] created.")
|
||||
mechas_list += src //global mech list
|
||||
@@ -176,7 +176,7 @@
|
||||
qdel(cell)
|
||||
if(internal_tank)
|
||||
qdel(internal_tank)
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
poi_list.Remove(src)
|
||||
equipment.Cut()
|
||||
cell = null
|
||||
|
||||
@@ -29,16 +29,16 @@
|
||||
/obj/effect/particle_effect/foam/New(loc)
|
||||
..(loc)
|
||||
create_reagents(1000) //limited by the size of the reagent holder anyway.
|
||||
SSfastprocess.processing |= src
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
playsound(src, 'sound/effects/bubbles2.ogg', 80, 1, -3)
|
||||
|
||||
/obj/effect/particle_effect/foam/Destroy()
|
||||
SSfastprocess.processing.Remove(src)
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/effect/particle_effect/foam/proc/kill_foam()
|
||||
SSfastprocess.processing.Remove(src)
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
if(metal)
|
||||
var/obj/structure/foamedmetal/M = new(src.loc)
|
||||
M.metal = metal
|
||||
|
||||
@@ -30,15 +30,15 @@
|
||||
/obj/effect/particle_effect/smoke/New()
|
||||
..()
|
||||
create_reagents(500)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/effect/particle_effect/smoke/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/effect/particle_effect/smoke/proc/kill_smoke()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
spawn(0)
|
||||
fade_out()
|
||||
spawn(10)
|
||||
|
||||
@@ -27,10 +27,10 @@
|
||||
/obj/effect/forcefield/mime/New()
|
||||
..()
|
||||
last_process = world.time
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/forcefield/mime/process()
|
||||
timeleft -= (world.time - last_process)
|
||||
if(timeleft <= 0)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
qdel(src)
|
||||
@@ -78,7 +78,7 @@
|
||||
/obj/effect/spider/eggcluster/New()
|
||||
pixel_x = rand(3,-3)
|
||||
pixel_y = rand(3,-3)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/spider/eggcluster/process()
|
||||
amount_grown += rand(0,2)
|
||||
@@ -112,7 +112,7 @@
|
||||
/obj/effect/spider/spiderling/New()
|
||||
pixel_x = rand(6,-6)
|
||||
pixel_y = rand(6,-6)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/spider/spiderling/Bump(atom/user)
|
||||
if(istype(user, /obj/structure/table))
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
/obj/item/organ/body_egg/Insert(var/mob/living/carbon/M, special = 0)
|
||||
..()
|
||||
owner.status_flags |= XENO_HOST
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
owner.med_hud_set_status()
|
||||
spawn(0)
|
||||
AddInfectionImages(owner)
|
||||
|
||||
/obj/item/organ/body_egg/Remove(var/mob/living/carbon/M, special = 0)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
if(owner)
|
||||
owner.status_flags &= ~(XENO_HOST)
|
||||
owner.med_hud_set_status()
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
usr.visible_message(
|
||||
"<span class='danger'>[usr] lights the [name].</span>")
|
||||
SetLuminosity(CANDLE_LUMINOSITY)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
/obj/item/device/camera_bug/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/camera_bug/Destroy()
|
||||
get_cameras()
|
||||
|
||||
@@ -207,7 +207,7 @@ obj/item/device/flashlight/lamp/bananalamp
|
||||
turn_off()
|
||||
if(!fuel)
|
||||
icon_state = "[initial(icon_state)]-empty"
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/flashlight/flare/proc/turn_off()
|
||||
on = 0
|
||||
@@ -241,7 +241,7 @@ obj/item/device/flashlight/lamp/bananalamp
|
||||
user.visible_message("<span class='notice'>[user] lights \the [src].</span>", "<span class='notice'>You light \the [src]!</span>")
|
||||
force = on_damage
|
||||
damtype = "fire"
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/flashlight/flare/is_hot()
|
||||
return on * heat
|
||||
@@ -285,10 +285,10 @@ obj/item/device/flashlight/lamp/bananalamp
|
||||
|
||||
/obj/item/device/flashlight/emp/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/flashlight/emp/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/device/flashlight/emp/process()
|
||||
|
||||
@@ -18,10 +18,10 @@
|
||||
|
||||
/obj/item/device/geiger_counter/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/geiger_counter/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/device/geiger_counter/process()
|
||||
|
||||
@@ -154,7 +154,7 @@
|
||||
if(energy <= max_energy)
|
||||
if(!recharging)
|
||||
recharging = 1
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
if(energy <= 0)
|
||||
user << "<span class='warning'>[src]'s battery is overused, it needs time to recharge!</span>"
|
||||
recharge_locked = 1
|
||||
|
||||
@@ -37,10 +37,10 @@
|
||||
|
||||
/obj/item/device/multitool/ai_detect/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/multitool/ai_detect/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/device/multitool/ai_detect/process()
|
||||
|
||||
@@ -34,20 +34,20 @@
|
||||
if(DISCONNECTED)
|
||||
attached = null
|
||||
if(mode == OPERATING)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
anchored = 0
|
||||
|
||||
if(CLAMPED_OFF)
|
||||
if(!attached)
|
||||
return
|
||||
if(mode == OPERATING)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
anchored = 1
|
||||
|
||||
if(OPERATING)
|
||||
if(!attached)
|
||||
return
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
anchored = 1
|
||||
|
||||
mode = value
|
||||
@@ -140,6 +140,6 @@
|
||||
playsound(src, 'sound/effects/screech.ogg', 100, 1, 1)
|
||||
|
||||
if(power_drained >= max_power)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
explosion(src.loc, 4,8,16,32)
|
||||
qdel(src)
|
||||
|
||||
@@ -13,10 +13,10 @@
|
||||
|
||||
/obj/item/device/radio/intercom/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/radio/intercom/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/device/radio/intercom/attack_ai(mob/user)
|
||||
|
||||
@@ -25,7 +25,7 @@ MASS SPECTROMETER
|
||||
icon_state = copytext(icon_state, 1, length(icon_state))+"[on]"
|
||||
|
||||
if(on)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/t_scanner/proc/flick_sonar(obj/pipe)
|
||||
var/image/I = image('icons/effects/effects.dmi', pipe, "blip", pipe.layer+1)
|
||||
@@ -38,7 +38,7 @@ MASS SPECTROMETER
|
||||
|
||||
/obj/item/device/t_scanner/process()
|
||||
if(!on)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return null
|
||||
scan()
|
||||
|
||||
|
||||
@@ -194,13 +194,13 @@ effective or pretty fucking useless.
|
||||
return
|
||||
user << "<span class='notice'>You activate [src].</span>"
|
||||
src.user = user
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
old_alpha = user.alpha
|
||||
on = 1
|
||||
|
||||
/obj/item/device/shadowcloak/proc/Deactivate()
|
||||
user << "<span class='notice'>You deactivate [src].</span>"
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
if(user)
|
||||
user.alpha = old_alpha
|
||||
on = 0
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
/obj/item/nuke_core/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/nuke_core/attackby(obj/item/nuke_core_container/container, mob/user)
|
||||
if(istype(container))
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
/obj/item/nuke_core_container/proc/seal()
|
||||
if(istype(core))
|
||||
SSobj.processing -= core
|
||||
STOP_PROCESSING(SSobj, core)
|
||||
icon_state = "core_container_sealed"
|
||||
playsound(loc, 'sound/items/Deconstruct.ogg', 60, 1)
|
||||
if(ismob(loc))
|
||||
|
||||
@@ -280,10 +280,10 @@
|
||||
on = !on
|
||||
if(on)
|
||||
cyborg << "<span class='notice'>You activate the self-repair module.</span>"
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
cyborg << "<span class='notice'>You deactivate the self-repair module.</span>"
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
|
||||
/obj/item/borg/upgrade/selfrepair/update_icon()
|
||||
@@ -296,7 +296,7 @@
|
||||
icon_state = "cyborg_upgrade5"
|
||||
|
||||
/obj/item/borg/upgrade/selfrepair/proc/deactivate()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
on = FALSE
|
||||
update_icon()
|
||||
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
update_icon()
|
||||
|
||||
desc = initial(desc) + "<br><span class='info'>It appears to contain [target.name].</span>"
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/chrono_field/Destroy()
|
||||
if(gun && gun.field_check(src))
|
||||
|
||||
@@ -50,7 +50,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
name = "lit match"
|
||||
desc = "A match. This one is lit."
|
||||
attack_verb = list("burnt","singed")
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
return
|
||||
|
||||
@@ -64,7 +64,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
name = "burnt match"
|
||||
desc = "A match. This one has seen better days."
|
||||
attack_verb = null
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/match/dropped(mob/user)
|
||||
matchburnout()
|
||||
@@ -130,7 +130,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
/obj/item/clothing/mask/cigarette/Destroy()
|
||||
if(reagents)
|
||||
qdel(reagents)
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
. = ..()
|
||||
|
||||
/obj/item/clothing/mask/cigarette/attackby(obj/item/weapon/W, mob/user, params)
|
||||
@@ -214,7 +214,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
if(flavor_text)
|
||||
var/turf/T = get_turf(src)
|
||||
T.visible_message(flavor_text)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
//can't think of any other way to update the overlays :<
|
||||
if(ismob(loc))
|
||||
@@ -385,7 +385,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
/obj/item/clothing/mask/cigarette/pipe/Destroy()
|
||||
if(reagents)
|
||||
qdel(reagents)
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
. = ..()
|
||||
|
||||
/obj/item/clothing/mask/cigarette/pipe/process()
|
||||
@@ -402,7 +402,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
M.update_inv_wear_mask()
|
||||
packeditem = 0
|
||||
name = "empty [initial(name)]"
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
open_flame()
|
||||
if(reagents && reagents.total_volume) // check if it has any reagents at all
|
||||
@@ -443,7 +443,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
lit = 0
|
||||
icon_state = icon_off
|
||||
item_state = icon_off
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
if(!lit && smoketime > 0)
|
||||
user << "<span class='notice'>You empty [src] onto [location].</span>"
|
||||
@@ -512,7 +512,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
user.visible_message("<span class='warning'>After a few attempts, [user] manages to light [src] - they however burn their finger in the process.</span>", "<span class='warning'>You burn yourself while lighting the lighter!</span>")
|
||||
|
||||
user.AddLuminosity(1)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
lit = 0
|
||||
update_icon()
|
||||
@@ -524,7 +524,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
else
|
||||
user.visible_message("[user] quietly shuts off [src].", "<span class='notice'>You quietly shut off [src].")
|
||||
user.AddLuminosity(-1)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
else
|
||||
return ..()
|
||||
return
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
/obj/item/weapon/flamethrower/process()
|
||||
if(!lit)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return null
|
||||
var/turf/location = loc
|
||||
if(istype(location, /mob/))
|
||||
@@ -149,7 +149,7 @@
|
||||
return
|
||||
lit = !lit
|
||||
if(lit)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
if(!warned_admins)
|
||||
message_admins("[key_name_admin(usr)]<A HREF='?_src_=holder;adminmoreinfo=\ref[usr]'>?</A> (<A HREF='?_src_=holder;adminplayerobservefollow=\ref[usr]'>FLW</A>) has lit a flamethrower.")
|
||||
warned_admins = 1
|
||||
|
||||
@@ -351,10 +351,10 @@
|
||||
|
||||
/obj/item/weapon/nullrod/tribal_knife/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/nullrod/tribal_knife/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/nullrod/tribal_knife/process()
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
/obj/item/weapon/melee/supermatter_sword/New()
|
||||
..()
|
||||
shard = new /obj/machinery/power/supermatter_shard(src)
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
visible_message("<span class='warning'>\The [src] appears, balanced ever so perfectly on its hilt. This isn't ominous at all.</span>")
|
||||
|
||||
/obj/item/weapon/melee/supermatter_sword/process()
|
||||
|
||||
@@ -15,10 +15,10 @@
|
||||
|
||||
/obj/item/weapon/twohanded/singularityhammer/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/twohanded/singularityhammer/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/twohanded/singularityhammer/process()
|
||||
|
||||
@@ -120,7 +120,7 @@
|
||||
|
||||
/obj/item/weapon/tank/jetpack/suit/New()
|
||||
..()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
air_contents = null
|
||||
|
||||
/obj/item/weapon/tank/jetpack/suit/cycle(mob/user)
|
||||
@@ -136,13 +136,13 @@
|
||||
var/mob/living/carbon/human/H = loc.loc
|
||||
tank = H.s_store
|
||||
air_contents = tank.air_contents
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/tank/jetpack/suit/turn_off()
|
||||
tank = null
|
||||
air_contents = null
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/tank/jetpack/suit/process()
|
||||
|
||||
@@ -53,13 +53,13 @@
|
||||
air_contents = new(volume) //liters
|
||||
air_contents.temperature = T20C
|
||||
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/tank/Destroy()
|
||||
if(air_contents)
|
||||
qdel(air_contents)
|
||||
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/tank/examine(mob/user)
|
||||
|
||||
@@ -413,13 +413,13 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/chemtank/proc/turn_on()
|
||||
on = 1
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
if(ismob(loc))
|
||||
loc << "<span class='notice'>[src] turns on.</span>"
|
||||
|
||||
/obj/item/weapon/reagent_containers/chemtank/proc/turn_off()
|
||||
on = 0
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
if(ismob(loc))
|
||||
loc << "<span class='notice'>[src] turns off.</span>"
|
||||
|
||||
|
||||
@@ -295,7 +295,7 @@
|
||||
damtype = "brute"
|
||||
update_icon()
|
||||
if(!can_off_process)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
//Welders left on now use up fuel, but lets not have them run out quite that fast
|
||||
if(1)
|
||||
@@ -382,7 +382,7 @@
|
||||
damtype = "fire"
|
||||
hitsound = 'sound/items/welder.ogg'
|
||||
update_icon()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
user << "<span class='warning'>You need more fuel!</span>"
|
||||
welding = 0
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
/obj/Destroy()
|
||||
if(!istype(src, /obj/machinery))
|
||||
SSobj.processing.Remove(src) // TODO: Have a processing bitflag to reduce on unnecessary loops through the processing lists
|
||||
STOP_PROCESSING(SSobj, src) // TODO: Have a processing bitflag to reduce on unnecessary loops through the processing lists
|
||||
SStgui.close_uis(src)
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
..()
|
||||
icon = L.icon
|
||||
icon_state = L.icon_state
|
||||
@@ -63,7 +63,7 @@
|
||||
M.Stun(1) //So they can't do anything while petrified
|
||||
if(timer <= 0)
|
||||
dump_contents()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/closet/statue/dump_contents()
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
|
||||
/obj/structure/transit_tube/station/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/structure/transit_tube/station/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
// Stations which will send the tube in the opposite direction after their stop.
|
||||
|
||||
@@ -126,17 +126,17 @@
|
||||
clockwork_construction_value++
|
||||
|
||||
/turf/open/floor/clockwork/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
clockwork_construction_value--
|
||||
return ..()
|
||||
|
||||
/turf/open/floor/clockwork/Entered(atom/movable/AM)
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/turf/open/floor/clockwork/process()
|
||||
if(!healservants())
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/turf/open/floor/clockwork/proc/healservants()
|
||||
for(var/mob/living/L in src)
|
||||
|
||||
@@ -224,12 +224,12 @@
|
||||
burn_stuff()
|
||||
if(!processing)
|
||||
processing = 1
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/turf/open/floor/plating/lava/process()
|
||||
if(!burn_stuff())
|
||||
processing = 0
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/turf/open/floor/plating/lava/make_plating()
|
||||
return
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
/obj/item/device/assembly/health/toggle_secure()
|
||||
secured = !secured
|
||||
if(secured && scanning)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
scanning = 0
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
return secured
|
||||
|
||||
@@ -67,9 +67,9 @@
|
||||
return 0
|
||||
scanning = !scanning
|
||||
if(scanning)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
|
||||
/obj/item/device/assembly/health/interact(mob/user as mob)//TODO: Change this to the wires thingy
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
/obj/item/device/assembly/infra/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/assembly/infra/Destroy()
|
||||
if(first)
|
||||
@@ -33,12 +33,12 @@
|
||||
/obj/item/device/assembly/infra/toggle_secure()
|
||||
secured = !secured
|
||||
if(secured)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
on = 0
|
||||
if(first)
|
||||
qdel(first)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
return secured
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
/obj/item/device/assembly/prox_sensor/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
oldloc = loc
|
||||
|
||||
/obj/item/device/assembly/prox_sensor/describe()
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
/obj/item/device/assembly/timer/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/device/assembly/timer/describe()
|
||||
if(timing)
|
||||
@@ -33,10 +33,10 @@
|
||||
/obj/item/device/assembly/timer/toggle_secure()
|
||||
secured = !secured
|
||||
if(secured)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
timing = 0
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
return secured
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
var/area/mob_area = get_area(M)
|
||||
if(istype(mob_area, /area/ctf))
|
||||
M << "<span class='userdanger'>\The [src] has been returned to base!</span>"
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/twohanded/required/ctf/attack_hand(mob/living/user)
|
||||
if (!user)
|
||||
@@ -59,12 +59,12 @@
|
||||
var/area/mob_area = get_area(M)
|
||||
if(istype(mob_area, /area/ctf))
|
||||
M << "<span class='userdanger'>\The [src] has been taken!</span>"
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/twohanded/required/ctf/dropped(mob/user)
|
||||
..()
|
||||
reset_cooldown = world.time + 200 //20 seconds
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
for(var/mob/M in player_list)
|
||||
var/area/mob_area = get_area(M)
|
||||
if(istype(mob_area, /area/ctf))
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
var/braindead_check = 0
|
||||
|
||||
/obj/structure/academy_wizard_spawner/New()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/structure/academy_wizard_spawner/process()
|
||||
if(next_check < world.time)
|
||||
@@ -131,7 +131,7 @@
|
||||
if(health<0)
|
||||
visible_message("<span class='warning'>[src] breaks down!</span>")
|
||||
icon_state = "forge_off"
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
broken = 1
|
||||
|
||||
/obj/structure/academy_wizard_spawner/attackby(obj/item/weapon/W, mob/living/user, params)
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
mode = !mode
|
||||
|
||||
if(mode)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
vision_flags = 0
|
||||
darkness_view = 2
|
||||
invis_view = SEE_INVISIBLE_LIVING
|
||||
user << "<span class='notice'>You toggle the goggles' scanning mode to \[T-Ray].</span>"
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
vision_flags = SEE_TURFS
|
||||
darkness_view = 1
|
||||
invis_view = SEE_INVISIBLE_MINIMUM
|
||||
@@ -121,10 +121,10 @@
|
||||
on = !on
|
||||
|
||||
if(on)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
user << "<span class='notice'>You turn the goggles on.</span>"
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
user << "<span class='notice'>You turn the goggles off.</span>"
|
||||
invis_update()
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
throwforce = 15
|
||||
damtype = BURN
|
||||
hitsound = 'sound/items/Welder.ogg'
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/clothing/head/hardhat/cakehat/turn_off()
|
||||
..()
|
||||
@@ -80,7 +80,7 @@
|
||||
throwforce = 0
|
||||
damtype = BRUTE
|
||||
hitsound = 'sound/weapons/tap.ogg'
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/clothing/head/hardhat/cakehat/is_hot()
|
||||
return on * heat
|
||||
|
||||
@@ -185,7 +185,7 @@
|
||||
else
|
||||
new_camera(user)
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/clothing/suit/space/chronos/proc/activate()
|
||||
if(!activating && !activated && !teleporting)
|
||||
@@ -206,7 +206,7 @@
|
||||
user << "\[ <span style='color: #00ff00;'>ok</span> \] Starting ui display driver"
|
||||
user << "\[ <span style='color: #00ff00;'>ok</span> \] Initializing chronowalk4-view"
|
||||
new_camera(user)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
activated = 1
|
||||
else
|
||||
user << "\[ <span style='color: #ff0000;'>fail</span> \] Mounting /dev/helmet"
|
||||
|
||||
@@ -492,7 +492,7 @@
|
||||
owner.visible_message("<span class='danger'>[owner]'s shields deflect [attack_text] in a shower of sparks!</span>")
|
||||
current_charges--
|
||||
recharge_cooldown = world.time + recharge_delay
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
if(current_charges <= 0)
|
||||
owner.visible_message("[owner]'s shield overloads!")
|
||||
shield_state = "broken"
|
||||
@@ -502,7 +502,7 @@
|
||||
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/shielded/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/shielded/process()
|
||||
@@ -511,7 +511,7 @@
|
||||
playsound(loc, 'sound/magic/Charge.ogg', 50, 1)
|
||||
if(current_charges == max_charges)
|
||||
playsound(loc, 'sound/machines/ding.ogg', 50, 1)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
shield_state = "[shield_on]"
|
||||
if(istype(loc, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/C = loc
|
||||
|
||||
@@ -24,13 +24,13 @@
|
||||
|
||||
/obj/effect/countdown/proc/start()
|
||||
if(!started)
|
||||
SSfastprocess.processing |= src
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
started = TRUE
|
||||
|
||||
/obj/effect/countdown/proc/stop()
|
||||
if(started)
|
||||
overlays.Cut()
|
||||
SSfastprocess.processing -= src
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
started = FALSE
|
||||
|
||||
/obj/effect/countdown/proc/get_value()
|
||||
@@ -59,7 +59,7 @@
|
||||
|
||||
/obj/effect/countdown/Destroy()
|
||||
attached_to = null
|
||||
SSfastprocess.processing -= src
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
. = ..()
|
||||
|
||||
/obj/effect/countdown/syndicatebomb
|
||||
|
||||
@@ -437,7 +437,7 @@
|
||||
|
||||
/obj/effect/spacevine_controller/New(loc, list/muts, mttv, spreading)
|
||||
spawn_spacevine_piece(loc, , muts)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
init_subtypes(/datum/spacevine_mutation/, mutations_list)
|
||||
if(mttv != null)
|
||||
mutativness = mttv / 10
|
||||
@@ -455,7 +455,7 @@
|
||||
return
|
||||
|
||||
/obj/effect/spacevine_controller/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/effect/spacevine_controller/proc/spawn_spacevine_piece(turf/location, obj/effect/spacevine/parent, list/muts)
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
if(!(user in color_altered_mobs))
|
||||
color_altered_mobs += user
|
||||
user.color = "#00FF00"
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/greentext/dropped(mob/living/user as mob)
|
||||
@@ -54,7 +54,7 @@
|
||||
user.color = "#FF0000" //ya blew it
|
||||
last_holder = null
|
||||
new_holder = null
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/greentext/process()
|
||||
|
||||
@@ -132,7 +132,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
flood_turfs += get_turf(src.loc)
|
||||
if(target.client) target.client.images |= flood_images
|
||||
next_expand = world.time + FAKE_FLOOD_EXPAND_TIME
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/hallucination/fake_flood/process()
|
||||
if(next_expand <= world.time)
|
||||
@@ -153,7 +153,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
target.client.images |= flood_images
|
||||
|
||||
/obj/effect/hallucination/fake_flood/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
qdel(flood_turfs)
|
||||
flood_turfs = list()
|
||||
if(target.client)
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
if(open && !bomb_defused)
|
||||
audible_message("<span class='warning'>\icon[src] *beep*</span>")
|
||||
bomb_active = TRUE
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
|
||||
/obj/item/pizzabox/attack_hand(mob/user)
|
||||
@@ -196,7 +196,7 @@
|
||||
return
|
||||
|
||||
/obj/item/pizzabox/proc/unprocess()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
qdel(wires)
|
||||
wires = null
|
||||
update_icon()
|
||||
|
||||
@@ -39,11 +39,11 @@
|
||||
|
||||
/obj/structure/beebox/New()
|
||||
..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/structure/beebox/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
bees.Cut()
|
||||
bees = null
|
||||
honeycombs.Cut()
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
..()
|
||||
if( istype(src.loc, /mob) )
|
||||
held_mob = src.loc
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/ghost_chili/process()
|
||||
if(held_mob && src.loc == held_mob)
|
||||
|
||||
@@ -488,14 +488,14 @@
|
||||
/obj/item/weapon/melee/ghost_sword/New()
|
||||
..()
|
||||
spirits = list()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
poi_list |= src
|
||||
|
||||
/obj/item/weapon/melee/ghost_sword/Destroy()
|
||||
for(var/mob/dead/observer/G in spirits)
|
||||
G.invisibility = initial(G.invisibility)
|
||||
spirits.Cut()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
poi_list -= src
|
||||
. = ..()
|
||||
|
||||
|
||||
@@ -276,7 +276,7 @@ var/global/chicken_count = 0
|
||||
E.pixel_y = rand(-6,6)
|
||||
if(eggsFertile)
|
||||
if(chicken_count < MAX_CHICKENS && prob(25))
|
||||
SSobj.processing |= E
|
||||
START_PROCESSING(SSobj, E)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/egg/var/amount_grown = 0
|
||||
/obj/item/weapon/reagent_containers/food/snacks/egg/process()
|
||||
@@ -285,10 +285,10 @@ var/global/chicken_count = 0
|
||||
if(amount_grown >= 100)
|
||||
visible_message("[src] hatches with a quiet cracking sound.")
|
||||
new /mob/living/simple_animal/chick(get_turf(src))
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
qdel(src)
|
||||
else
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/item/udder
|
||||
|
||||
@@ -176,7 +176,7 @@
|
||||
/obj/machinery/am_shielding/proc/setup_core()
|
||||
processing = 1
|
||||
machines |= src
|
||||
SSmachine.processing |= src
|
||||
START_PROCESSING(SSmachine, src)
|
||||
if(!control_unit)
|
||||
return
|
||||
control_unit.linked_cores.Add(src)
|
||||
|
||||
@@ -20,22 +20,22 @@
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
charge = maxcharge
|
||||
ratingdesc = " This one has a power rating of [maxcharge], and you should not swallow it."
|
||||
desc = desc + ratingdesc
|
||||
updateicon()
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/on_varedit(modified_var)
|
||||
if(modified_var == "self_recharge")
|
||||
if(self_recharge)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/process()
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
src.energy = starting_energy
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
poi_list |= src
|
||||
for(var/obj/machinery/power/singularity_beacon/singubeacon in machines)
|
||||
if(singubeacon.active)
|
||||
@@ -43,7 +43,7 @@
|
||||
return
|
||||
|
||||
/obj/singularity/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
poi_list.Remove(src)
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -38,12 +38,12 @@
|
||||
fire_sound = shot.fire_sound
|
||||
fire_delay = shot.delay
|
||||
if(selfcharge)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
return
|
||||
|
||||
/obj/item/weapon/gun/energy/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/gun/energy/process()
|
||||
@@ -161,9 +161,9 @@
|
||||
/obj/item/weapon/gun/energy/on_varedit(modified_var)
|
||||
if(modified_var == "selfcharge")
|
||||
if(selfcharge)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/gun/energy/burn()
|
||||
|
||||
@@ -51,12 +51,12 @@
|
||||
charges = max_charges
|
||||
chambered = new ammo_type(src)
|
||||
if(can_charge)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/item/weapon/gun/magic/Destroy()
|
||||
if(can_charge)
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
/obj/item/weapon/gun/medbeam/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/gun/medbeam/dropped(mob/user)
|
||||
..()
|
||||
@@ -125,4 +125,4 @@
|
||||
|
||||
/obj/item/weapon/gun/medbeam/mech/New()
|
||||
..()
|
||||
SSobj.processing -= src //Mech mediguns do not process until installed, and are controlled by the holder obj
|
||||
STOP_PROCESSING(SSobj, src) //Mech mediguns do not process until installed, and are controlled by the holder obj
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
|
||||
/obj/item/weapon/minigunpack/New()
|
||||
gun = new(src)
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/minigunpack/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/minigunpack/process()
|
||||
|
||||
@@ -23,7 +23,7 @@ var/const/INJECT = 5 //injection
|
||||
maximum_volume = maximum
|
||||
|
||||
if(!(flags & REAGENT_NOREACT))
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
//I dislike having these here but map-objects are initialised before world/New() is called. >_>
|
||||
if(!chemical_reagents_list)
|
||||
@@ -60,7 +60,7 @@ var/const/INJECT = 5 //injection
|
||||
|
||||
/datum/reagents/Destroy()
|
||||
. = ..()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
for(var/reagent in reagent_list)
|
||||
var/datum/reagent/R = reagent
|
||||
qdel(R)
|
||||
@@ -293,7 +293,7 @@ var/const/INJECT = 5 //injection
|
||||
|
||||
/datum/reagents/process()
|
||||
if(flags & REAGENT_NOREACT)
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return
|
||||
|
||||
for(var/reagent in reagent_list)
|
||||
@@ -305,9 +305,9 @@ var/const/INJECT = 5 //injection
|
||||
// Order is important, process() can remove from processing if
|
||||
// the flag is present
|
||||
flags &= ~(REAGENT_NOREACT)
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
flags |= REAGENT_NOREACT
|
||||
|
||||
/datum/reagents/proc/conditional_update_move(atom/A, Running = 0)
|
||||
|
||||
@@ -38,11 +38,11 @@ Borg Hypospray
|
||||
modes[R] = iteration
|
||||
iteration++
|
||||
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/borghypo/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
|
||||
|
||||
@@ -455,7 +455,7 @@
|
||||
|
||||
/obj/effect/golemrune/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/effect/golemrune/process()
|
||||
var/mob/dead/observer/ghost
|
||||
|
||||
@@ -66,10 +66,10 @@
|
||||
|
||||
/obj/structure/table/abductor/wabbajack/New()
|
||||
. = ..()
|
||||
SSobj.processing += src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/structure/table/abductor/wabbajack/Destroy()
|
||||
SSobj.processing -= src
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
. = ..()
|
||||
|
||||
/obj/structure/table/abductor/wabbajack/process()
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
..()
|
||||
generateBrokers()
|
||||
generateStocks()
|
||||
SSobj.processing.Add(src)
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/datum/stockMarket/proc/balanceLog(var/whose, var/net)
|
||||
if (!(whose in balances))
|
||||
|
||||
@@ -446,10 +446,10 @@
|
||||
|
||||
/obj/item/organ/shadowtumor/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/organ/shadowtumor/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
..()
|
||||
|
||||
/obj/item/organ/shadowtumor/process()
|
||||
|
||||
@@ -136,14 +136,14 @@
|
||||
|
||||
/obj/item/weapon/rcs/New()
|
||||
..()
|
||||
SSobj.processing |= src
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/rcs/examine(mob/user)
|
||||
..()
|
||||
user << "There are [rcharges] charge\s left."
|
||||
|
||||
/obj/item/weapon/rcs/Destroy()
|
||||
SSobj.processing.Remove(src)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
/obj/item/weapon/rcs/process()
|
||||
if(rcharges > 10)
|
||||
|
||||
Reference in New Issue
Block a user