From 12c2b6cf39a9f45ba0da85b1020558d7524cb6de Mon Sep 17 00:00:00 2001 From: "sieve32@gmail.com" Date: Tue, 14 Aug 2012 22:50:09 +0000 Subject: [PATCH] -DNA modifiers have some options available when there is no occupant, mainly so you can mess with the buffer and make injectors. -Pepper spray fits on sec belts again -Ion rifle emp_act() was changed so that it is only effected by severity 1, meaning that it won't be EMPed by its own shot any more (Unless someone is able to shoot himself with it) -The HONK mech panel was updated to be current with the main one, though if someone here is an html wizard they could *probably* do away with having a seperate menu to handle the extra stuff Fixes Issue 772 Fixes Issue 713 Fixes Issue 781 git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4410 316c924e-a436-60f5-8080-3fe189b3f50e --- code/game/dna.dm | 22 ++++++++++++- code/game/mecha/combat/honker.dm | 33 ++++++++++++------- code/game/objects/storage/belt.dm | 2 +- .../projectiles/guns/energy/special.dm | 7 +++- html/changelog.html | 10 ++++++ 5 files changed, 60 insertions(+), 14 deletions(-) diff --git a/code/game/dna.dm b/code/game/dna.dm index 59ebdfd69d..1ede0cf37e 100644 --- a/code/game/dna.dm +++ b/code/game/dna.dm @@ -902,7 +902,7 @@ return if(!istype(usr.loc, /turf)) return - if(!src || !src.connected || !src.connected.occupant || !src.connected.occupant.dna) + if(!src || !src.connected) return if ((usr.contents.Find(src) || in_range(src, usr) && istype(src.loc, /turf)) || (istype(usr, /mob/living/silicon))) usr.machine = src @@ -911,6 +911,10 @@ src.connected.locked = !( src.connected.locked ) //////////////////////////////////////////////////////// if (href_list["genpulse"]) + if(!src.connected.occupant || !src.connected.occupant.dna)//Makes sure someone is in there (And valid) before trying anything + src.temphtml = text("No viable occupant detected.")//More than anything, this just acts as a sanity check in case the option DOES appear for whatever reason + usr << browse(temphtml, "window=scannernew;size=550x650") + onclose(usr, "scannernew") src.delete = 1 src.temphtml = text("Working ... Please wait ([] Seconds)", src.radduration) usr << browse(temphtml, "window=scannernew;size=550x650") @@ -943,11 +947,19 @@ src.temphtml += text("-- Intesity ++
", src, src) src.delete = 0 if (href_list["radleplus"]) + if(!src.connected.occupant || !src.connected.occupant.dna) + src.temphtml = text("No viable occupant detected.") + usr << browse(temphtml, "window=scannernew;size=550x650") + onclose(usr, "scannernew") if (src.radduration < 20) src.radduration++ src.radduration++ dopage(src,"radset") if (href_list["radleminus"]) + if(!src.connected.occupant || !src.connected.occupant.dna) + src.temphtml = text("No viable occupant detected.") + usr << browse(temphtml, "window=scannernew;size=550x650") + onclose(usr, "scannernew") if (src.radduration > 2) src.radduration-- src.radduration-- @@ -962,6 +974,10 @@ dopage(src,"radset") //////////////////////////////////////////////////////// if (href_list["unimenu"]) + if(!src.connected.occupant || !src.connected.occupant.dna) + src.temphtml = text("No viable occupant detected.") + usr << browse(temphtml, "window=scannernew;size=550x650") + onclose(usr, "scannernew") //src.temphtml = text("Unique Identifier: []

", src.connected.occupant.dna.uni_identity) //src.temphtml = text("Unique Identifier: [getleftblocks(src.connected.occupant.dna.uni_identity,uniblock,3)][src.subblock == 1 ? ""+getblock(getblock(src.connected.occupant.dna.uni_identity,src.uniblock,3),1,1)+"" : getblock(getblock(src.connected.occupant.dna.uni_identity,src.uniblock,3),1,1)][src.subblock == 2 ? ""+getblock(getblock(src.connected.occupant.dna.uni_identity,src.uniblock,3),2,1)+"" : getblock(getblock(src.connected.occupant.dna.uni_identity,src.uniblock,3),2,1)][src.subblock == 3 ? ""+getblock(getblock(src.connected.occupant.dna.uni_identity,src.uniblock,3),3,1)+"" : getblock(getblock(src.connected.occupant.dna.uni_identity,src.uniblock,3),3,1)][getrightblocks(src.connected.occupant.dna.uni_identity,uniblock,3)]

") @@ -1090,6 +1106,10 @@ src.delete = 0 //////////////////////////////////////////////////////// if (href_list["rejuv"]) + if(!src.connected.occupant || !src.connected.occupant.dna) + src.temphtml = text("No viable occupant detected.") + usr << browse(temphtml, "window=scannernew;size=550x650") + onclose(usr, "scannernew") var/mob/living/carbon/human/H = src.connected.occupant if(H) if (H.reagents.get_reagent_amount("inaprovaline") < 60) diff --git a/code/game/mecha/combat/honker.dm b/code/game/mecha/combat/honker.dm index a874ec9805..bf7aac9c92 100644 --- a/code/game/mecha/combat/honker.dm +++ b/code/game/mecha/combat/honker.dm @@ -35,29 +35,39 @@ return /obj/mecha/combat/honker/get_stats_part() + var/integrity = health/initial(health)*100 var/cell_charge = get_charge() - var/output = {"[internal_damage&MECHA_INT_FIRE?"INTERNAL FIRE
":null] + var/tank_pressure = internal_tank ? round(internal_tank.return_pressure(),0.01) : "None" + var/tank_temperature = internal_tank ? internal_tank.return_temperature() : "Unknown" + var/cabin_pressure = round(return_pressure(),0.01) + var/output = {"[report_internal_damage()] + [integrity<30?"DAMAGE LEVEL CRITICAL
":null] [internal_damage&MECHA_INT_TEMP_CONTROL?"CLOWN SUPPORT SYSTEM MALFUNCTION
":null] [internal_damage&MECHA_INT_TANK_BREACH?"GAS TANK HONK
":null] [internal_damage&MECHA_INT_CONTROL_LOST?"HONK-A-DOODLE - Recalibrate
":null] - IntegriHONK: [health/initial(health)*100] %)
- PowerHONK charge: [isnull(cell_charge)?"Someone HONKed powerHonk!!!":"[cell.percent()]%"])
- Air source: [use_internal_tank?"Internal AirHONK":"EnvironHONK"]
- AirHONK pressure: [src.return_pressure()]HoNKs
- Internal HONKature: [src.return_temperature()]°honK|[src.return_temperature() - T0C]°honCk
+ IntegriHONK: [integrity]%
+ PowerHONK charge: [isnull(cell_charge)?"No powercell installed":"[cell.percent()]%"]
+ Air source: [use_internal_tank?"Internal Airtank":"Environment"]
+ AirHONK pressure: [tank_pressure]kPa
+ AirHONK temperature: [tank_temperature]°K|[tank_temperature - T0C]°C
+ HONK pressure: [cabin_pressure>WARNING_HIGH_PRESSURE ? "[cabin_pressure]": cabin_pressure]kPa
+ HONK temperature: [return_temperature()]°K|[return_temperature() - T0C]°C
Lights: [lights?"on":"off"]
+ [src.dna?"DNA-locked:
[src.dna] \[Reset\]
":null] "} return output - /obj/mecha/combat/honker/get_stats_html() var/output = {" [src.name] data @@ -68,8 +78,7 @@ setInterval(function(){ window.location='byond://?src=\ref[src]&update_content=1'; document.body.style.color = get_rand_color_string(); - document.body.style.background = get_rand_color_string(); - + document.body.style.background = get_rand_color_string(); }, 1000); } @@ -87,7 +96,7 @@ } - +
[src.get_stats_part()]
@@ -95,7 +104,9 @@ [src.get_equipment_list()]
+
[src.get_commands()] +
"} diff --git a/code/game/objects/storage/belt.dm b/code/game/objects/storage/belt.dm index 68bd8dc33c..bc403b705b 100644 --- a/code/game/objects/storage/belt.dm +++ b/code/game/objects/storage/belt.dm @@ -105,7 +105,7 @@ storage_slots = 4 can_hold = list( "/obj/item/weapon/grenade/flashbang", - "/obj/item/weapon/pepperspray", + "/obj/item/weapon/reagent_containers/spray/pepper", "/obj/item/weapon/handcuffs", "/obj/item/device/flash", "/obj/item/clothing/glasses", diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 2a0357a7ab..816a07d22c 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -10,7 +10,12 @@ charge_cost = 100 projectile_type = "/obj/item/projectile/ion" - +/obj/item/weapon/gun/energy/ionrifle/emp_act(severity) + if(severity <= 2) + power_supply.use(round(power_supply.maxcharge / severity)) + update_icon() + else + return /obj/item/weapon/gun/energy/decloner name = "biological demolecularisor" diff --git a/html/changelog.html b/html/changelog.html index f517da49e4..d077584d6a 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -47,6 +47,16 @@ should be listed in the changelog upon commit tho. Thanks. --> +
+

August 14, 2012

+

Sieve updated:

+ +
+

August 11, 2012

Sieve updated: