Merge pull request #3175 from Zuhayr/feature

Fixes from master, adds clotting to wounds.
This commit is contained in:
Chinsky
2013-06-26 23:42:02 -07:00
10 changed files with 49 additions and 11 deletions
+2 -2
View File
@@ -1,6 +1,6 @@
//Returns the world time in english
proc/worldtime2text()
return "[round(world.time / 36000)+12]:[(world.time / 600 % 60) < 10 ? add_zero(world.time / 600 % 60, 1) : world.time / 600 % 60]"
proc/worldtime2text(time = world.time)
return "[round(time / 36000)+12]:[(time / 600 % 60) < 10 ? add_zero(time / 600 % 60, 1) : time / 600 % 60]"
proc/time_stamp()
return time2text(world.timeofday, "hh:mm:ss")
+7 -1
View File
@@ -127,4 +127,10 @@ obj/machinery/recharger/wallcharger/process()
icon_state = "wrecharger1"
use_power(150)
else
icon_state = "wrecharger2"
icon_state = "wrecharger2"
obj/machinery/recharger/wallcharger/update_icon()
if(charging)
icon_state = "wrecharger1"
else
icon_state = "wrecharger0"
+6
View File
@@ -1692,6 +1692,12 @@
log_admin("[key_name(usr)] toggled gravity off.", 1)
message_admins("\blue [key_name_admin(usr)] toggled gravity off.", 1)
command_alert("Feedback surge detected in mass-distributions systems. Artifical gravity has been disabled whilst the system reinitializes. Further failures may result in a gravitational collapse and formation of blackholes. Have a nice day.")
if("wave")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","Meteor")
log_admin("[key_name(usr)] spawned a meteor wave", 1)
message_admins("\blue [key_name_admin(usr)] spawned a meteor wave.", 1)
new /datum/event/meteor_wave
if("power")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","P")
@@ -1044,6 +1044,9 @@
O.status &= ~ORGAN_DESTROYED
O.wounds.Cut()
var/datum/organ/external/head/h = organs_by_name["head"]
h.disfigured = 0
vessel.add_reagent("blood",560-vessel.total_volume)
fixblood()
for (var/obj/item/weapon/organ/head/H in world)
@@ -1053,7 +1056,8 @@
H.brainmob.mind.transfer_to(src)
del(H)
for(var/datum/organ/internal/I in internal_organs)
for(var/E in internal_organs)
var/datum/organ/internal/I = internal_organs[E]
I.damage = 0
for (var/datum/disease/virus in viruses)
@@ -1222,4 +1226,4 @@ mob/living/carbon/human/yank_out_object()
organ.status |= ORGAN_BLEEDING
organ.take_damage(rand(1,3), 0, 0)
src.adjustToxLoss(rand(1,3))
src.adjustToxLoss(rand(1,3))
+1 -1
View File
@@ -719,7 +719,7 @@ note dizziness decrements automatically in the mob's Life() proc.
stat(null,"MasterController-ERROR")
if(spell_list.len)
if(spell_list && spell_list.len)
for(var/obj/effect/proc_holder/spell/S in spell_list)
switch(S.charge_type)
if("recharge")
+2 -1
View File
@@ -96,7 +96,7 @@
if(status & ORGAN_BROKEN && prob(40) && brute)
owner.emote("scream") //getting hit on broken hand hurts
if(used_weapon)
add_autopsy_data(used_weapon, brute + burn)
add_autopsy_data("[used_weapon]", brute + burn)
var/can_cut = (prob(brute*2) || sharp) && !(status & ORGAN_ROBOT)
// If the limbs can break, make sure we don't exceed the maximum damage a limb can take before breaking
@@ -365,6 +365,7 @@
burn_dam += W.damage
if(!(status & ORGAN_ROBOT) && W.bleeding())
W.bleed_timer--
status |= ORGAN_BLEEDING
clamped |= W.clamped
+6 -2
View File
@@ -13,7 +13,8 @@
// amount of damage this wound causes
var/damage = 0
// ticks of bleeding left.
var/bleed_timer = 0
// amount of damage the current wound type requires(less means we need to apply the next healing stage)
var/min_damage = 0
@@ -71,6 +72,8 @@
// this is more robust to changes to the list
max_bleeding_stage = src.desc_list.len - max_bleeding_stage
bleed_timer += damage
// returns 1 if there's a next stage, 0 otherwise
proc/next_stage()
if(current_stage + 1 > src.desc_list.len)
@@ -136,6 +139,7 @@
// opens the wound again
proc/open_wound(damage)
src.damage += damage
bleed_timer += damage
while(src.current_stage > 1 && src.damage_list[current_stage-1] <= src.damage)
src.current_stage--
@@ -145,7 +149,7 @@
proc/bleeding()
// internal wounds don't bleed in the sense of this function
return (!(bandaged||clamped) && (damage_type == BRUISE && damage >= 20 || damage_type == CUT) && current_stage <= max_bleeding_stage && !src.internal)
return ((damage > 30 || bleed_timer > 0) && !(bandaged||clamped) && (damage_type == BRUISE && damage >= 20 || damage_type == CUT && damage >= 5) && current_stage <= max_bleeding_stage && !src.internal)
/** CUTS **/
/datum/wound/cut/small
@@ -520,7 +520,7 @@
new_item.name = name
new_item.desc = src.desc
if(talkative)
if(talkative && istype(new_item,/obj/item/weapon))
new_item.listening_to_players = 1
if(prob(25))
new_item.speaking_to_players = 1
+1 -1
View File
@@ -19,7 +19,7 @@ ORGAN_HEALTH_MULTIPLIER 100
## multiplier which influences how fast organs regenerate naturally
## 100 means normal, 50 means half
ORGAN_REGENERATION_MULTIPLIER 200
ORGAN_REGENERATION_MULTIPLIER 20
### REVIVAL ###
+17
View File
@@ -58,6 +58,16 @@ Stuff which is in development and not yet visible to players or just code relate
should be listed in the changelog upon commit though. Thanks. -->
<div class="commit sansserif">
<h2 class="date">26.06.2013</h2>
<h3 class="author">Segrain updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">Autopsy scanner properly displays time of wound infliction and death.</li>
<li class="bugfix">Autopsy scanner properly displays wounds by projectile weapons.</li>
</ul>
</div>
<div class="commit sansserif">
<<<<<<< HEAD
<h2 class="date">23.06.2013</h2>
<h3 class="author">Segrain updated:</h3>
<ul class="changes bgimages16">
@@ -73,6 +83,13 @@ should be listed in the changelog upon commit though. Thanks. -->
<li class="tweak">Some maintenance doors within RnD and Medbay have had their accesses changed. Maintenance doors in the joint areas (leading to the research shuttle, virology, and xenobiology) are now zero access. Which means anyone in those joints can enter the maintenance tunnels. This was done to add additional evacuation locations during radiation storms. Additional maintenance doors were added to the tunnels in these areas to prevent docs and scientists from running about.</li>
<li class="tweak">Starboard emergency storage isn't gone now, it's simply located in the escape wing.</li>
<li class="experiment">An engineering training room has been added to engineering. This location was previously where surgery was located. If you are new to engineering or need to brush up on your skills, please use this area for testing.</li>
=======
<h2 class="date">26.06.2013</h2>
<h3 class="author">Segrain updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">Autopsy scanner properly displays time of wound infliction and death.</li>
<li class="bugfix">Autopsy scanner properly displays wounds by projectile weapons.</li>
>>>>>>> f1e3621ec6228115a8bf0fc1c12995064b2e176f
</ul>
</div>