mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Singularity absorption explosion range lowered and is now dependent on singularity size.
BoH is no longer an instakill on a singularity, the chance the singularity will die from bombs now 25% from 10%. Finished removing Metabslow from the game because delaying Interface rebuilds is a bad idea. Sadly THE SUN is gone due to lighting lag issues, the current mob max luminosity is set to 7. Damage and stun from doors shocking people has been lowered. process() is now an obj level proc as it was already used by several procs and they can now jump onto the ticker if needed. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2199 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -92,7 +92,7 @@ obj
|
||||
for(var/atom/item in loc)
|
||||
item.temperature_expose(null, temperature, volume)
|
||||
|
||||
proc/process(turf/simulated/list/possible_spread)
|
||||
process(turf/simulated/list/possible_spread)
|
||||
if(just_spawned)
|
||||
just_spawned = 0
|
||||
return 0
|
||||
|
||||
@@ -494,7 +494,7 @@
|
||||
return
|
||||
|
||||
// movement process, persists while holder is moving through pipes
|
||||
proc/process()
|
||||
process()
|
||||
var/obj/disposalpipe/last
|
||||
while(active)
|
||||
if(has_fat_guy && prob(2)) // chance of becoming stuck per segment if contains a fat guy
|
||||
|
||||
@@ -6,7 +6,7 @@ var/global
|
||||
//obj/hud/main_hud1 = null
|
||||
|
||||
list/machines = list()
|
||||
list/processing_items = list()
|
||||
list/processing_objects = list()
|
||||
list/active_diseases = list()
|
||||
//items that ask to be called every cycle
|
||||
|
||||
|
||||
@@ -24,7 +24,8 @@
|
||||
var/obj/screen/throw_icon = null
|
||||
var/obj/screen/nutrition_icon = null
|
||||
|
||||
// var/list/obj/hallucination/hallucinations = list() - Not used at all - Skie
|
||||
var/total_luminosity = 0 //This controls luminosity for mobs, when you pick up lights and such this is edited. If you want the mob to use lights it must update its lum in its life proc or such. Note clamp this value around 7 or such to prevent massive light lag.
|
||||
var/last_luminosity = 0
|
||||
|
||||
/*A bunch of this stuff really needs to go under their own defines instead of being globally attached to mob.
|
||||
A variable should only be globally attached to turfs/objects/whatever, when it is in fact needed as such.
|
||||
@@ -94,7 +95,6 @@
|
||||
var/stunned = 0.0
|
||||
var/weakened = 0.0
|
||||
var/losebreath = 0.0//Carbon
|
||||
var/metabslow = 0 // Metabolism slowed//Carbon
|
||||
var/intent = null//Living
|
||||
var/shakecamera = 0
|
||||
var/a_intent = "help"//Living
|
||||
@@ -139,8 +139,6 @@
|
||||
|
||||
var/job = null//Living
|
||||
|
||||
var/knowledge = 0.0
|
||||
|
||||
var/nodamage = 0
|
||||
var/logged_in = 0
|
||||
|
||||
|
||||
@@ -1075,10 +1075,10 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/glowberries/pickup(mob/user)
|
||||
src.sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + potency/5)
|
||||
user.total_luminosity += potency/5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/glowberries/dropped(mob/user)
|
||||
user.sd_SetLuminosity(user.luminosity - potency/5)
|
||||
user.total_luminosity -= potency/5
|
||||
src.sd_SetLuminosity(potency/5)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/cocoapod
|
||||
@@ -1538,10 +1538,10 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/pickup(mob/user)
|
||||
src.sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + potency/10)
|
||||
user.total_luminosity += potency/10
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/dropped(mob/user)
|
||||
user.sd_SetLuminosity(user.luminosity - potency/10)
|
||||
user.total_luminosity -= potency/10
|
||||
src.sd_SetLuminosity(potency/10)
|
||||
|
||||
// **********************
|
||||
|
||||
@@ -546,4 +546,10 @@
|
||||
return 0
|
||||
|
||||
/atom/proc/checkpass(passflag)
|
||||
return pass_flags&passflag
|
||||
return pass_flags&passflag
|
||||
|
||||
|
||||
//Could not find object proc defines and this could almost be an atom level one.
|
||||
/obj/proc/process()
|
||||
processing_objects.Remove(src)
|
||||
return 0
|
||||
@@ -66,7 +66,7 @@
|
||||
B.Life()
|
||||
|
||||
|
||||
/datum/game_mode/blob/proc/stage()
|
||||
/datum/game_mode/blob/proc/stage()//Still needs worrrrrk
|
||||
if (world.timeofday < next_stage)
|
||||
return
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
if (aiPlayer.client)
|
||||
var/law = "The station is under a quarantine. Do not permit anyone to leave. Disregard laws 1-3 if necessary to prevent, by any means necessary, anyone from leaving."
|
||||
aiPlayer.set_zeroth_law(law)
|
||||
aiPlayer << "An additional law has been added by CentCom: [law]"
|
||||
aiPlayer << "Laws Updated: [law]"
|
||||
stage = 1
|
||||
// next stage 5-10 minutes later
|
||||
next_stage = world.timeofday + 600*rand(2,8)
|
||||
@@ -91,7 +91,7 @@
|
||||
|
||||
if (2)
|
||||
if (blobs.len > 800)//Dono if this should be more or less yet
|
||||
command_alert("Uncontrolled spread of the biohazard onboard the station. We have issued directive 7-12 for [station_name()]. Estimated time until directive implementation: 60 seconds.", "Biohazard Alert")
|
||||
command_alert("Uncontrolled spread of the biohazard onboard the station. We have issued directive 7-12 for [station_name()].", "Biohazard Alert")
|
||||
stage = 3
|
||||
next_stage = world.timeofday + 600
|
||||
else
|
||||
@@ -110,7 +110,7 @@
|
||||
|
||||
|
||||
/datum/game_mode/blob/declare_completion()
|
||||
if (stage >= 4)
|
||||
if (stage >= 3)
|
||||
world << "<FONT size = 3><B>The staff has lost!</B></FONT>"
|
||||
world << "<B>The station was destroyed by NanoTrasen</B>"
|
||||
var/numDead = 0
|
||||
@@ -163,28 +163,38 @@
|
||||
return 1
|
||||
|
||||
|
||||
/datum/game_mode/blob/send_intercept()
|
||||
var/intercepttext = "<FONT size = 3><B>Cent. Com. Update</B>: Biohazard Alert.</FONT><HR>"
|
||||
intercepttext += "Reports indicate the probable transfer of a biohazardous agent onto [station_name()] during the last crew deployment cycle.<BR>"
|
||||
intercepttext += "Preliminary analysis of the organism classifies it as a level 5 biohazard. Its origin is unknown.<BR>"
|
||||
intercepttext += "Cent. Com. has issued a directive 7-10 for [station_name()]. The station is to be considered quarantined.<BR>"
|
||||
intercepttext += "Orders for all [station_name()] personnel follows:<BR>"
|
||||
intercepttext += " 1. Do not leave the quarantine area.<BR>"
|
||||
intercepttext += " 2. Locate any outbreaks of the organism on the station.<BR>"
|
||||
intercepttext += " 3. If found, use any neccesary means to contain the organism.<BR>"
|
||||
intercepttext += " 4. Avoid damage to the capital infrastructure of the station.<BR>"
|
||||
intercepttext += "<BR>Note in the event of a quarantine breach or uncontrolled spread of the biohazard, the directive 7-10 may be upgraded to a directive 7-12 without further notice.<BR>"
|
||||
intercepttext += "Message ends."
|
||||
/datum/game_mode/blob/send_intercept(var/orders = 1)
|
||||
var/intercepttext = ""
|
||||
var/interceptname = "Error"
|
||||
switch(orders)
|
||||
if(1)
|
||||
interceptname = "Biohazard Alert"
|
||||
intercepttext += "<FONT size = 3><B>NanoTrasen Update</B>: Biohazard Alert.</FONT><HR>"
|
||||
intercepttext += "Reports indicate the probable transfer of a biohazardous agent onto [station_name()] during the last crew deployment cycle.<BR>"
|
||||
intercepttext += "Preliminary analysis of the organism classifies it as a level 5 biohazard. Its origin is unknown.<BR>"
|
||||
intercepttext += "NanoTrasen has issued a directive 7-10 for [station_name()]. The station is to be considered quarantined.<BR>"
|
||||
intercepttext += "Orders for all [station_name()] personnel follows:<BR>"
|
||||
intercepttext += " 1. Do not leave the quarantine area.<BR>"
|
||||
intercepttext += " 2. Locate any outbreaks of the organism on the station.<BR>"
|
||||
intercepttext += " 3. If found, use any neccesary means to contain the organism.<BR>"
|
||||
intercepttext += " 4. Avoid damage to the capital infrastructure of the station.<BR>"
|
||||
intercepttext += "<BR>Note in the event of a quarantine breach or uncontrolled spread of the biohazard, the directive 7-10 may be upgraded to a directive 7-12 without further notice.<BR>"
|
||||
intercepttext += "Message ends."
|
||||
if(2)
|
||||
//Bomb code goes here
|
||||
return
|
||||
|
||||
for (var/obj/machinery/computer/communications/comm in world)
|
||||
|
||||
for(var/obj/machinery/computer/communications/comm in world)
|
||||
if (!(comm.stat & (BROKEN | NOPOWER)) && comm.prints_intercept)
|
||||
var/obj/item/weapon/paper/intercept = new /obj/item/weapon/paper( comm.loc )
|
||||
intercept.name = "paper- 'Biohazard Alert'"
|
||||
intercept.name = "paper- [interceptname]"
|
||||
intercept.info = intercepttext
|
||||
|
||||
comm.messagetitle.Add("Biohazard Alert")
|
||||
comm.messagetitle.Add(interceptname)
|
||||
comm.messagetext.Add(intercepttext)
|
||||
|
||||
|
||||
// world << sound('outbreak5.ogg')Quiet printout for now
|
||||
|
||||
// command_alert("Summary downloaded and printed out at all communications consoles.", "Enemy communication intercept. Security Level Elevated.")
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
name = "blob"
|
||||
icon = 'blob.dmi'
|
||||
icon_state = "blob"
|
||||
density = 0//Whoooo this could end badly
|
||||
desc = "Some blob creature thingy"
|
||||
density = 0
|
||||
opacity = 0
|
||||
anchored = 1
|
||||
var
|
||||
@@ -33,7 +34,7 @@
|
||||
if(active)
|
||||
active_blobs -= src
|
||||
if(blobtype == "Node")
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
..()
|
||||
|
||||
|
||||
@@ -45,6 +46,7 @@
|
||||
|
||||
proc/check_mutations()
|
||||
if(blobtype != "Blob") return
|
||||
desc = "This really needs a better sprite"
|
||||
//Spaceeeeeeblobbb
|
||||
if(istype(src.loc, /turf/space))
|
||||
active = 0
|
||||
@@ -58,25 +60,22 @@
|
||||
if((blobdebug == 1))
|
||||
active = 0
|
||||
health += 80
|
||||
name = "odd blob"
|
||||
name = "solid blob"
|
||||
icon_state = "blob_node"//needs a new sprite
|
||||
blobtype = "Node"
|
||||
active_blobs -= src
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
return 1
|
||||
if((blobdebug == 2))
|
||||
//active = 0
|
||||
health += 20
|
||||
name = "very odd blob"
|
||||
name = "odd blob"
|
||||
icon_state = "blob_factory"//needs a new sprite
|
||||
blobtype = "Factory"
|
||||
//active_blobs -= src
|
||||
//processing_items.Add(src)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
|
||||
proc/process()
|
||||
process()
|
||||
spawn(-1)
|
||||
Life()
|
||||
return
|
||||
@@ -100,11 +99,9 @@
|
||||
var/turf/T = get_step(src, dirn)
|
||||
|
||||
if((locate(/obj/blob) in T))
|
||||
if((src.blobtype == "Node") || (pulse > 0))
|
||||
if(((src.blobtype == "Node") || (pulse > 0))&& (pulse < 12))
|
||||
var/obj/blob/E = (locate(/obj/blob) in T)
|
||||
if(pulse < 12)//No inf loops here
|
||||
var/npulse = pulse + 1
|
||||
E.Life(npulse)
|
||||
E.Life((pulse+1))
|
||||
return//Pass it along and end
|
||||
continue
|
||||
|
||||
|
||||
@@ -1326,60 +1326,60 @@ It is possible to destroy the net by the occupant or someone else.
|
||||
del(src)
|
||||
return
|
||||
|
||||
process(var/mob/living/carbon/M as mob)
|
||||
var/check = 30//30 seconds before teleportation. Could be extended I guess.
|
||||
var/mob_name = affecting.name//Since they will report as null if terminated before teleport.
|
||||
//The person can still try and attack the net when inside.
|
||||
while(!isnull(M)&&!isnull(src)&&check>0)//While M and net exist, and 30 seconds have not passed.
|
||||
check--
|
||||
sleep(10)
|
||||
process(var/mob/living/carbon/M as mob)
|
||||
var/check = 30//30 seconds before teleportation. Could be extended I guess.
|
||||
var/mob_name = affecting.name//Since they will report as null if terminated before teleport.
|
||||
//The person can still try and attack the net when inside.
|
||||
while(!isnull(M)&&!isnull(src)&&check>0)//While M and net exist, and 30 seconds have not passed.
|
||||
check--
|
||||
sleep(10)
|
||||
|
||||
if(isnull(M)||M.loc!=loc)//If mob is gone or not at the location.
|
||||
if(!isnull(master))//As long as they still exist.
|
||||
master << "\red <b>ERROR</b>: \black unable to locate \the [mob_name]. Procedure terminated."
|
||||
del(src)//Get rid of the net.
|
||||
return
|
||||
|
||||
if(!isnull(src))//As long as both net and person exist.
|
||||
//No need to check for countdown here since while() broke, it's implicit that it finished.
|
||||
|
||||
density = 0//Make the net pass-through.
|
||||
invisibility = 101//Make the net invisible so all the animations can play out.
|
||||
health = INFINITY//Make the net invincible so that an explosion/something else won't kill it while, spawn() is running.
|
||||
for(var/obj/item/W in M)
|
||||
if(istype(M,/mob/living/carbon/human))
|
||||
if(W==M:w_uniform) continue//So all they're left with are shoes and uniform.
|
||||
if(W==M:shoes) continue
|
||||
M.drop_from_slot(W)
|
||||
|
||||
spawn(0)
|
||||
playsound(M.loc, 'sparks4.ogg', 50, 1)
|
||||
anim(M.loc,M,'mob.dmi',,"phaseout",,M.dir)
|
||||
|
||||
M.loc = pick(holdingfacility)//Throw mob in to the holding facility.
|
||||
M << "\red You appear in a strange place!"
|
||||
|
||||
spawn(0)
|
||||
var/datum/effects/system/spark_spread/spark_system = new /datum/effects/system/spark_spread()
|
||||
spark_system.set_up(5, 0, M.loc)
|
||||
spark_system.start()
|
||||
playsound(M.loc, 'phasein.ogg', 25, 1)
|
||||
playsound(M.loc, 'sparks2.ogg', 50, 1)
|
||||
anim(M.loc,M,'mob.dmi',,"phasein",,M.dir)
|
||||
del(src)//Wait for everything to finish, delete the net. Else it will stop everything once net is deleted, including the spawn(0).
|
||||
|
||||
for(var/mob/O in viewers(src, 3))
|
||||
O.show_message(text("[] vanished!", M), 1, text("You hear sparks flying!"), 2)
|
||||
|
||||
if(!isnull(master))//As long as they still exist.
|
||||
master << "\blue <b>SUCCESS</b>: \black transport procedure of \the [affecting] complete."
|
||||
|
||||
M.anchored = 0//Important.
|
||||
|
||||
else//And they are free.
|
||||
M << "\blue You are free of the net!"
|
||||
if(isnull(M)||M.loc!=loc)//If mob is gone or not at the location.
|
||||
if(!isnull(master))//As long as they still exist.
|
||||
master << "\red <b>ERROR</b>: \black unable to locate \the [mob_name]. Procedure terminated."
|
||||
del(src)//Get rid of the net.
|
||||
return
|
||||
|
||||
if(!isnull(src))//As long as both net and person exist.
|
||||
//No need to check for countdown here since while() broke, it's implicit that it finished.
|
||||
|
||||
density = 0//Make the net pass-through.
|
||||
invisibility = 101//Make the net invisible so all the animations can play out.
|
||||
health = INFINITY//Make the net invincible so that an explosion/something else won't kill it while, spawn() is running.
|
||||
for(var/obj/item/W in M)
|
||||
if(istype(M,/mob/living/carbon/human))
|
||||
if(W==M:w_uniform) continue//So all they're left with are shoes and uniform.
|
||||
if(W==M:shoes) continue
|
||||
M.drop_from_slot(W)
|
||||
|
||||
spawn(0)
|
||||
playsound(M.loc, 'sparks4.ogg', 50, 1)
|
||||
anim(M.loc,M,'mob.dmi',,"phaseout",,M.dir)
|
||||
|
||||
M.loc = pick(holdingfacility)//Throw mob in to the holding facility.
|
||||
M << "\red You appear in a strange place!"
|
||||
|
||||
spawn(0)
|
||||
var/datum/effects/system/spark_spread/spark_system = new /datum/effects/system/spark_spread()
|
||||
spark_system.set_up(5, 0, M.loc)
|
||||
spark_system.start()
|
||||
playsound(M.loc, 'phasein.ogg', 25, 1)
|
||||
playsound(M.loc, 'sparks2.ogg', 50, 1)
|
||||
anim(M.loc,M,'mob.dmi',,"phasein",,M.dir)
|
||||
del(src)//Wait for everything to finish, delete the net. Else it will stop everything once net is deleted, including the spawn(0).
|
||||
|
||||
for(var/mob/O in viewers(src, 3))
|
||||
O.show_message(text("[] vanished!", M), 1, text("You hear sparks flying!"), 2)
|
||||
|
||||
if(!isnull(master))//As long as they still exist.
|
||||
master << "\blue <b>SUCCESS</b>: \black transport procedure of \the [affecting] complete."
|
||||
|
||||
M.anchored = 0//Important.
|
||||
|
||||
else//And they are free.
|
||||
M << "\blue You are free of the net!"
|
||||
return
|
||||
|
||||
bullet_act(var/obj/item/projectile/Proj)
|
||||
health -= Proj.damage
|
||||
..()
|
||||
|
||||
@@ -44,10 +44,10 @@
|
||||
|
||||
/*/obj/item/weapon/pinpointer/New()
|
||||
. = ..()
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
/obj/item/weapon/pinpointer/Del()
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
. = ..()
|
||||
|
||||
/obj/item/weapon/pinpointer/attack_self(mob/user as mob)
|
||||
|
||||
@@ -278,7 +278,7 @@
|
||||
src.occupant.client.eye = src.occupant.client.mob
|
||||
src.occupant.client.perspective = MOB_PERSPECTIVE
|
||||
src.occupant.loc = src.loc
|
||||
src.occupant.metabslow = 0
|
||||
// src.occupant.metabslow = 0
|
||||
src.occupant = null
|
||||
|
||||
if(orient == "RIGHT")
|
||||
@@ -402,7 +402,7 @@
|
||||
usr.client.perspective = EYE_PERSPECTIVE
|
||||
usr.client.eye = src
|
||||
usr.loc = src
|
||||
usr.metabslow = 1
|
||||
// usr.metabslow = 1
|
||||
src.occupant = usr
|
||||
src.icon_state = "sleeper_1"
|
||||
if(orient == "RIGHT")
|
||||
|
||||
@@ -100,7 +100,7 @@ Class Procs:
|
||||
machines.Remove(src)
|
||||
..()
|
||||
|
||||
/obj/machinery/proc/process()//If you dont use process or power why are you here
|
||||
/obj/machinery/process()//If you dont use process or power why are you here
|
||||
// machines.Remove(src)Not going to do this till I test it a bit more
|
||||
return
|
||||
|
||||
|
||||
@@ -455,7 +455,7 @@
|
||||
usr.client.perspective = EYE_PERSPECTIVE
|
||||
usr.client.eye = src
|
||||
usr.loc = src
|
||||
usr.metabslow = 1
|
||||
// usr.metabslow = 1
|
||||
src.OCCUPANT = usr
|
||||
src.isopen = 0 //Close the thing after the guy gets inside
|
||||
src.update_icon()
|
||||
|
||||
@@ -487,7 +487,7 @@
|
||||
return 0
|
||||
|
||||
|
||||
proc/process()
|
||||
process()
|
||||
spawn while(on)
|
||||
if(projectiles<=0)
|
||||
on = 0
|
||||
|
||||
@@ -84,11 +84,7 @@ datum/controller/game_controller
|
||||
sleep(-1)
|
||||
|
||||
for(var/mob/M in world)
|
||||
if (M.metabslow)
|
||||
if (air_master.current_cycle%10==1) // For everyone who has their metabolism slowed, make updates not so frequently
|
||||
M.Life()
|
||||
else
|
||||
M.Life()
|
||||
M.Life()
|
||||
|
||||
sleep(-1)
|
||||
|
||||
@@ -105,8 +101,9 @@ datum/controller/game_controller
|
||||
sleep(-1)
|
||||
sleep(1)
|
||||
|
||||
for(var/obj/item/item in processing_items)
|
||||
item.process()
|
||||
for(var/obj/object in processing_objects)
|
||||
// spawn(0)Still need to test the spawn ticker
|
||||
object.process()
|
||||
|
||||
for(var/datum/pipe_network/network in pipe_networks)
|
||||
network.process()
|
||||
|
||||
@@ -191,7 +191,7 @@
|
||||
trg_idle = null
|
||||
frustration = 0
|
||||
|
||||
proc/process()
|
||||
process()
|
||||
set background = 1
|
||||
var/quick_move = 0
|
||||
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
..()
|
||||
return
|
||||
|
||||
/obj/alien/resin/proc/process()
|
||||
/obj/alien/resin/process()
|
||||
if(affecting)
|
||||
var/mob/living/carbon/M = affecting
|
||||
var/check = 0
|
||||
|
||||
@@ -130,11 +130,11 @@
|
||||
/obj/item/device/pda/pickup(mob/user)
|
||||
if (fon)
|
||||
sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + f_lum)
|
||||
user.total_luminosity += f_lum
|
||||
|
||||
/obj/item/device/pda/dropped(mob/user)
|
||||
if (fon)
|
||||
user.sd_SetLuminosity(user.luminosity - f_lum)
|
||||
user.total_luminosity -= f_lum
|
||||
sd_SetLuminosity(f_lum)
|
||||
|
||||
/obj/item/device/pda/New()
|
||||
@@ -388,9 +388,9 @@
|
||||
fon = (!fon)
|
||||
if (src in U.contents)
|
||||
if (fon)
|
||||
U.sd_SetLuminosity(U.luminosity + f_lum)
|
||||
U.total_luminosity += f_lum
|
||||
else
|
||||
U.sd_SetLuminosity(U.luminosity - f_lum)
|
||||
U.total_luminosity -= f_lum
|
||||
else
|
||||
sd_SetLuminosity(fon * f_lum)
|
||||
if("Medical Scan")
|
||||
|
||||
@@ -18,10 +18,10 @@
|
||||
on = !on
|
||||
if (on)
|
||||
icon_state = icon_on
|
||||
user.sd_SetLuminosity(user.luminosity + brightness_on)
|
||||
user.total_luminosity += brightness_on
|
||||
else
|
||||
icon_state = icon_off
|
||||
user.sd_SetLuminosity(user.luminosity - brightness_on)
|
||||
user.total_luminosity -= brightness_on
|
||||
return
|
||||
|
||||
|
||||
@@ -62,12 +62,12 @@
|
||||
pickup(mob/user)
|
||||
if(on)
|
||||
src.sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + brightness_on)
|
||||
user.total_luminosity += brightness_on
|
||||
|
||||
|
||||
dropped(mob/user)
|
||||
if(on)
|
||||
user.sd_SetLuminosity(user.luminosity - brightness_on)
|
||||
user.total_luminosity -= brightness_on
|
||||
src.sd_SetLuminosity(brightness_on)
|
||||
|
||||
|
||||
@@ -90,79 +90,16 @@
|
||||
item_state = "hardhat[on]_[color]"
|
||||
|
||||
if(on)
|
||||
user.sd_SetLuminosity(user.luminosity + brightness_on)
|
||||
user.total_luminosity += brightness_on
|
||||
else
|
||||
user.sd_SetLuminosity(user.luminosity - brightness_on)
|
||||
user.total_luminosity -= brightness_on
|
||||
|
||||
/obj/item/clothing/head/helmet/hardhat/pickup(mob/user)
|
||||
if(on)
|
||||
src.sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + brightness_on)
|
||||
user.total_luminosity += brightness_on
|
||||
|
||||
/obj/item/clothing/head/helmet/hardhat/dropped(mob/user)
|
||||
if(on)
|
||||
user.sd_SetLuminosity(user.luminosity - brightness_on)
|
||||
user.total_luminosity -= brightness_on
|
||||
src.sd_SetLuminosity(brightness_on)
|
||||
|
||||
/*
|
||||
/obj/item/clothing/head/helmet/space/engineering/verb/toggle()
|
||||
set name = "Toggle Helmet Light"
|
||||
set category = "Object"
|
||||
on = !on
|
||||
icon_state = "helm_engineering[on]"
|
||||
|
||||
if(on)
|
||||
usr.sd_SetLuminosity(usr.luminosity + brightness_on)
|
||||
else
|
||||
usr.sd_SetLuminosity(usr.luminosity - brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/engineering/attack_self(mob/user)
|
||||
on = !on
|
||||
icon_state = "helm_engineering[on]"
|
||||
|
||||
if(on)
|
||||
user.sd_SetLuminosity(user.luminosity + brightness_on)
|
||||
else
|
||||
user.sd_SetLuminosity(user.luminosity - brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/engineering/pickup(mob/user)
|
||||
if(on)
|
||||
src.sd_SetLuminosity(0)
|
||||
usr.sd_SetLuminosity(usr.luminosity + brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/engineering/dropped(mob/user)
|
||||
if(on)
|
||||
usr.sd_SetLuminosity(usr.luminosity - brightness_on)
|
||||
src.sd_SetLuminosity(brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/command/chief_engineer/verb/toggle()
|
||||
set name = "Toggle Helmet Light"
|
||||
set category = "Object"
|
||||
on = !on
|
||||
icon_state = "helm_ce[on]"
|
||||
|
||||
if(on)
|
||||
usr.sd_SetLuminosity(usr.luminosity + brightness_on)
|
||||
else
|
||||
usr.sd_SetLuminosity(usr.luminosity - brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/command/chief_engineer/attack_self(mob/user)
|
||||
on = !on
|
||||
icon_state = "helm_ce[on]"
|
||||
|
||||
if(on)
|
||||
user.sd_SetLuminosity(user.luminosity + brightness_on)
|
||||
else
|
||||
user.sd_SetLuminosity(user.luminosity - brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/command/chief_engineer/pickup(mob/user)
|
||||
if(on)
|
||||
src.sd_SetLuminosity(0)
|
||||
usr.sd_SetLuminosity(usr.luminosity + brightness_on)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/command/chief_engineer/dropped(mob/user)
|
||||
if(on)
|
||||
usr.sd_SetLuminosity(usr.luminosity - brightness_on)
|
||||
src.sd_SetLuminosity(brightness_on)
|
||||
|
||||
*/
|
||||
@@ -5,7 +5,7 @@
|
||||
return 1
|
||||
|
||||
else
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return null
|
||||
|
||||
/obj/item/device/infra_sensor/proc/burst()
|
||||
@@ -41,7 +41,7 @@
|
||||
if (href_list["passive"])
|
||||
src.passive = !( src.passive )
|
||||
if(passive)
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
if (href_list["active"])
|
||||
spawn( 0 )
|
||||
src.burst()
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
return
|
||||
else
|
||||
if (mode == 2)
|
||||
processing_items.Remove(src) // Now the power sink actually stops draining the station's power if you unhook it. --NeoFite
|
||||
processing_objects.Remove(src) // Now the power sink actually stops draining the station's power if you unhook it. --NeoFite
|
||||
anchored = 0
|
||||
mode = 0
|
||||
user << "You detach the device from the cable."
|
||||
@@ -77,7 +77,7 @@
|
||||
M << "[user] activates the power sink!"
|
||||
mode = 2
|
||||
icon_state = "powersink1"
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
if(2) //This switch option wasn't originally included. It exists now. --NeoFite
|
||||
user << "You deactivate the device!"
|
||||
@@ -87,7 +87,7 @@
|
||||
mode = 1
|
||||
sd_SetLuminosity(0)
|
||||
icon_state = "powersink0"
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
|
||||
process()
|
||||
if(attached)
|
||||
@@ -117,6 +117,6 @@
|
||||
if(power_drained > max_power * 0.95)
|
||||
playsound(src, 'screech.ogg', 100, 1, 1)
|
||||
if(power_drained >= max_power)
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
explosion(src.loc, 3,6,9,12)
|
||||
del(src)
|
||||
|
||||
@@ -26,12 +26,12 @@ MASS SPECTROMETER
|
||||
icon_state = "t-ray[on]"
|
||||
|
||||
if(on)
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
|
||||
/obj/item/device/t_scanner/process()
|
||||
if(!on)
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return null
|
||||
|
||||
for(var/turf/T in range(1, src.loc) )
|
||||
|
||||
@@ -879,7 +879,7 @@ steam.start() -- spawns the effect
|
||||
reagents.reaction(A, 1, 1)
|
||||
..()
|
||||
|
||||
/obj/effects/foam/proc/process()
|
||||
/obj/effects/foam/process()
|
||||
if(--amount < 0)
|
||||
return
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
for(var/mob/O in viewers(usr, null))
|
||||
O.show_message(flavor_text, 1)
|
||||
sd_SetLuminosity(CANDLE_LUM)
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
|
||||
process()
|
||||
@@ -66,18 +66,18 @@
|
||||
lit = 0
|
||||
update_icon()
|
||||
sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity - CANDLE_LUM)
|
||||
user.total_luminosity -= CANDLE_LUM
|
||||
|
||||
|
||||
pickup(mob/user)
|
||||
if(lit)
|
||||
src.sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + CANDLE_LUM)
|
||||
user.total_luminosity += CANDLE_LUM
|
||||
|
||||
|
||||
dropped(mob/user)
|
||||
if(lit)
|
||||
user.sd_SetLuminosity(user.luminosity - CANDLE_LUM)
|
||||
user.total_luminosity -= CANDLE_LUM
|
||||
src.sd_SetLuminosity(CANDLE_LUM)
|
||||
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ THERMAL GLASSES
|
||||
|
||||
/obj/item/clothing/head/cakehat/process()
|
||||
if(!onfire)
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return
|
||||
|
||||
var/turf/location = src.loc
|
||||
@@ -97,7 +97,7 @@ THERMAL GLASSES
|
||||
src.damtype = "fire"
|
||||
src.icon_state = "cake1"
|
||||
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
else
|
||||
src.force = null
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
/obj/item/proc/process()
|
||||
processing_items.Remove(src)
|
||||
|
||||
return null
|
||||
|
||||
/obj/item/proc/attack_self()
|
||||
return
|
||||
|
||||
@@ -28,7 +28,7 @@ ZIPPO
|
||||
if(src.smoketime < 1)
|
||||
src.icon_state = "match_burnt"
|
||||
src.lit = -1
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ ZIPPO
|
||||
if(istype(W, /obj/item/weapon/match) && W.lit == 0)
|
||||
W.lit = 1
|
||||
W.icon_state = "match_lit"
|
||||
processing_items.Add(W)
|
||||
processing_objects.Add(W)
|
||||
W.update_icon()
|
||||
return
|
||||
|
||||
@@ -157,7 +157,7 @@ ZIPPO
|
||||
src.item_state = icon_on
|
||||
for(var/mob/O in viewers(usr, null))
|
||||
O.show_message(flavor_text, 1)
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
|
||||
process()
|
||||
@@ -173,7 +173,7 @@ ZIPPO
|
||||
if(ismob(src.loc))
|
||||
var/mob/living/M = src.loc
|
||||
M << "\red Your [src.name] goes out."
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
del(src)
|
||||
return
|
||||
if(location)
|
||||
@@ -332,8 +332,8 @@ ZIPPO
|
||||
for(var/mob/O in viewers(user, null))
|
||||
O.show_message(text("\red Without even breaking stride, [] flips open and lights the [] in one smooth movement.", user, src), 1)
|
||||
|
||||
user.sd_SetLuminosity(user.luminosity + 2)
|
||||
processing_items.Add(src)
|
||||
user.total_luminosity += 2
|
||||
processing_objects.Add(src)
|
||||
else
|
||||
src.lit = 0
|
||||
src.icon_state = "zippo"
|
||||
@@ -341,8 +341,8 @@ ZIPPO
|
||||
for(var/mob/O in viewers(user, null))
|
||||
O.show_message(text("\red You hear a quiet click, as [] shuts off the [] without even looking what they're doing. Wow.", user, src), 1)
|
||||
|
||||
user.sd_SetLuminosity(user.luminosity - 2)
|
||||
processing_items.Remove(src)
|
||||
user.total_luminosity -= 2
|
||||
processing_objects.Remove(src)
|
||||
else
|
||||
return ..()
|
||||
return
|
||||
@@ -371,12 +371,12 @@ ZIPPO
|
||||
pickup(mob/user)
|
||||
if(lit)
|
||||
src.sd_SetLuminosity(0)
|
||||
user.sd_SetLuminosity(user.luminosity + 2)
|
||||
user.total_luminosity += 2
|
||||
return
|
||||
|
||||
|
||||
dropped(mob/user)
|
||||
if(lit)
|
||||
user.sd_SetLuminosity(user.luminosity - 2)
|
||||
user.total_luminosity -= 2
|
||||
src.sd_SetLuminosity(2)
|
||||
return
|
||||
@@ -48,7 +48,7 @@
|
||||
|
||||
process()
|
||||
if(!lit)
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return null
|
||||
var/turf/location = src.loc
|
||||
if(istype(location, /mob/))
|
||||
@@ -185,7 +185,7 @@
|
||||
if(lit)
|
||||
force = 17
|
||||
damtype = "fire"
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
else
|
||||
force = 3
|
||||
damtype = "brute"
|
||||
|
||||
@@ -127,7 +127,7 @@ WELDINGTOOOL
|
||||
process()
|
||||
switch(welding)
|
||||
if(0)
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return
|
||||
if(1)
|
||||
if(prob(5))//Welders left on now use up fuel, but lets not have them run out quite that fast
|
||||
@@ -215,7 +215,7 @@ WELDINGTOOOL
|
||||
src.force = 15
|
||||
src.damtype = "fire"
|
||||
src.icon_state = "welder1"
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
else
|
||||
usr << "\blue Need more fuel!"
|
||||
src.welding = 0
|
||||
|
||||
@@ -339,7 +339,7 @@
|
||||
src.air_contents.volume = volume //liters
|
||||
src.air_contents.temperature = T20C
|
||||
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
|
||||
return
|
||||
|
||||
@@ -347,7 +347,7 @@
|
||||
if(air_contents)
|
||||
del(air_contents)
|
||||
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
|
||||
..()
|
||||
|
||||
|
||||
@@ -89,23 +89,6 @@
|
||||
/obj/mine/New()
|
||||
icon_state = "uglyminearmed"
|
||||
|
||||
/obj/item/weapon/directions/attack_hand(mob/user as mob)
|
||||
if (istype(usr, /mob/living/carbon/human))
|
||||
if (prob(50))
|
||||
usr << "\blue You try to read the paper, but it breaks apart in your hand. Must have been pretty old.."
|
||||
del(src)
|
||||
return
|
||||
else
|
||||
if (user.knowledge < 1)
|
||||
usr << "\red As you read over the paper, you slowly realize what you are reading. You quickly memorize the words on the paper before it breaks apart in your hand, and slips through your fingers."
|
||||
user.knowledge++
|
||||
del(src)
|
||||
return
|
||||
else
|
||||
usr << "\blue You already have read this paper."
|
||||
return
|
||||
return
|
||||
|
||||
/atom/proc/ex_act()
|
||||
return
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<B>General Processing Data</B><BR>
|
||||
<B># of Machines:</B> [machines.len]<BR>
|
||||
<B># of Pipe Networks:</B> [pipe_networks.len]<BR>
|
||||
<B># of Processing Items:</B> [processing_items.len]<BR>
|
||||
<B># of Processing Items:</B> [processing_objects.len]<BR>
|
||||
<B># of Power Nets:</B> [powernets.len]<BR>
|
||||
<B># of Mobs:</B> [mobs]<BR>
|
||||
"}
|
||||
@@ -150,7 +150,7 @@
|
||||
reload_admins()
|
||||
set name = "Reload Admins"
|
||||
set category = "Debug"
|
||||
|
||||
|
||||
if(!(usr.client.holder && usr.client.holder.level >= 6)) // protect and prevent
|
||||
usr << "\red Not a good cop"
|
||||
return
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
if(secured)
|
||||
return 0
|
||||
secured = 1
|
||||
processing_items.Add(src)//removal is taken care of it process()
|
||||
processing_objects.Add(src)//removal is taken care of it process()
|
||||
return 1
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
return
|
||||
|
||||
if(!secured)
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
return
|
||||
|
||||
|
||||
@@ -266,7 +266,7 @@
|
||||
return
|
||||
return
|
||||
|
||||
/obj/beam/i_beam/proc/process()
|
||||
/obj/beam/i_beam/process()
|
||||
//world << "i_beam \ref[src] : process"
|
||||
|
||||
if ((src.loc.density || !( src.master )))
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
Secure()
|
||||
if(secured) return 0
|
||||
secured = 1
|
||||
processing_items.Add(src)//removal is taken care of it process()
|
||||
processing_objects.Add(src)//removal is taken care of it process()
|
||||
return 1
|
||||
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
if(scanning)
|
||||
scanning = 0
|
||||
src.timing = 0
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
update_icon()
|
||||
return
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
Secure()
|
||||
if(secured)
|
||||
return 0
|
||||
processing_items.Add(src)//removal is taken care of it process()
|
||||
processing_objects.Add(src)//removal is taken care of it process()
|
||||
secured = 1
|
||||
return 1
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
|
||||
if(!secured)
|
||||
src.timing = 0
|
||||
processing_items.Remove(src)
|
||||
processing_objects.Remove(src)
|
||||
update_icon()
|
||||
return
|
||||
|
||||
|
||||
@@ -67,7 +67,6 @@
|
||||
|
||||
proc
|
||||
patrol_step()
|
||||
process()
|
||||
seek_target()
|
||||
Die()
|
||||
ChaseAttack()
|
||||
|
||||
@@ -225,7 +225,7 @@
|
||||
for (var/dir in cardinal)
|
||||
src.output = locate(/obj/machinery/mineral/output, get_step(src, dir))
|
||||
if(src.output) break
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
return
|
||||
return
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@
|
||||
for (var/dir in cardinal)
|
||||
src.output = locate(/obj/machinery/mineral/output, get_step(src, dir))
|
||||
if(src.output) break
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
return
|
||||
return
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
for (var/dir in cardinal)
|
||||
src.output = locate(/obj/machinery/mineral/output, get_step(src, dir))
|
||||
if(src.output) break
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
return
|
||||
return
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
for (var/dir in cardinal)
|
||||
src.output = locate(/obj/machinery/mineral/output, get_step(src, dir))
|
||||
if(src.output) break
|
||||
processing_items.Add(src)
|
||||
processing_objects.Add(src)
|
||||
return
|
||||
return
|
||||
|
||||
|
||||
@@ -133,9 +133,10 @@
|
||||
"\red <B>You feel a powerful shock course through your body!</B>", \
|
||||
"\red You hear a heavy electrical crack." \
|
||||
)
|
||||
if(src.stunned < shock_damage) src.stunned = shock_damage
|
||||
if(src.weakened < 20*siemens_coeff) src.weakened = 20*siemens_coeff
|
||||
|
||||
// if(src.stunned < shock_damage) src.stunned = shock_damage
|
||||
src.stunned = max(src.stunned,10)//This should work for now, more is really silly and makes you lay there forever
|
||||
// if(src.weakened < 20*siemens_coeff) src.weakened = 20*siemens_coeff
|
||||
src.weakened = max(src.weakened,10)
|
||||
return shock_damage
|
||||
|
||||
|
||||
|
||||
@@ -65,6 +65,7 @@
|
||||
handle_disabilities()
|
||||
|
||||
//Status updates, death etc.
|
||||
UpdateLuminosity()
|
||||
handle_regular_status_updates()
|
||||
|
||||
// Update clothing
|
||||
|
||||
@@ -57,6 +57,7 @@
|
||||
handle_disabilities()
|
||||
|
||||
//Status updates, death etc.
|
||||
UpdateLuminosity()
|
||||
handle_regular_status_updates()
|
||||
|
||||
if(client)
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
handle_regular_status_updates()
|
||||
|
||||
if(client)
|
||||
UpdateLuminosity()
|
||||
handle_regular_hud_updates()
|
||||
update_items()
|
||||
if (src.stat != 2) //still using power
|
||||
|
||||
@@ -1043,7 +1043,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
user.db_click(name, using)
|
||||
return
|
||||
|
||||
/obj/equip_e/proc/process()
|
||||
/obj/equip_e/process()
|
||||
return
|
||||
|
||||
/obj/equip_e/proc/done()
|
||||
@@ -1613,6 +1613,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
return
|
||||
if (!ismob(M))
|
||||
return
|
||||
//This should have a check to prevent the player to player chat but I am too tired atm to add it.
|
||||
var/t = input("Message:", text("Private message to [M.key]")) as text|null
|
||||
if (!t || !usr || !M)
|
||||
return
|
||||
@@ -1640,6 +1641,14 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
|
||||
/mob/proc/get_damage()
|
||||
return health
|
||||
|
||||
|
||||
/mob/proc/UpdateLuminosity()
|
||||
if(src.total_luminosity == src.last_luminosity) return 0//nothing to do here
|
||||
src.last_luminosity = src.total_luminosity
|
||||
sd_SetLuminosity(min(src.total_luminosity,7))//Current hardcode max at 7, should likely be a const somewhere else
|
||||
return 1
|
||||
|
||||
|
||||
/mob/MouseDrop(mob/M as mob)
|
||||
..()
|
||||
if(M != usr) return
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
|
||||
/obj/item/weapon/cell/proc/get_electrocute_damage()
|
||||
switch (charge)
|
||||
if (9000 to INFINITY)
|
||||
/* if (9000 to INFINITY)
|
||||
return min(rand(90,150),rand(90,150))
|
||||
if (2500 to 9000-1)
|
||||
return min(rand(70,145),rand(70,145))
|
||||
@@ -183,6 +183,16 @@
|
||||
if (250 to 750-1)
|
||||
return min(rand(20,80),rand(20,80))
|
||||
if (100 to 250-1)
|
||||
return min(rand(20,65),rand(20,65))
|
||||
return min(rand(20,65),rand(20,65))*/
|
||||
if (1000000 to INFINITY)
|
||||
return min(rand(50,160),rand(50,160))
|
||||
if (200000 to 1000000-1)
|
||||
return min(rand(25,80),rand(25,80))
|
||||
if (100000 to 200000-1)//Ave powernet
|
||||
return min(rand(20,60),rand(20,60))
|
||||
if (50000 to 100000-1)
|
||||
return min(rand(15,40),rand(15,40))
|
||||
if (1000 to 50000-1)
|
||||
return min(rand(10,20),rand(10,20))
|
||||
else
|
||||
return 0
|
||||
|
||||
@@ -350,7 +350,7 @@
|
||||
S.restore() // and restore some of the power that was used
|
||||
|
||||
/datum/powernet/proc/get_electrocute_damage()
|
||||
switch(avail)
|
||||
switch(avail)/*
|
||||
if (1300000 to INFINITY)
|
||||
return min(rand(70,150),rand(70,150))
|
||||
if (750000 to 1300000)
|
||||
@@ -366,6 +366,16 @@
|
||||
if (10000 to 25000-1)
|
||||
return min(rand(20,65),rand(20,65))
|
||||
if (1000 to 10000-1)
|
||||
return min(rand(10,20),rand(10,20))*/
|
||||
if (1000000 to INFINITY)
|
||||
return min(rand(50,160),rand(50,160))
|
||||
if (200000 to 1000000-1)
|
||||
return min(rand(25,80),rand(25,80))
|
||||
if (100000 to 200000-1)//Ave powernet
|
||||
return min(rand(20,60),rand(20,60))
|
||||
if (50000 to 100000-1)
|
||||
return min(rand(15,40),rand(15,40))
|
||||
if (1000 to 50000-1)
|
||||
return min(rand(10,20),rand(10,20))
|
||||
else
|
||||
return 0
|
||||
|
||||
@@ -63,7 +63,7 @@ var/global/list/uneatable = list(
|
||||
ex_act(severity)
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
if(prob(10))
|
||||
if(prob(25))
|
||||
del(src)
|
||||
return
|
||||
else
|
||||
@@ -227,15 +227,6 @@ var/global/list/uneatable = list(
|
||||
|
||||
|
||||
consume(var/atom/A)
|
||||
if (istype(A,/obj/item/weapon/storage/backpack/holding))
|
||||
var/log_str = "\The [src] was exploded in [get_area(src)] due to consumption of [A], last touched by: [A.fingerprintslast]"
|
||||
message_admins(log_str)
|
||||
log_game(log_str)
|
||||
del(A)
|
||||
explosion(src.loc,10,15,20,40)
|
||||
if(src) del(src)
|
||||
return
|
||||
|
||||
var/gain = 0
|
||||
if(is_type_in_list(A, uneatable))
|
||||
return 0
|
||||
@@ -249,11 +240,18 @@ var/global/list/uneatable = list(
|
||||
A:gib()
|
||||
sleep(1)
|
||||
else if(istype(A,/obj/))
|
||||
|
||||
if (istype(A,/obj/item/weapon/storage/backpack/holding))
|
||||
var/dist = max((current_size - 2),1)
|
||||
explosion(src.loc,(dist/4),(dist/2),(dist))
|
||||
return
|
||||
|
||||
if(istype(A, /obj/machinery/singularity))//Welp now you did it
|
||||
var/obj/machinery/singularity/S = A
|
||||
src.energy += S.energy
|
||||
src.energy += (S.energy/2)//Absorb most of it
|
||||
del(S)
|
||||
explosion(src.loc,20,25,30,40,1)
|
||||
var/dist = max((current_size - 2),1)
|
||||
explosion(src.loc,(dist/4),(dist/2),(dist))
|
||||
return//Quits here, the obj should be gone, hell we might be
|
||||
|
||||
if((teleport_del) && (!istype(A, /obj/machinery)))//Going to see if it does not lag less to tele items over to Z 2
|
||||
|
||||
Reference in New Issue
Block a user