mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-26 22:26:28 +01:00
Various things
Restores glass shard throwdamage to 15 because it should never have been reduced in the first plaaaace. Slightly buffs bombsuits-- you'll still die if hit by epicenter, but if you have a suit, reduces damage taken from heavy explosions. Was 90+15 + whatever pressure does to you while you're out to 60 + 1 + whatever pressure does to you while you're out. Significantly increases odds of survival, I think. Can easily be tweaked further. Fixes ipcs being affected by cloneloss-- check was placed after damage was applied so it terminated after damage was applied. Fixes tasers piercing through godmode. Now properly calls the proc instead of applying direct damage like everything else. Makes pain-immune races immune to halloss. Because pain damage doesn't really make sense against things that feel no pain. Nerfs chloral to stun for ~4 seconds + metabolism duration as opposed to 40 seconds + metabolism duration. that can go and die. Painkillers now rapidly remove halloss. If you have tramadol running in you, it will take rapid consecutive taser hits to bring you down. If you have oxy, it'll most likely take multiple people tasing you simultaneously to down you. stun batons and lasers still work just as well though.
This commit is contained in:
@@ -35,8 +35,8 @@
|
||||
//Main function variables.
|
||||
var/s_initialized = 0//Suit starts off.
|
||||
var/s_coold = 0//If the suit is on cooldown. Can be used to attach different cooldowns to abilities. Ticks down every second based on suit ntick().
|
||||
var/s_cost = 5.0//Base energy cost each ntick.
|
||||
var/s_acost = 25.0//Additional cost for additional powers active.
|
||||
var/s_cost = 0.0//Base energy cost each ntick.
|
||||
var/s_acost = 20.0//Additional cost for additional powers active.
|
||||
var/k_cost = 200.0//Kamikaze energy cost each ntick.
|
||||
var/k_damage = 1.0//Brute damage potentially done by Kamikaze each ntick.
|
||||
var/s_delay = 40.0//How fast the suit does certain things, lower is faster. Can be overridden in specific procs. Also determines adverse probability.
|
||||
|
||||
@@ -228,8 +228,8 @@
|
||||
f_loss += 60
|
||||
|
||||
if (prob(getarmor(null, "bomb")))
|
||||
b_loss = b_loss/1.5
|
||||
f_loss = f_loss/1.5
|
||||
b_loss = b_loss/3 //was 1.5
|
||||
f_loss = f_loss/3 //was 1.5
|
||||
|
||||
if (!istype(l_ear, /obj/item/clothing/ears/earmuffs) && !istype(r_ear, /obj/item/clothing/ears/earmuffs))
|
||||
ear_damage += 30
|
||||
@@ -240,7 +240,7 @@
|
||||
if(3.0)
|
||||
b_loss += 30
|
||||
if (prob(getarmor(null, "bomb")))
|
||||
b_loss = b_loss/2
|
||||
b_loss = b_loss/b_loss //was 2.
|
||||
if (!istype(l_ear, /obj/item/clothing/ears/earmuffs) && !istype(r_ear, /obj/item/clothing/ears/earmuffs))
|
||||
ear_damage += 15
|
||||
ear_deaf += 60
|
||||
|
||||
@@ -101,11 +101,15 @@
|
||||
if(HULK in mutations) return
|
||||
..()
|
||||
|
||||
/mob/living/carbon/human/adjustCloneLoss(var/amount)
|
||||
/mob/living/carbon/human/adjustHalLoss(var/amount)
|
||||
if(species.flags & NO_PAIN) //pain immune
|
||||
return
|
||||
..()
|
||||
|
||||
/mob/living/carbon/human/adjustCloneLoss(var/amount)
|
||||
if(species.flags & IS_SYNTHETIC)
|
||||
return
|
||||
..()
|
||||
|
||||
var/heal_prob = max(0, 80 - getCloneLoss())
|
||||
var/mut_prob = min(80, getCloneLoss()+10)
|
||||
@@ -264,20 +268,20 @@ This function restores all organs.
|
||||
/mob/living/carbon/human/apply_damage(var/damage = 0, var/damagetype = BRUTE, var/def_zone = null, var/blocked = 0, var/sharp = 0, var/edge = 0, var/obj/used_weapon = null)
|
||||
|
||||
//visible_message("Hit debug. [damage] | [damagetype] | [def_zone] | [blocked] | [sharp] | [used_weapon]")
|
||||
|
||||
|
||||
//Handle other types of damage
|
||||
if((damagetype != BRUTE) && (damagetype != BURN))
|
||||
if(damagetype == HALLOSS)
|
||||
if ((damage > 25 && prob(20)) || (damage > 50 && prob(60)))
|
||||
emote("scream")
|
||||
|
||||
|
||||
|
||||
|
||||
..(damage, damagetype, def_zone, blocked)
|
||||
return 1
|
||||
|
||||
//Handle BRUTE and BURN damage
|
||||
handle_suit_punctures(damagetype, damage)
|
||||
|
||||
|
||||
if(blocked >= 2) return 0
|
||||
|
||||
var/datum/organ/external/organ = null
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
/mob/living/carbon/proc/updateshock()
|
||||
src.traumatic_shock = \
|
||||
1 * src.getOxyLoss() + \
|
||||
0.7 * src.getToxLoss() + \
|
||||
0.5 * src.getToxLoss() + \
|
||||
1.5 * src.getFireLoss() + \
|
||||
1.2 * src.getBruteLoss() + \
|
||||
1.7 * src.getCloneLoss() + \
|
||||
@@ -13,6 +13,8 @@
|
||||
|
||||
if(reagents.has_reagent("alkysine"))
|
||||
src.traumatic_shock -= 10
|
||||
if(reagents.has_reagent("ethanol"))
|
||||
src.traumatic_shock -= 20
|
||||
if(reagents.has_reagent("inaprovaline"))
|
||||
src.traumatic_shock -= 25
|
||||
if(reagents.has_reagent("synaptizine"))
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
if(PARALYZE)
|
||||
Paralyse(effect/(blocked+1))
|
||||
if(AGONY)
|
||||
halloss += effect // Useful for objects that cause "subdual" damage. PAIN!
|
||||
adjustHalLoss(effect) // Useful for objects that cause "subdual" damage. PAIN! //ducknote: tasers did not previously care about armor. i assume this was deliberate and am leaving it alone since taserdamage is mitigated by siemens
|
||||
if(IRRADIATE)
|
||||
radiation += max((((effect - (effect*(getarmor(null, "rad")/100))))/(blocked+1)),0)//Rads auto check armor
|
||||
if(STUTTER)
|
||||
|
||||
@@ -813,6 +813,7 @@ datum
|
||||
if (volume > overdose)
|
||||
M.hallucination = max(M.hallucination, 2)
|
||||
..()
|
||||
M.adjustHalLoss(-5)
|
||||
return
|
||||
|
||||
tramadol
|
||||
@@ -827,6 +828,7 @@ datum
|
||||
if (volume > overdose)
|
||||
M.hallucination = max(M.hallucination, 2)
|
||||
..()
|
||||
M.adjustHalLoss(-20)
|
||||
return
|
||||
|
||||
oxycodone
|
||||
@@ -842,6 +844,7 @@ datum
|
||||
M.druggy = max(M.druggy, 10)
|
||||
M.hallucination = max(M.hallucination, 3)
|
||||
..()
|
||||
M.adjustHalLoss(-70)
|
||||
return
|
||||
|
||||
|
||||
@@ -1973,7 +1976,7 @@ datum
|
||||
M.confused += 2
|
||||
M.drowsyness += 2
|
||||
if(2 to 199)
|
||||
M.Weaken(30)
|
||||
M.Weaken(2)
|
||||
if(200 to INFINITY)
|
||||
M.sleeping += 1
|
||||
..()
|
||||
|
||||
Reference in New Issue
Block a user