Merge pull request #725 from Erthilo/master
New Engineering Space Suits, health analysers detect bone fractures, pulling lying down people is slower, and some fixes
@@ -251,7 +251,7 @@
|
||||
var/temphtml = null
|
||||
var/obj/machinery/dna_scanner/connected = null
|
||||
var/obj/item/weapon/disk/data/diskette = null
|
||||
var/message = 0
|
||||
var/list/message = list()
|
||||
anchored = 1.0
|
||||
use_power = 1
|
||||
idle_power_usage = 10
|
||||
|
||||
@@ -855,9 +855,11 @@
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/scan_consolenew/attack_hand(user as mob)
|
||||
if(message == 0)
|
||||
if(..())
|
||||
return
|
||||
if(!(user in message))
|
||||
user << "\blue This machine looks extremely complex. You'd probably need a decent knowledge of Genetics to understand it."
|
||||
message += 1
|
||||
message += user
|
||||
var/dat
|
||||
if (src.delete && src.temphtml) //Window in buffer but its just simple message, so nothing
|
||||
src.delete = src.delete
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
var/obj/item/weapon/disk/data/diskette = null //Mostly so the geneticist can steal everything.
|
||||
var/wantsscan = 1
|
||||
var/wantspod = 1
|
||||
var/message = 0
|
||||
var/list/message = list()
|
||||
|
||||
//The return of data disks?? Just for transferring between genetics machine/cloning machine.
|
||||
//TO-DO: Make the genetics machine accept them.
|
||||
@@ -148,9 +148,9 @@
|
||||
return attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/cloning/attack_hand(mob/user as mob)
|
||||
if(message == 0)
|
||||
if(!(user in message))
|
||||
user << "\blue This machine looks extremely complex. You'd probably need a decent knowledge of Genetics to understand it."
|
||||
message += 1
|
||||
message += user
|
||||
user.machine = src
|
||||
add_fingerprint(user)
|
||||
if(stat & (BROKEN|NOPOWER))
|
||||
|
||||
@@ -308,10 +308,13 @@ proc/analyze_health_less_info(mob/living/carbon/M as mob, mob/user as mob)
|
||||
user.show_message(text("\red Significant brain damage detected. Subject may have had a concussion."), 1)
|
||||
if (M.virus2 || M.reagents.reagent_list.len > 0)
|
||||
user.show_message(text("\red Unknown substance detected in blood."), 1)
|
||||
/* for(var/datum/organ/external/E in src)
|
||||
if (!E.broken <= 0)
|
||||
user.show_message(text("\red Bone fractures detected."), 1)*/
|
||||
//If someone can make this work I would be extremely grateful. -Erthilo
|
||||
if(istype(M,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = M
|
||||
for(var/name in H.organs)
|
||||
var/datum/organ/external/e = H.organs[name]
|
||||
if(e.broken)
|
||||
user.show_message(text("\red Bone fractures detected. Advanced scanner required for location."), 1)
|
||||
break
|
||||
return
|
||||
|
||||
/obj/item/device/healthanalyzer/attack(mob/M as mob, mob/user as mob)
|
||||
|
||||
@@ -392,4 +392,22 @@ THERMAL GLASSES
|
||||
M.disabilities &= ~1
|
||||
..()
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/engspace_helmet/attack_self()
|
||||
toggle()
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/engspace_helmet/verb/toggle()
|
||||
set category = "Object"
|
||||
set name = "Toggle Helmet Visor"
|
||||
if(src.up)
|
||||
src.up = !src.up
|
||||
src.see_face = !src.see_face
|
||||
src.flags |= HEADCOVERSEYES
|
||||
icon_state = "engspace_helmet"
|
||||
usr << "You toggle the reflective tint on."
|
||||
else
|
||||
src.up = !src.up
|
||||
src.see_face = !src.see_face
|
||||
src.flags &= ~HEADCOVERSEYES
|
||||
icon_state = "engspace_helmet_clear"
|
||||
usr << "You toggle the reflective tint off."
|
||||
usr.update_clothing()
|
||||
@@ -10,11 +10,18 @@
|
||||
name = "mining RIG helmet"
|
||||
icon_state = "rig-mining"
|
||||
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/elite
|
||||
name = "advanced RIG helmet"
|
||||
icon_state = "rig-white"
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/engspace_helmet
|
||||
name = "engineering space helmet"
|
||||
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding and a visor that can be toggled on and off."
|
||||
icon_state = "engspace_helmet"
|
||||
item_state = "engspace_helmet"
|
||||
see_face = 0.0
|
||||
var/up = 0
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/security
|
||||
name = "security RIG helmet"
|
||||
icon_state = "rig-security"
|
||||
@@ -39,6 +46,12 @@
|
||||
name = "advanced RIG suit"
|
||||
protective_temperature = 10000
|
||||
|
||||
/obj/item/clothing/suit/space/rig/engspace_suit
|
||||
name = "engineering space suit"
|
||||
desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding."
|
||||
icon_state = "engspace_suit"
|
||||
item_state = "engspace_suit"
|
||||
|
||||
/obj/item/clothing/suit/space/rig/security
|
||||
name = "security RIG suit"
|
||||
desc = "A suit specially designed for security to offer minor protection from environmental hazards, and greater protection from human hazards"
|
||||
@@ -46,4 +59,4 @@
|
||||
protective_temperature = 3000
|
||||
slowdown = 1
|
||||
armor = list(melee = 60, bullet = 10, laser = 30, energy = 5, bomb = 45, bio = 100, rad = 10)
|
||||
allowed = list(/obj/item/weapon/gun/energy/laser, /obj/item/weapon/gun/energy/pulse_rifle, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency_oxygen, /obj/item/weapon/gun/energy/taser, /obj/item/weapon/melee/baton)
|
||||
allowed = list(/obj/item/weapon/gun/energy/laser, /obj/item/weapon/gun/energy/pulse_rifle, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency_oxygen, /obj/item/weapon/gun/energy/taser, /obj/item/weapon/melee/baton)
|
||||
|
||||
@@ -166,6 +166,7 @@
|
||||
|
||||
/mob/living/carbon/human/movement_delay()
|
||||
var/tally = 0
|
||||
var/mob/M = pulling
|
||||
|
||||
if(reagents.has_reagent("hyperzine")) return -1
|
||||
|
||||
@@ -192,10 +193,10 @@
|
||||
|
||||
/*if(mutations & FAT)
|
||||
tally += 1.5*/
|
||||
if (bodytemperature < 283.222)
|
||||
if(bodytemperature < 283.222)
|
||||
tally += (283.222 - bodytemperature) / 10 * 1.75
|
||||
|
||||
if (shock_stage >= 10) tally += 3
|
||||
if(shock_stage >= 10) tally += 3
|
||||
|
||||
if(tally < 0)
|
||||
tally = 0
|
||||
@@ -203,6 +204,9 @@
|
||||
if(mutations & mRun)
|
||||
tally = 0
|
||||
|
||||
if(istype(M) && M.lying) //Pulling lying down people is slower
|
||||
tally += 3
|
||||
|
||||
return tally
|
||||
|
||||
/mob/living/carbon/human/Stat()
|
||||
|
||||
@@ -350,7 +350,10 @@
|
||||
|
||||
/mob/living/silicon/robot/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if (istype(W, /obj/item/weapon/weldingtool) && W:welding)
|
||||
if (W:remove_fuel(0))
|
||||
if(getBruteLoss() == 0)
|
||||
user << "There are no dents to fix here!"
|
||||
return
|
||||
else if (W:remove_fuel(0))
|
||||
bruteloss -= 30
|
||||
if(getBruteLoss() < 0) bruteloss = 0
|
||||
updatehealth()
|
||||
@@ -363,8 +366,11 @@
|
||||
|
||||
else if(istype(W, /obj/item/weapon/cable_coil) && wiresexposed)
|
||||
var/obj/item/weapon/cable_coil/coil = W
|
||||
if(getFireLoss() == 0)
|
||||
user << "There are no burnt wires here!"
|
||||
return
|
||||
else if(getFireLoss() < 0) adjustFireLoss(0)
|
||||
adjustFireLoss(-30)
|
||||
if(getFireLoss() < 0) adjustFireLoss(0)
|
||||
updatehealth()
|
||||
coil.use(1)
|
||||
for(var/mob/O in viewers(user, null))
|
||||
|
||||
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 107 KiB After Width: | Height: | Size: 108 KiB |
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 107 KiB |
|
Before Width: | Height: | Size: 213 KiB After Width: | Height: | Size: 216 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 54 KiB |