Fixes a few more issues

This commit is contained in:
warior4356
2021-03-27 03:16:48 -07:00
parent d53d351b64
commit 579f8f2e00
6 changed files with 38 additions and 9 deletions
+18 -4
View File
@@ -180,6 +180,8 @@
..()
/datum/action/innate/cult/blood_spell/emp/Activate()
if(owner.holy_check())
return
owner.visible_message("<span class='warning'>[owner]'s body flashes a bright blue!</span>", \
"<span class='cultitalic'>You speak the cursed words, channeling an electromagnetic pulse from your body.</span>")
owner.emp_act(2)
@@ -281,6 +283,8 @@
if(ranged_ability_user.incapacitated() || !iscultist(user))
user.ranged_ability.remove_ranged_ability(user)
return
if(user.holy_check())
return
var/turf/T = get_turf(ranged_ability_user)
if(!isturf(T))
return FALSE
@@ -307,6 +311,8 @@
var/revealing = FALSE //if it reveals or not
/datum/action/innate/cult/blood_spell/veiling/Activate()
if(owner.holy_check())
return
if(!revealing) // Hiding stuff
owner.visible_message("<span class='warning'>Thin grey dust falls from [owner]'s hand!</span>", \
"<span class='cultitalic'>You invoke the veiling spell, hiding nearby runes and cult structures.</span>")
@@ -389,13 +395,9 @@
..()
/obj/item/melee/blood_magic/attack_self(mob/living/user)
if(user.holy_check())
return
afterattack(user, user, TRUE)
/obj/item/melee/blood_magic/attack(mob/living/M, mob/living/carbon/user)
if(user.holy_check())
return
if(!iscarbon(user) || !iscultist(user))
uses = 0
qdel(src)
@@ -431,6 +433,8 @@
var/mob/living/L = target
if(iscultist(target))
return
if(user.holy_check())
return
user.visible_message("<span class='warning'>[user] holds up [user.p_their()] hand, which explodes in a flash of red light!</span>", \
"<span class='cultitalic'>You attempt to stun [L] with the spell!</span>")
@@ -467,6 +471,8 @@
invocation = "Sas'so c'arta forbici!"
/obj/item/melee/blood_magic/teleport/afterattack(atom/target, mob/living/carbon/user, proximity)
if(user.holy_check())
return
var/list/potential_runes = list()
var/list/teleportnames = list()
var/list/duplicaterunecount = list()
@@ -527,6 +533,8 @@
color = "#000000" // black
/obj/item/melee/blood_magic/shackles/afterattack(atom/target, mob/living/carbon/user, proximity)
if(user.holy_check())
return
if(iscarbon(target) && proximity)
var/mob/living/carbon/C = target
if(C.canBeHandcuffed() || C.get_arm_ignore())
@@ -585,6 +593,8 @@
Airlocks into brittle runed airlocks after a delay (harm intent)"}
/obj/item/melee/blood_magic/construction/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
if(user.holy_check())
return
if(proximity_flag)
if(channeling)
to_chat(user, "<span class='cultitalic'>You are already invoking twisted construction!</span>")
@@ -639,6 +649,8 @@
color = "#33cc33" // green
/obj/item/melee/blood_magic/armor/afterattack(atom/target, mob/living/carbon/user, proximity)
if(user.holy_check())
return
if(iscarbon(target) && proximity)
uses--
var/mob/living/carbon/C = target
@@ -662,6 +674,8 @@
has_source = FALSE //special, only availible for a blood cost.
/obj/item/melee/blood_magic/empower/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
if(user.holy_check())
return
if(proximity_flag)
//Shielded suit
+4
View File
@@ -520,6 +520,10 @@
/obj/item/shield/mirror/IsReflect()
if(prob(reflect_chance))
if(istype(loc, /mob))
var/mob/user = loc
if(user.holy_check())
return FALSE
return TRUE
return FALSE
@@ -58,6 +58,8 @@
/obj/structure/cult/functional/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/melee/cultblade/dagger) && iscultist(user))
if(user.holy_check())
return
anchored = !anchored
to_chat(user, "<span class='notice'>You [anchored ? "":"un"]secure [src] [anchored ? "to":"from"] the floor.</span>")
if(!anchored)
@@ -380,7 +380,7 @@ GLOBAL_LIST_INIT(cult_recipes, list ( \
if(!iscultist(user))
to_chat(user, "<span class='warning'>Only one with forbidden knowledge could hope to work this metal...</span>")
return
if(user.holy_check())
if(usr.holy_check())
return
if(!is_level_reachable(user.z))
to_chat(user, "<span class='warning'>The energies of this place interfere with the metal shaping!</span>")
+10 -4
View File
@@ -16,7 +16,7 @@
var/to_transfer = 0
var/max_amount = 50 //also see stack recipes initialisation, param "max_res_amount" must be equal to this max_amount
var/merge_type = null // This path and its children should merge with this stack, defaults to src.type
var/recipe_width = 400 //Width of the recipe popup
var/recipe_width = 400 //Width of the recipe popup
var/recipe_height = 400 //Height of the recipe popup
/obj/item/stack/New(loc, new_amount, merge = TRUE)
@@ -186,9 +186,15 @@
to_chat(usr, "<span class='warning'>\The [R.title] must be constructed on the floor!</span>")
return FALSE
if(R.no_cult_structure && (locate(/obj/structure/cult) in usr.drop_location()))
to_chat(usr, "<span class='warning'>There is a structure here!</span>")
return FALSE
if(R.no_cult_structure)
if(usr.holy_check())
return
if(!is_level_reachable(usr.z))
to_chat(usr, "<span class='warning'>The energies of this place interfere with the metal shaping!</span>")
return
if(locate(/obj/structure/cult) in usr.drop_location())
to_chat(usr, "<span class='warning'>There is a structure here!</span>")
return FALSE
if(R.time)
to_chat(usr, "<span class='notice'>Building [R.title] ...</span>")
+3
View File
@@ -1464,6 +1464,9 @@ GLOBAL_LIST_INIT(holy_areas, typecacheof(list(
if(!is_type_in_typecache(loc.loc, GLOB.holy_areas))
return FALSE
if(!mind)
return FALSE
//Allows fullpower vampires to bypass holy areas
var/datum/vampire/vampire = mind.vampire
if(vampire && vampire.get_ability(/datum/vampire_passive/full))