Fixeesss
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
desc = "Snap restraints with ease, or deal terrible damage with your bare hands."
|
||||
button_icon_state = "power_strength"
|
||||
bloodcost = 10
|
||||
cooldown = 600
|
||||
cooldown = 130
|
||||
target_range = 1
|
||||
power_activates_immediately = TRUE
|
||||
message_Trigger = ""//"Whom will you subvert to your will?"
|
||||
@@ -41,22 +41,22 @@
|
||||
|
||||
/datum/action/bloodsucker/targeted/brawn/CheckCanTarget(atom/A, display_error)
|
||||
// DEFAULT CHECKS (Distance)
|
||||
if (!..()) // Disable range notice for Brawn.
|
||||
if(!..()) // Disable range notice for Brawn.
|
||||
return FALSE
|
||||
// Must outside Closet to target anyone!
|
||||
if (!isturf(owner.loc))
|
||||
if(!isturf(owner.loc))
|
||||
return FALSE
|
||||
// Check: Self
|
||||
if (A == owner)
|
||||
if(A == owner)
|
||||
return FALSE
|
||||
// Target Type: Living
|
||||
if (isliving(A))
|
||||
if(isliving(A))
|
||||
return TRUE
|
||||
// Target Type: Door
|
||||
else if (upgrade_canDoor && istype(A, /obj/machinery/door))
|
||||
else if(upgrade_canDoor && istype(A, /obj/machinery/door))
|
||||
return TRUE
|
||||
// Target Type: Closet
|
||||
else if (upgrade_canLocker && istype(A, /obj/structure/closet))
|
||||
else if(upgrade_canLocker && istype(A, /obj/structure/closet))
|
||||
return TRUE
|
||||
return ..() // yes, FALSE! You failed if you got here! BAD TARGET
|
||||
|
||||
@@ -65,17 +65,17 @@
|
||||
var/mob/living/carbon/target = A
|
||||
var/mob/living/user = owner
|
||||
// Target Type: Mob
|
||||
if (isliving(target))
|
||||
if(isliving(target))
|
||||
var/mob/living/carbon/user_C = user
|
||||
var/hitStrength = user_C.dna.species.punchdamagehigh * 1.25 + 2
|
||||
var/hitStrength = user_C.dna.species.punchdamagehigh * 1.3 + 5
|
||||
// Knockdown!
|
||||
var/powerlevel = min(7, 1 + level_current)
|
||||
if (rand(10 + powerlevel) >= 5)
|
||||
target.visible_message("<span class='danger'>[user] has knocked [target] down!</span>", \
|
||||
"<span class='userdanger'>[user] has knocked you down!</span>", null, COMBAT_MESSAGE_RANGE)
|
||||
target.Knockdown( min(5, rand(10, 10 * powerlevel)) )
|
||||
var/powerlevel = min(5, 1 + level_current)
|
||||
if(rand(5 + powerlevel) >= 5)
|
||||
target.visible_message("<span class='danger'>[user] lands a vicious punch, sending [target] away!</span>", \
|
||||
"<span class='userdanger'>[user] has landed a horrifying punch on you, sending you flying!!</span>", null, COMBAT_MESSAGE_RANGE)
|
||||
target.Knockdown(min(5, rand(10, 10 * powerlevel)) )
|
||||
// Chance of KO
|
||||
if (rand(3 + powerlevel) >= 5 && target.stat <= UNCONSCIOUS)
|
||||
if(rand(6 + powerlevel) >= 6 && target.stat <= UNCONSCIOUS)
|
||||
target.Unconscious(40)
|
||||
// Attack!
|
||||
playsound(get_turf(target), 'sound/weapons/punch4.ogg', 60, 1, -1)
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
if(bleed_rate <= 0)
|
||||
bleed_rate = 0
|
||||
|
||||
if (HAS_TRAIT(src, TRAIT_NOPULSE)) //Bloodsuckers don't need to be here.
|
||||
if(HAS_TRAIT(src, TRAIT_NOMARROW)) //Bloodsuckers don't need to be here.
|
||||
return
|
||||
|
||||
if(bodytemperature >= TCRYO && !(HAS_TRAIT(src, TRAIT_NOCLONE))) //cryosleep or husked people do not pump the blood.
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
C.faction |= "slime"
|
||||
|
||||
/datum/species/jelly/spec_life(mob/living/carbon/human/H)
|
||||
if(H.stat == DEAD && HAS_TRAIT(src, TRAIT_NOMARROW)) //can't farm slime jelly from a dead slime/jelly person indefinitely, and no regeneration for vampires
|
||||
if(H.stat == DEAD || HAS_TRAIT(H, TRAIT_NOMARROW)) //can't farm slime jelly from a dead slime/jelly person indefinitely, and no regeneration for vampires
|
||||
return
|
||||
if(!H.blood_volume)
|
||||
H.blood_volume += 5
|
||||
|
||||
@@ -610,6 +610,8 @@ All effects don't start immediately, but rather get worse over time; the rate is
|
||||
value = 1.3
|
||||
|
||||
/datum/reagent/consumable/ethanol/bloody_mary/on_mob_life(mob/living/carbon/C)
|
||||
if((HAS_TRAIT(C, TRAIT_NOMARROW)))
|
||||
return
|
||||
if(C.blood_volume < (BLOOD_VOLUME_NORMAL*C.blood_ratio))
|
||||
C.blood_volume = min((BLOOD_VOLUME_NORMAL*C.blood_ratio), C.blood_volume + 3) //Bloody Mary quickly restores blood loss.
|
||||
..()
|
||||
|
||||
@@ -355,6 +355,8 @@ datum/reagent/medicine/styptic_powder/overdose_start(mob/living/M)
|
||||
value = 1
|
||||
|
||||
/datum/reagent/medicine/salglu_solution/on_mob_life(mob/living/carbon/M)
|
||||
if((HAS_TRAIT(M, TRAIT_NOMARROW)))
|
||||
return
|
||||
if(last_added)
|
||||
M.blood_volume -= last_added
|
||||
last_added = 0
|
||||
|
||||
@@ -38,6 +38,8 @@
|
||||
L.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"]))
|
||||
|
||||
/datum/reagent/blood/on_mob_life(mob/living/carbon/C) //Because lethals are preferred over stamina. damnifino.
|
||||
if((HAS_TRAIT(C, TRAIT_NOMARROW)))
|
||||
return //We dont want vampires getting toxed from blood
|
||||
var/blood_id = C.get_blood_id()
|
||||
if((blood_id == "blood" || blood_id == "jellyblood"))
|
||||
if(!data || !(data["blood_type"] in get_safe_blood(C.dna.blood_type))) //we only care about bloodtype here because this is where the poisoning should be
|
||||
@@ -1116,6 +1118,8 @@
|
||||
color = "#c2391d"
|
||||
|
||||
/datum/reagent/iron/on_mob_life(mob/living/carbon/C)
|
||||
if((HAS_TRAIT(C, TRAIT_NOMARROW)))
|
||||
return
|
||||
if(C.blood_volume < (BLOOD_VOLUME_NORMAL*C.blood_ratio))
|
||||
C.blood_volume += 0.01 //we'll have synthetics from medbay.
|
||||
..()
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
/datum/nanite_program/blood_restoring/check_conditions()
|
||||
if(iscarbon(host_mob))
|
||||
var/mob/living/carbon/C = host_mob
|
||||
if(C.blood_volume >= (BLOOD_VOLUME_SAFE*C.blood_ratio))
|
||||
if(C.blood_volume >= (BLOOD_VOLUME_SAFE*C.blood_ratio) || (HAS_TRAIT(C, TRAIT_NOMARROW)))
|
||||
return FALSE
|
||||
else
|
||||
return FALSE
|
||||
|
||||
Reference in New Issue
Block a user