A lot of fixes to autopsy.

- Projectiles now leave wounds that can be scanned through autopsy.
- The "fake" weapons selected by the scanner are no longer completely random.
- The scanner now displays age and severity of the wound.
This commit is contained in:
cib
2012-01-28 18:04:59 -08:00
parent e14dfc5ace
commit 179d5a55ea
4 changed files with 43 additions and 27 deletions
@@ -96,7 +96,7 @@ emp_act
var/armor = run_armor_check(affecting, "melee", "Your armor has protected you from a hit to the [hit_area].", "Your armor has softened hit to your [hit_area].")
if(armor >= 2) return 0
if(!I.force) return 0
apply_damage(I.force, I.damtype, affecting, armor, is_cut(I), I)
apply_damage(I.force, I.damtype, affecting, armor, is_cut(I), I.name)
var/bloody = 0
if((I.damtype == BRUTE) && prob(25 + (I.force * 2)))
+1 -1
View File
@@ -50,6 +50,6 @@
P.on_hit(src,2)
return 2
if(!P.nodamage)
apply_damage((P.damage/(absorb+1)), P.damage_type)
apply_damage((P.damage/(absorb+1)), P.damage_type, used_weapon = P.name)
P.on_hit(src, absorb)
return absorb
+13 -13
View File
@@ -14,19 +14,19 @@
/datum/wound
var
weapon_type = null
pretend_weapon_type = null
weapon = null
pretend_weapon = null
damage = 0
hits = 0
scar = 0
time_inflicted = 0
proc/copy()
var/datum/wound/W = new()
W.weapon_type = src.weapon_type
W.pretend_weapon_type = src.pretend_weapon_type
W.weapon = src.weapon
W.pretend_weapon = src.pretend_weapon
W.damage = src.damage
W.hits = src.hits
W.scar = src.scar
W.time_inflicted = src.time_inflicted
return W
/****************************************************
@@ -131,20 +131,20 @@
if(brute_dam + burn_dam == 0)
for(var/V in weapon_wounds)
var/datum/wound/W = weapon_wounds[V]
W.scar = 1
del W
weapon_wounds = list()
return update_icon()
proc/add_wound(var/obj/item/used_weapon, var/damage)
var/weapon_type = "[used_weapon.type]"
var/datum/wound/W = weapon_wounds[weapon_type]
proc/add_wound(var/used_weapon, var/damage)
var/datum/wound/W = weapon_wounds[used_weapon]
if(!W)
W = new()
W.weapon_type = used_weapon.type
weapon_wounds[weapon_type] = W
W.weapon = used_weapon
weapon_wounds[used_weapon] = W
W.hits += 1
W.damage += damage
W.time_inflicted = world.time