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
This commit is contained in:
CIB
2012-03-21 13:00:31 -07:00
15 changed files with 3272 additions and 3225 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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))

View File

@@ -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)

View File

@@ -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()

View File

@@ -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)

View File

@@ -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()

View File

@@ -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))

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 213 KiB

After

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 53 KiB

After

Width:  |  Height:  |  Size: 54 KiB

File diff suppressed because it is too large Load Diff