-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds wizard item: Plague Talisman #28150
base: master
Are you sure you want to change the base?
Adds wizard item: Plague Talisman #28150
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some grammar/spelling/flow touchups/suggestions.
Co-authored-by: Sheep <[email protected]> Signed-off-by: Kyani <[email protected]>
Co-authored-by: Sheep <[email protected]> Signed-off-by: Kyani <[email protected]>
Co-authored-by: Sheep <[email protected]> Signed-off-by: Kyani <[email protected]>
Co-authored-by: Sheep <[email protected]> Signed-off-by: Kyani <[email protected]>
Co-authored-by: Sheep <[email protected]> Signed-off-by: Kyani <[email protected]>
Co-authored-by: Sheep <[email protected]> Signed-off-by: Kyani <[email protected]>
And also, I see this has been reworked from being a direct virus vector into more of a conversion spell. I like it~ |
I think the zombies should be told what virus they have on revival so they know what they're infecting people with, could have the minor zombies play defense with their 35 force claws and the major zombies play offense with their virus-y claws |
Co-authored-by: Luc <[email protected]> Signed-off-by: Kyani <[email protected]>
|
||
//choose what disease this zombie will get | ||
/obj/item/plague_talisman/proc/pick_disease() | ||
var picked_disease |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
var picked_disease | |
var/picked_disease |
var/minor_length = length(minor_diseases) | ||
var/major_length = length(major_diseases) | ||
if(prob(66)) | ||
picked_disease = minor_diseases[rand(1, minor_length)] | ||
return(picked_disease) | ||
else | ||
picked_disease = major_diseases[rand(1, major_length)] | ||
return(picked_disease) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
var/minor_length = length(minor_diseases) | |
var/major_length = length(major_diseases) | |
if(prob(66)) | |
picked_disease = minor_diseases[rand(1, minor_length)] | |
return(picked_disease) | |
else | |
picked_disease = major_diseases[rand(1, major_length)] | |
return(picked_disease) | |
if(prob(66)) | |
picked_disease = pick(minor_diseases) | |
else | |
picked_disease = pick(major_diseases) | |
return picked_disease |
use_item_overlays = TRUE | ||
can_hold = list( | ||
/obj/item/plague_talisman | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
) | |
) |
if(dispel()) | ||
return | ||
var/obj/item/plague_claw/claws = new /obj/item/plague_claw(user.loc, src, disease) | ||
if(user.get_organ("l_hand") && user.get_organ("r_hand")) // Takes always takes both hand slots, but doesnt require both |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens if they're already holding something or their hands are full?
/datum/spell/plague_claws/can_cast(mob/user, charge_check, show_message) | ||
var/mob/living/L = user | ||
if(!L.get_active_hand() || istype(L.get_active_hand(), /obj/item/zombie_claw)) | ||
return ..() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should probably explicitly return false if that's what you want to have happen here otherwise
return ..() | ||
|
||
/obj/item/plague_claw/customised_abstract_text(mob/living/carbon/owner) | ||
return "<span class='warning'>[owner.p_they(TRUE)] [owner.p_have(FALSE)] sharp, ichor-laden claws extending from [owner.p_their(FALSE)] [owner.l_hand == src ? "left hand" : "right hand"].</span>" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
return "<span class='warning'>[owner.p_they(TRUE)] [owner.p_have(FALSE)] sharp, ichor-laden claws extending from [owner.p_their(FALSE)] [owner.l_hand == src ? "left hand" : "right hand"].</span>" | |
return "<span class='warning'>[owner.p_they(TRUE)] [owner.p_have()] sharp, ichor-laden claws extending from [owner.p_their()] [owner.l_hand == src ? "left hand" : "right hand"].</span>" |
// already have the disease, or have contracted it. | ||
if(!target.HasDisease(claw_disease)) | ||
playsound(user.loc, 'sound/misc/moist_impact.ogg', 50, TRUE) | ||
target.bleed_rate = max(5, target.bleed_rate + 1) // Them claws sharp! Good luck with whatever they were laced with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might want to make them bleed regardless when they get hit?
if(..()) | ||
return | ||
qdel(src) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's this doing?
@@ -306,6 +306,9 @@ | |||
if(reagents.has_reagent("teslium")) | |||
msg += "[p_they(TRUE)] [p_are()] emitting a gentle blue glow!\n" | |||
|
|||
if(HAS_TRAIT(src, TRAIT_PLAGUE_ZOMBIE)) //to tell plague zombies easier through clothing | |||
msg += "[p_they(TRUE)] smell like rot and death!\n" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should make sure it shows up properly for he/she and they
"they smell like rot and death!"
"he smells like rot and death!"
msg += "[p_they(TRUE)] smell like rot and death!\n" | |
msg += "[p_they(TRUE)] smell[p_s()] like rot and death!\n" |
What Does This PR Do
Adds the Plague Talisman to the wizard's spellbook for 2 points. This item is intended a side-grade equivalent to the necromatic stone. When purchased, the wizard receives 5 plague talismans. When used on a corpse with a mind in it, the victim will be turned into a (NON-NECRO PLAGUE) zombie and is loyal to the wizard. Each zombie is given a disease upon their creation that they carry, to which they are able to spread via attacks with the given claw items. There is a 66% chance the disease will be minor (flu/cold/anxiety) with a 33% chance it will be a major disease (Beserker/cold9/brainrot). GBS/kuru/most transformation diseases have been left out.
Currently, the zombie claws do 35 force, which is 5 less than the claymores given by the necromatic stone, due to both having more potential zombies and the additions of the plagues. This can be changed as needed.
Additionally, makes wiz and zombies virus immune so they wont be affected by their own fun.
edit: Added an examine text about their rotted bodies to help identify them (besides claws) when they are fully clothed
Why It's Good For The Game
New wizard items are interesting, and more options for minions could be fun. These thralls are similar to the necromatic stone, though technically weaker than the weapons given to the skeleton thralls. However, zombies are unable to wield weaponry, and rely on their claws, thus preventing the wizard from giving out equipment to their new thralls (such as staffs of resurrection).
Images of changes
(I am very bad at spriting, feel free to ask me to replacing it)
Testing
Declaration
Changelog
🆑
add: Added plague talismans for the wizard
add: Added the plague claw spell for plague zombie use
imageadd: Plague talisman icon
/:cl: