Various cult equipment rebalances to address energy weapon immunities being too common (#57091)

* Removes mirror shield and shielded robe from forge, removes eldritch longsword from equipment and moves it to the forge, adds the nar'sian hardsuit to the forge with no slowdown and comparable stats to the shielded robe, gives eldritch longswords and cult daggers block chance
This commit is contained in:
necromanceranne
2021-02-22 01:49:23 -08:00
committed by GitHub
parent 1fb5d68b53
commit 9f876fefac
3 changed files with 45 additions and 14 deletions
+2 -2
View File
@@ -670,7 +670,7 @@
//Armor: Gives the target (cultist) a basic cultist combat loadout
/obj/item/melee/blood_magic/armor
name = "Arming Aura"
desc = "Will equipt cult combat gear onto a cultist on contact."
desc = "Will equip cult combat gear onto a cultist on contact."
color = "#33cc33" // green
/obj/item/melee/blood_magic/armor/afterattack(atom/target, mob/living/carbon/user, proximity)
@@ -684,7 +684,7 @@
C.equip_to_slot_or_del(new /obj/item/storage/backpack/cultpack(user), ITEM_SLOT_BACK)
if(C == user)
qdel(src) //Clears the hands
C.put_in_hands(new /obj/item/melee/cultblade(user))
C.put_in_hands(new /obj/item/melee/cultblade/dagger(user))
C.put_in_hands(new /obj/item/restraints/legcuffs/bola/cult(user))
..()
+37 -6
View File
@@ -20,6 +20,7 @@
w_class = WEIGHT_CLASS_SMALL
force = 15
throwforce = 25
block_chance = 25
wound_bonus = -10
bare_wound_bonus = 20
armour_penetration = 35
@@ -32,6 +33,19 @@
I.override = TRUE
add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/silicons, "cult_dagger", I)
/obj/item/melee/cultblade/dagger/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK)
var/block_message = "[owner] parries [attack_text] with [src]"
if(owner.get_active_held_item() != src)
block_message = "[owner] parries [attack_text] with [src] in their offhand"
if(iscultist(owner) && prob(final_block_chance) && attack_type != PROJECTILE_ATTACK)
new /obj/effect/temp_visual/cult/sparks(get_turf(owner))
playsound(src, 'sound/weapons/parry.ogg', 100, TRUE)
owner.visible_message("<span class='danger'>[block_message]</span>")
return TRUE
else
return FALSE
/obj/item/melee/cultblade
name = "eldritch longsword"
desc = "A sword humming with unholy energy. It glows with a dim red light."
@@ -47,6 +61,7 @@
w_class = WEIGHT_CLASS_BULKY
force = 30 // whoever balanced this got beat in the head by a bible too many times good lord
throwforce = 10
block_chance = 50 // now it's officially a cult esword
wound_bonus = -50
bare_wound_bonus = 20
hitsound = 'sound/weapons/bladeslice.ogg'
@@ -57,6 +72,15 @@
. = ..()
AddComponent(/datum/component/butchering, 40, 100)
/obj/item/melee/cultblade/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK)
if(iscultist(owner) && prob(final_block_chance))
new /obj/effect/temp_visual/cult/sparks(get_turf(owner))
playsound(src, 'sound/weapons/parry.ogg', 100, TRUE)
owner.visible_message("<span class='danger'>[owner] parries [attack_text] with [src]!</span>")
return TRUE
else
return FALSE
/obj/item/melee/cultblade/attack(mob/living/target, mob/living/carbon/human/user)
if(!iscultist(user))
user.Paralyze(100)
@@ -76,6 +100,7 @@
force = 19 //can't break normal airlocks
item_flags = NEEDS_PERMIT | DROPDEL
flags_1 = NONE
block_chance = 25 //these dweebs don't get full block chance, because they're free cultists
/obj/item/melee/cultblade/ghost/Initialize()
. = ..()
@@ -346,7 +371,7 @@
desc = "A heavily-armored helmet worn by warriors of the Nar'Sien cult. It can withstand hard vacuum."
icon_state = "cult_helmet"
inhand_icon_state = "cult_helmet"
armor = list(MELEE = 70, BULLET = 50, LASER = 30,ENERGY = 40, BOMB = 30, BIO = 30, RAD = 30, FIRE = 40, ACID = 75)
armor = list(MELEE = 50, BULLET = 40, LASER = 50, ENERGY = 60, BOMB = 50, BIO = 30, RAD = 30, FIRE = 100, ACID = 100)
light_system = NO_LIGHT_SUPPORT
light_range = 0
actions_types = list()
@@ -358,9 +383,12 @@
desc = "A heavily-armored exosuit worn by warriors of the Nar'Sien cult. It can withstand hard vacuum."
w_class = WEIGHT_CLASS_BULKY
allowed = list(/obj/item/tome, /obj/item/melee/cultblade, /obj/item/tank/internals/)
armor = list(MELEE = 70, BULLET = 50, LASER = 30,ENERGY = 40, BOMB = 30, BIO = 30, RAD = 30, FIRE = 40, ACID = 75)
armor = list(MELEE = 50, BULLET = 40, LASER = 50, ENERGY = 60, BOMB = 50, BIO = 30, RAD = 30, FIRE = 100, ACID = 100)
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/cult
/obj/item/clothing/suit/space/hardsuit/cult/real
slowdown = 0
/obj/item/sharpener/cult
name = "eldritch whetstone"
desc = "A block, empowered by dark magic. Sharp weapons will be enhanced when used on the stone."
@@ -446,7 +474,7 @@
/obj/item/clothing/glasses/hud/health/night/cultblind/equipped(mob/living/user, slot)
..()
if(!iscultist(user))
if(!iscultist(user) && slot == ITEM_SLOT_EYES)
to_chat(user, "<span class='cultlarge'>\"You want to be blind, do you?\"</span>")
user.dropItemToGround(src, TRUE)
user.Dizzy(30)
@@ -719,16 +747,19 @@
/obj/item/melee/cultblade/halberd/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK)
if(wielded)
final_block_chance *= 2
if(prob(final_block_chance))
if(iscultist(owner) && prob(final_block_chance))
if(attack_type == PROJECTILE_ATTACK)
owner.visible_message("<span class='danger'>[owner] deflects [attack_text] with [src]!</span>")
playsound(src, pick('sound/weapons/effects/ric1.ogg', 'sound/weapons/effects/ric2.ogg', 'sound/weapons/effects/ric3.ogg', 'sound/weapons/effects/ric4.ogg', 'sound/weapons/effects/ric5.ogg'), 100, TRUE)
playsound(get_turf(owner), pick('sound/weapons/bulletflyby.ogg', 'sound/weapons/bulletflyby2.ogg', 'sound/weapons/bulletflyby3.ogg'), 75, TRUE)
new /obj/effect/temp_visual/cult/sparks(get_turf(owner))
return TRUE
else
playsound(src, 'sound/weapons/parry.ogg', 100, TRUE)
owner.visible_message("<span class='danger'>[owner] parries [attack_text] with [src]!</span>")
new /obj/effect/temp_visual/cult/sparks(get_turf(owner))
return TRUE
return FALSE
else
return FALSE
/datum/action/innate/cult/halberd
name = "Bloody Bond"
@@ -148,19 +148,19 @@
to_chat(user, "<span class='cult italic'>The magic in [src] is weak, it will be ready to use again in [DisplayTimeText(cooldowntime - world.time)].</span>")
return
var/list/items = list(
"Shielded Robe" = image(icon = 'icons/obj/clothing/suits.dmi', icon_state = "cult_armor"),
"Nar'sien Hardened Armor" = image(icon = 'icons/obj/clothing/suits.dmi', icon_state = "cult_armor"),
"Flagellant's Robe" = image(icon = 'icons/obj/clothing/suits.dmi', icon_state = "cultrobes"),
"Mirror Shield" = image(icon = 'icons/obj/shields.dmi', icon_state = "mirror_shield")
"Eldritch Longsword" = image(icon = 'icons/obj/items_and_weapons.dmi', icon_state = "cultblade")
)
var/choice = show_radial_menu(user, src, items, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE)
var/list/pickedtype = list()
switch(choice)
if("Shielded Robe")
pickedtype += /obj/item/clothing/suit/hooded/cultrobes/cult_shield
if("Nar'sien Hardened Armor")
pickedtype += /obj/item/clothing/suit/space/hardsuit/cult/real
if("Flagellant's Robe")
pickedtype += /obj/item/clothing/suit/hooded/cultrobes/berserker
if("Mirror Shield")
pickedtype += /obj/item/shield/mirror
if("Eldritch Longsword")
pickedtype += /obj/item/melee/cultblade
else
return
if(src && !QDELETED(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time)