mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
Vampires bugfixes (#29349)
This commit is contained in:
@@ -254,14 +254,16 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
// Vision-related changes.
|
// Vision-related changes.
|
||||||
if (/datum/power/vampire/mature in current_powers)
|
if (locate(/datum/power/vampire/vision) in current_powers)
|
||||||
H.change_sight(adding = SEE_TURFS|SEE_MOBS|SEE_OBJS)
|
H.change_sight(adding = SEE_MOBS)
|
||||||
|
|
||||||
|
if (locate(/datum/power/vampire/mature) in current_powers)
|
||||||
|
H.change_sight(adding = SEE_TURFS|SEE_OBJS)
|
||||||
H.see_in_dark = 8
|
H.see_in_dark = 8
|
||||||
H.see_invisible = SEE_INVISIBLE_MINIMUM
|
H.see_invisible = SEE_INVISIBLE_MINIMUM
|
||||||
|
|
||||||
else if (/datum/power/vampire/vision in current_powers)
|
/datum/role/vampire/proc/is_mature_or_has_vision()
|
||||||
H.change_sight(adding = SEE_MOBS)
|
return (locate(/datum/power/vampire/vision) in current_powers) || (locate(/datum/power/vampire/mature) in current_powers)
|
||||||
|
|
||||||
|
|
||||||
/datum/role/vampire/proc/handle_enthrall(var/datum/mind/enthralled)
|
/datum/role/vampire/proc/handle_enthrall(var/datum/mind/enthralled)
|
||||||
if (!istype(enthralled))
|
if (!istype(enthralled))
|
||||||
@@ -312,11 +314,11 @@
|
|||||||
|
|
||||||
if((T.get_lumcount() * 10) <= 2)
|
if((T.get_lumcount() * 10) <= 2)
|
||||||
H.alphas["vampire_cloak"] = round((255 * 0.15))
|
H.alphas["vampire_cloak"] = round((255 * 0.15))
|
||||||
if(/datum/power/vampire/shadow in current_powers)
|
if(locate(/datum/power/vampire/shadow) in current_powers)
|
||||||
H.color = "#000000"
|
H.color = "#000000"
|
||||||
return TRUE
|
return TRUE
|
||||||
else
|
else
|
||||||
if(/datum/power/vampire/shadow in current_powers)
|
if(locate(/datum/power/vampire/shadow) in current_powers)
|
||||||
H.alphas["vampire_cloak"] = round((255 * 0.15))
|
H.alphas["vampire_cloak"] = round((255 * 0.15))
|
||||||
else
|
else
|
||||||
H.alphas["vampire_cloak"] = round((255 * 0.80))
|
H.alphas["vampire_cloak"] = round((255 * 0.80))
|
||||||
@@ -357,7 +359,7 @@
|
|||||||
if(prob(35))
|
if(prob(35))
|
||||||
to_chat(H, "<span class='danger'>This ground is blessed. Get away, or splatter it with blood to make it safe for you.</span>")
|
to_chat(H, "<span class='danger'>This ground is blessed. Get away, or splatter it with blood to make it safe for you.</span>")
|
||||||
|
|
||||||
if((/datum/power/vampire/mature in current_powers) && (istype(get_area(H), /area/chapel))) //stay out of the chapel unless you want to turn into a pile of ashes
|
if((locate(/datum/power/vampire/mature) in current_powers) && (istype(get_area(H), /area/chapel))) //stay out of the chapel unless you want to turn into a pile of ashes
|
||||||
nullified = max(5, nullified + 2)
|
nullified = max(5, nullified + 2)
|
||||||
if(prob(35))
|
if(prob(35))
|
||||||
to_chat(H, "<span class='sinister'>You feel yourself growing weaker.</span>")
|
to_chat(H, "<span class='sinister'>You feel yourself growing weaker.</span>")
|
||||||
@@ -367,14 +369,14 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
if(!nullified) //Checks to see if you can benefit from your vamp current_powers here
|
if(!nullified) //Checks to see if you can benefit from your vamp current_powers here
|
||||||
if(!(/datum/power/vampire/mature in current_powers))
|
if(!(locate(/datum/power/vampire/mature) in current_powers))
|
||||||
smitetemp -= 1
|
smitetemp -= 1
|
||||||
if(!(/datum/power/vampire/shadow in current_powers))
|
if(!(locate(/datum/power/vampire/shadow) in current_powers))
|
||||||
var/turf/T = get_turf(H)
|
var/turf/T = get_turf(H)
|
||||||
if((T.get_lumcount() * 10) < 2)
|
if((T.get_lumcount() * 10) < 2)
|
||||||
smitetemp -= 1
|
smitetemp -= 1
|
||||||
|
|
||||||
if(!(/datum/power/vampire/undying in current_powers))
|
if(!(locate(/datum/power/vampire/undying) in current_powers))
|
||||||
smitetemp -= 1
|
smitetemp -= 1
|
||||||
|
|
||||||
if(smitetemp <= 0) //if you weren't smote by the tile you're on, remove a little holy
|
if(smitetemp <= 0) //if you weren't smote by the tile you're on, remove a little holy
|
||||||
@@ -446,7 +448,7 @@
|
|||||||
var/mob/living/carbon/human/H = antag.current
|
var/mob/living/carbon/human/H = antag.current
|
||||||
if (!istype(H))
|
if (!istype(H))
|
||||||
return
|
return
|
||||||
if(/datum/power/vampire/mature in current_powers)
|
if(locate(/datum/power/vampire/mature) in current_powers)
|
||||||
to_chat(H, "<span class='danger'>A freezing liquid permeates your bloodstream. Your vampiric powers fade and your insides burn.</span>")
|
to_chat(H, "<span class='danger'>A freezing liquid permeates your bloodstream. Your vampiric powers fade and your insides burn.</span>")
|
||||||
H.take_organ_damage(0, 5) //FIRE, MAGIC FIRE THAT BURNS ROBOTIC LIMBS TOO!
|
H.take_organ_damage(0, 5) //FIRE, MAGIC FIRE THAT BURNS ROBOTIC LIMBS TOO!
|
||||||
smitecounter += 10 //50 units to catch on fire. Generally you'll get fucked up quickly
|
smitecounter += 10 //50 units to catch on fire. Generally you'll get fucked up quickly
|
||||||
@@ -463,7 +465,7 @@
|
|||||||
var/mob/living/carbon/human/H = antag.current
|
var/mob/living/carbon/human/H = antag.current
|
||||||
if (!istype(H))
|
if (!istype(H))
|
||||||
return
|
return
|
||||||
if(!(/datum/power/vampire/undying in current_powers))
|
if(!(locate(/datum/power/vampire/undying) in current_powers))
|
||||||
if(method == TOUCH)
|
if(method == TOUCH)
|
||||||
if(H.wear_mask)
|
if(H.wear_mask)
|
||||||
to_chat(H, "<span class='warning'>Your mask protects you from the holy water!</span>")
|
to_chat(H, "<span class='warning'>Your mask protects you from the holy water!</span>")
|
||||||
@@ -477,7 +479,7 @@
|
|||||||
if(prob(15) && volume >= 30)
|
if(prob(15) && volume >= 30)
|
||||||
var/datum/organ/external/head/head_organ = H.get_organ(LIMB_HEAD)
|
var/datum/organ/external/head/head_organ = H.get_organ(LIMB_HEAD)
|
||||||
if(head_organ)
|
if(head_organ)
|
||||||
if(!(/datum/power/vampire/mature in current_powers))
|
if(!(locate(/datum/power/vampire/mature) in current_powers))
|
||||||
to_chat(H, "<span class='danger'>A freezing liquid covers your face. Its melting!</span>")
|
to_chat(H, "<span class='danger'>A freezing liquid covers your face. Its melting!</span>")
|
||||||
smitecounter += 60 //Equivalent from metabolizing all this holy water normally
|
smitecounter += 60 //Equivalent from metabolizing all this holy water normally
|
||||||
if(head_organ.take_damage(30, 0))
|
if(head_organ.take_damage(30, 0))
|
||||||
@@ -485,16 +487,16 @@
|
|||||||
head_organ.disfigure("burn")
|
head_organ.disfigure("burn")
|
||||||
H.audible_scream()
|
H.audible_scream()
|
||||||
else
|
else
|
||||||
to_chat(H, "<span class='warning'>A freezing liquid covers your face. Your vampiric current_powers protect you!</span>")
|
to_chat(H, "<span class='warning'>A freezing liquid covers your face. Your vampiric current powers protect you!</span>")
|
||||||
smitecounter += 12 //Ditto above
|
smitecounter += 12 //Ditto above
|
||||||
|
|
||||||
else
|
else
|
||||||
if(!(/datum/power/vampire/mature in current_powers))
|
if(!(locate(/datum/power/vampire/mature) in current_powers))
|
||||||
to_chat(H, "<span class='danger'>You are doused with a freezing liquid. You're melting!</span>")
|
to_chat(H, "<span class='danger'>You are doused with a freezing liquid. You're melting!</span>")
|
||||||
H.take_organ_damage(min(15, volume * 2)) //Uses min() and volume to make sure they aren't being sprayed in trace amounts (1 unit != insta rape) -- Doohl
|
H.take_organ_damage(min(15, volume * 2)) //Uses min() and volume to make sure they aren't being sprayed in trace amounts (1 unit != insta rape) -- Doohl
|
||||||
smitecounter += volume * 2
|
smitecounter += volume * 2
|
||||||
else
|
else
|
||||||
to_chat(H, "<span class='warning'>You are doused with a freezing liquid. Your vampiric current_powers protect you!</span>")
|
to_chat(H, "<span class='warning'>You are doused with a freezing liquid. Your vampiric current powers protect you!</span>")
|
||||||
smitecounter += volume * 0.4
|
smitecounter += volume * 0.4
|
||||||
else
|
else
|
||||||
if(H.acidable())
|
if(H.acidable())
|
||||||
|
|||||||
@@ -367,7 +367,7 @@
|
|||||||
/obj/effect/decal/cleanable/salt/proc/checkVamp(var/mob/living/theVamp)
|
/obj/effect/decal/cleanable/salt/proc/checkVamp(var/mob/living/theVamp)
|
||||||
if(isvampire(theVamp))
|
if(isvampire(theVamp))
|
||||||
var/datum/role/vampire/V = isvampire(theVamp)
|
var/datum/role/vampire/V = isvampire(theVamp)
|
||||||
if(/datum/power/vampire/charisma in V.current_powers) //He's already a powerful vamp, the check is no longer meta
|
if(locate(/datum/power/vampire/charisma) in V.current_powers) //He's already a powerful vamp, the check is no longer meta
|
||||||
return TRUE
|
return TRUE
|
||||||
return FALSE
|
return FALSE
|
||||||
|
|
||||||
|
|||||||
@@ -486,7 +486,7 @@
|
|||||||
var/mob/living/carbon/human/H = M
|
var/mob/living/carbon/human/H = M
|
||||||
var/datum/role/vampire/V = isvampire(H)
|
var/datum/role/vampire/V = isvampire(H)
|
||||||
if(V)
|
if(V)
|
||||||
if(/datum/power/vampire/mature in V.current_powers)
|
if(locate(/datum/power/vampire/mature) in V.current_powers)
|
||||||
V.smitecounter += 30 //Smithe the shit out of him. Four strikes and he's out
|
V.smitecounter += 30 //Smithe the shit out of him. Four strikes and he's out
|
||||||
|
|
||||||
if(istype(M,/mob/living/simple_animal))
|
if(istype(M,/mob/living/simple_animal))
|
||||||
@@ -500,7 +500,7 @@
|
|||||||
if(user.mind)
|
if(user.mind)
|
||||||
if(ishuman(user))
|
if(ishuman(user))
|
||||||
var/datum/role/vampire/V = isvampire(user)
|
var/datum/role/vampire/V = isvampire(user)
|
||||||
if(V && !(/datum/power/vampire/undying in V.current_powers))
|
if(V && !(locate(/datum/power/vampire/undying) in V.current_powers))
|
||||||
V.smitecounter += 60
|
V.smitecounter += 60
|
||||||
to_chat(user, "<span class='danger'>\The [src] sears your hand!</span>")
|
to_chat(user, "<span class='danger'>\The [src] sears your hand!</span>")
|
||||||
|
|
||||||
|
|||||||
@@ -500,7 +500,7 @@
|
|||||||
var/mob/living/carbon/human/H = user
|
var/mob/living/carbon/human/H = user
|
||||||
if (isvampire(H))
|
if (isvampire(H))
|
||||||
var/datum/role/vampire/V = H.mind.GetRole(VAMPIRE)
|
var/datum/role/vampire/V = H.mind.GetRole(VAMPIRE)
|
||||||
if (!(/datum/power/vampire/mature in V.current_powers))
|
if (!(locate(/datum/power/vampire/mature) in V.current_powers))
|
||||||
to_chat(H, "<span class='notice'>You don't see anything.</span>")
|
to_chat(H, "<span class='notice'>You don't see anything.</span>")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -49,7 +49,7 @@
|
|||||||
var/datum/role/vampire/V = isvampire(H)
|
var/datum/role/vampire/V = isvampire(H)
|
||||||
|
|
||||||
if(V && isReligiousLeader(user)) //Fuck up vampires by smiting the shit out of them. Shock and Awe!
|
if(V && isReligiousLeader(user)) //Fuck up vampires by smiting the shit out of them. Shock and Awe!
|
||||||
if(/datum/power/vampire/mature in V.current_powers)
|
if(locate(/datum/power/vampire/mature) in V.current_powers)
|
||||||
to_chat(H, "<span class='warning'>\The [src]'s power violently interferes with your own!</span>")
|
to_chat(H, "<span class='warning'>\The [src]'s power violently interferes with your own!</span>")
|
||||||
if(V.nullified < 5) //Don't actually reduce their debuff if it's over 5
|
if(V.nullified < 5) //Don't actually reduce their debuff if it's over 5
|
||||||
V.nullified = min(5, V.nullified + 2)
|
V.nullified = min(5, V.nullified + 2)
|
||||||
@@ -87,7 +87,7 @@
|
|||||||
to_chat(user, "<span class='notice'>\The [src] is teeming with divine power. You feel like you could [fluff_pickup] a horde of undead with this.</span>")
|
to_chat(user, "<span class='notice'>\The [src] is teeming with divine power. You feel like you could [fluff_pickup] a horde of undead with this.</span>")
|
||||||
if(ishuman(user)) //Typecasting, only humans can be vampires
|
if(ishuman(user)) //Typecasting, only humans can be vampires
|
||||||
var/datum/role/vampire/V = isvampire(user)
|
var/datum/role/vampire/V = isvampire(user)
|
||||||
if(V && !(/datum/power/vampire/undying in V.current_powers))
|
if(V && !(locate(/datum/power/vampire/undying) in V.current_powers))
|
||||||
V.smitecounter += 60
|
V.smitecounter += 60
|
||||||
to_chat(user, "<span class='danger'>You feel an unwanted presence as you pick up the rod. Your body feels like it is burning from the inside!</span>")
|
to_chat(user, "<span class='danger'>You feel an unwanted presence as you pick up the rod. Your body feels like it is burning from the inside!</span>")
|
||||||
|
|
||||||
|
|||||||
@@ -159,7 +159,7 @@
|
|||||||
if(ishuman(M)) //Only humans can be vampires or cultists.
|
if(ishuman(M)) //Only humans can be vampires or cultists.
|
||||||
var/mob/living/carbon/human/H = M
|
var/mob/living/carbon/human/H = M
|
||||||
V = isvampire(M)
|
V = isvampire(M)
|
||||||
if(V && (/datum/power/vampire/mature in V.current_powers) && my_rel.leadsThisReligion(user)) //The user is a "mature" Vampire, fuck up his vampiric powers and hurt his head
|
if(V && (locate(/datum/power/vampire/mature) in V.current_powers) && my_rel.leadsThisReligion(user)) //The user is a "mature" Vampire, fuck up his vampiric powers and hurt his head
|
||||||
to_chat(H, "<span class='warning'>[my_rel.deity_name]'s power nullifies your own!</span>")
|
to_chat(H, "<span class='warning'>[my_rel.deity_name]'s power nullifies your own!</span>")
|
||||||
if(V.nullified < 5) //Don't actually reduce their debuff if it's over 5
|
if(V.nullified < 5) //Don't actually reduce their debuff if it's over 5
|
||||||
V.nullified = min(5, V.nullified + 2)
|
V.nullified = min(5, V.nullified + 2)
|
||||||
@@ -213,7 +213,7 @@
|
|||||||
var/mob/living/carbon/human/H = user
|
var/mob/living/carbon/human/H = user
|
||||||
var/datum/role/vampire/V = isvampire(H)
|
var/datum/role/vampire/V = isvampire(H)
|
||||||
var/datum/role/cultist/C = isanycultist(H)
|
var/datum/role/cultist/C = isanycultist(H)
|
||||||
if(V && (!(/datum/power/vampire/undying in V.current_powers))) //We are a Vampire, we aren't very smart
|
if(V && (!(locate(/datum/power/vampire/undying) in V.current_powers))) //We are a Vampire, we aren't very smart
|
||||||
to_chat(H, "<span class ='danger'>[my_rel.deity_name]'s power channels through \the [src]. You feel extremely uneasy as you grab it!</span>")
|
to_chat(H, "<span class ='danger'>[my_rel.deity_name]'s power channels through \the [src]. You feel extremely uneasy as you grab it!</span>")
|
||||||
V.smitecounter += 10
|
V.smitecounter += 10
|
||||||
if(C) //We are a Cultist, we aren't very smart either, but at least there will be no consequences for us
|
if(C) //We are a Cultist, we aren't very smart either, but at least there will be no consequences for us
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
/obj/structure/mirror/proc/vampire_check(mob/living/user, mob/living/carbon/human/target)
|
/obj/structure/mirror/proc/vampire_check(mob/living/user, mob/living/carbon/human/target)
|
||||||
var/datum/role/vampire/V = isvampire(target)
|
var/datum/role/vampire/V = isvampire(target)
|
||||||
if(V && !(/datum/power/vampire/mature in V.current_powers))
|
if(V && !(locate(/datum/power/vampire/mature) in V.current_powers))
|
||||||
to_chat(user, "<span class='notice'>You don't see anything in \the [src].</span>")
|
to_chat(user, "<span class='notice'>You don't see anything in \the [src].</span>")
|
||||||
return FALSE
|
return FALSE
|
||||||
return TRUE
|
return TRUE
|
||||||
|
|||||||
@@ -71,11 +71,11 @@ var/list/stationary_hearers = list( /obj/item/device/radio/intercom,
|
|||||||
sight = copying
|
sight = copying
|
||||||
if(adding)
|
if(adding)
|
||||||
sight |= adding
|
sight |= adding
|
||||||
if(adding & (SEE_TURFS | SEE_MOBS | SEE_OBJS))
|
if((sight != oldsight) && (adding & (SEE_TURFS | SEE_MOBS | SEE_OBJS)))
|
||||||
sight &= ~SEE_BLACKNESS
|
sight &= ~SEE_BLACKNESS
|
||||||
if(removing)
|
if(removing)
|
||||||
sight &= ~removing
|
sight &= ~removing
|
||||||
if(removing & (SEE_TURFS | SEE_MOBS | SEE_OBJS))
|
if((sight != oldsight) && (removing & (SEE_TURFS | SEE_MOBS | SEE_OBJS)))
|
||||||
sight |= SEE_BLACKNESS
|
sight |= SEE_BLACKNESS
|
||||||
if(sight != oldsight)
|
if(sight != oldsight)
|
||||||
var/mob/virtualhearer/VH = mob_hearers[src]
|
var/mob/virtualhearer/VH = mob_hearers[src]
|
||||||
|
|||||||
@@ -393,7 +393,7 @@
|
|||||||
if( head && head.is_hidden_identity())
|
if( head && head.is_hidden_identity())
|
||||||
return get_worn_id_name("Unknown") //Likewise for hats
|
return get_worn_id_name("Unknown") //Likewise for hats
|
||||||
var/datum/role/vampire/V = isvampire(src)
|
var/datum/role/vampire/V = isvampire(src)
|
||||||
if(V && (/datum/power/vampire/shadow in V.current_powers) && V.ismenacing)
|
if(V && (locate(/datum/power/vampire/shadow) in V.current_powers) && V.ismenacing)
|
||||||
return get_worn_id_name("Unknown")
|
return get_worn_id_name("Unknown")
|
||||||
var/face_name = get_face_name()
|
var/face_name = get_face_name()
|
||||||
var/id_name = get_worn_id_name("")
|
var/id_name = get_worn_id_name("")
|
||||||
|
|||||||
@@ -117,14 +117,13 @@
|
|||||||
src.client.images += V.cached_images[i]
|
src.client.images += V.cached_images[i]
|
||||||
i++
|
i++
|
||||||
|
|
||||||
if (!V || (!(/datum/power/vampire/vision in V.current_powers) && !(/datum/power/vampire/mature in V.current_powers))) // Not a vampire, or a vampire but neither of the spells.
|
if (!V || !V.is_mature_or_has_vision()) // Not a vampire, or a vampire but neither of the spells.
|
||||||
change_sight(removing = SEE_MOBS)
|
change_sight(removing = SEE_MOBS)
|
||||||
if (!V || !(/datum/power/vampire/mature in V.current_powers))
|
if (!V || !(locate(/datum/power/vampire/mature) in V.current_powers))
|
||||||
change_sight(removing = SEE_TURFS|SEE_OBJS)
|
change_sight(removing = SEE_TURFS|SEE_OBJS)
|
||||||
var/datum/organ/internal/eyes/E = src.internal_organs_by_name["eyes"]
|
var/datum/organ/internal/eyes/E = src.internal_organs_by_name["eyes"]
|
||||||
if(E)
|
if(E)
|
||||||
see_in_dark = E.see_in_dark
|
see_in_dark = E.see_in_dark
|
||||||
|
|
||||||
see_invisible = see_in_dark > 2 ? SEE_INVISIBLE_LEVEL_ONE : SEE_INVISIBLE_LIVING
|
see_invisible = see_in_dark > 2 ? SEE_INVISIBLE_LEVEL_ONE : SEE_INVISIBLE_LIVING
|
||||||
|
|
||||||
// Moiving this "see invisble" thing here so that it can be overriden by xrays, vampires...
|
// Moiving this "see invisble" thing here so that it can be overriden by xrays, vampires...
|
||||||
|
|||||||
@@ -67,7 +67,7 @@
|
|||||||
C.Stun(distance_value)
|
C.Stun(distance_value)
|
||||||
if(distance_value > 1)
|
if(distance_value > 1)
|
||||||
C.Knockdown(distance_value)
|
C.Knockdown(distance_value)
|
||||||
C.stuttering += 5+distance_value * ((/datum/power/vampire/charisma in V.current_powers) ? 2 : 1) //double stutter time with Charisma
|
C.stuttering += 5+distance_value * ((locate(/datum/power/vampire/charisma) in V.current_powers) ? 2 : 1) //double stutter time with Charisma
|
||||||
if(!C.blinded)
|
if(!C.blinded)
|
||||||
C.blinded = 1
|
C.blinded = 1
|
||||||
C.blinded += max(1, distance_value)
|
C.blinded += max(1, distance_value)
|
||||||
|
|||||||
@@ -56,9 +56,9 @@
|
|||||||
return FALSE
|
return FALSE
|
||||||
|
|
||||||
user.visible_message("<span class='warning'>[user] bites \the [target]'s neck!</span>", "<span class='warning'>You bite \the [target]'s neck and begin the flow of power.</span>")
|
user.visible_message("<span class='warning'>[user] bites \the [target]'s neck!</span>", "<span class='warning'>You bite \the [target]'s neck and begin the flow of power.</span>")
|
||||||
to_chat(target, "<span class='sinister'>You feel the tendrils of evil [(/datum/power/vampire/charisma in V.current_powers) ? "aggressively" : "slowly"] invade your mind.</span>")
|
to_chat(target, "<span class='sinister'>You feel the tendrils of evil [(locate(/datum/power/vampire/charisma) in V.current_powers) ? "aggressively" : "slowly"] invade your mind.</span>")
|
||||||
|
|
||||||
if(do_mob(user, target, (/datum/power/vampire/charisma in V.current_powers) ? 150 : 300))
|
if(do_mob(user, target, (locate(/datum/power/vampire/charisma) in V.current_powers) ? 150 : 300))
|
||||||
if(user.vampire_power(blood_cost, 0)) // recheck
|
if(user.vampire_power(blood_cost, 0)) // recheck
|
||||||
V.handle_enthrall(target.mind)
|
V.handle_enthrall(target.mind)
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
world.log << "[src] has vampire spells but isn't a vampire."
|
world.log << "[src] has vampire spells but isn't a vampire."
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
var/fullpower = (/datum/power/vampire/jaunt in vampire.current_powers)
|
var/fullpower = (locate(/datum/power/vampire/jaunt) in vampire.current_powers)
|
||||||
|
|
||||||
if(src.stat > max_stat)
|
if(src.stat > max_stat)
|
||||||
to_chat(src, "<span class='warning'>You are incapacitated.</span>")
|
to_chat(src, "<span class='warning'>You are incapacitated.</span>")
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
if(restrained())
|
if(restrained())
|
||||||
to_chat(src, "<span class ='warning'> You cannot do this while restrained! </span>")
|
to_chat(src, "<span class ='warning'> You cannot do this while restrained! </span>")
|
||||||
return 0
|
return 0
|
||||||
if(!(/datum/power/vampire/charisma in V.current_powers)) //Charisma allows implanted targets to be enthralled.
|
if(!(locate(/datum/power/vampire/charisma) in V.current_powers)) //Charisma allows implanted targets to be enthralled.
|
||||||
for(var/obj/item/weapon/implant/loyalty/L in H)
|
for(var/obj/item/weapon/implant/loyalty/L in H)
|
||||||
if(L && L.implanted)
|
if(L && L.implanted)
|
||||||
implanted = TRUE
|
implanted = TRUE
|
||||||
|
|||||||
Reference in New Issue
Block a user