Skip to content
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

ZIZZLER ARMOR RITUAL[BOUNTY] #1465

Merged
merged 4 commits into from
Feb 21, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion code/modules/antagonists/roguetown/villain/lich.dm
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@
TRAIT_HEAVYARMOR,
TRAIT_CABAL,
TRAIT_DEATHSIGHT,
TRAIT_COUNTERCOUNTERSPELL
TRAIT_COUNTERCOUNTERSPELL,
TRAIT_RITUALIST
)

var/STASTR = 10
Expand Down Expand Up @@ -183,6 +184,7 @@
SLOT_BELT_R,
SLOT_BELT_L,
SLOT_HANDS,
SLOT_HANDS,
SLOT_BACK_L,
)

Expand All @@ -199,6 +201,7 @@
/obj/item/reagent_containers/glass/bottle/rogue/manapot,
/obj/item/rogueweapon/huntingknife/idagger/steel,
/obj/item/rogueweapon/woodstaff/wise,
/obj/item/ritechalk,
/obj/item/storage/backpack/rogue/satchel,
)
for (var/i = 1, i <= equipment_slots.len, i++)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,7 @@
H.mind.adjust_skillrank(/datum/skill/misc/climbing, 3, TRUE)
H.mind.adjust_skillrank(/datum/skill/misc/reading, 3, TRUE)
ADD_TRAIT(H, TRAIT_HEAVYARMOR, TRAIT_GENERIC)
ADD_TRAIT(H, TRAIT_RITUALIST, TRAIT_GENERIC)
H.set_blindness(0)
var/weapons = list("Bastard Sword","Mace","Flail")
var/weapon_choice = input("Choose your weapon.", "TAKE UP ARMS") as anything in weapons
Expand Down Expand Up @@ -180,7 +181,7 @@
backl = /obj/item/storage/backpack/rogue/satchel
backr = /obj/item/rogueweapon/shield/tower/metal
beltl = /obj/item/roguekey/inhumen
backpack_contents = list(/obj/item/storage/belt/rogue/pouch/coins/poor = 1, /obj/item/flashlight/flare/torch = 1, /obj/item/rogueweapon/huntingknife = 1)
backpack_contents = list(/obj/item/storage/belt/rogue/pouch/coins/poor = 1, /obj/item/flashlight/flare/torch = 1, /obj/item/rogueweapon/huntingknife = 1, /obj/item/ritechalk = 1)
var/datum/devotion/C = new /datum/devotion(H, H.patron)
C.grant_spells(H)
START_PROCESSING(SSobj, C)
Expand Down
8 changes: 4 additions & 4 deletions modular_azurepeak/code/game/objects/items/ritechalk.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@

var/ritechoices = list()
switch (user.patron?.type)
/* if(/datum/patron/inhumen/zizo)
ritechoices+="Rune of ZIZO" */
if(/datum/patron/inhumen/zizo)
ritechoices+="Rune of ZIZO"
if(/datum/patron/divine/astrata)
ritechoices+="Rune of Sun"
if(/datum/patron/divine/noc)
Expand Down Expand Up @@ -88,8 +88,8 @@
if(do_after(user, 30, src))
playsound(src, 'sound/foley/scribble.ogg', 40, TRUE)
new /obj/structure/ritualcircle/abyssor(step_turf)
/* if("Rune of ZIZO")
if("Rune of ZIZO")
to_chat(user,span_cultsmall("I begin inscribing the rune of Her Knowledge..."))
if(do_after(user, 30, src))
playsound(src, 'sound/foley/scribble.ogg', 40, TRUE)
new /obj/structure/ritualcircle/zizo(step_turf) */
new /obj/structure/ritualcircle/zizo(step_turf)
67 changes: 67 additions & 0 deletions modular_azurepeak/code/game/objects/items/ritualcircles.dm
Original file line number Diff line number Diff line change
Expand Up @@ -290,3 +290,70 @@
target.apply_status_effect(/datum/status_effect/buff/pacify)

// TIME FOR THE ASCENDANT. These can be stronger. As they are pretty much antag exclusive - Iconoclast for Matthios, Lich for ZIZO. ZIZO!


/obj/structure/ritualcircle/zizo
name = "Rune of Progress"
desc = "A Holy Rune of ZIZO"
// icon_state = zizo_chalky - when we have it.
var/zizorites = list("Rite of Armaments")

/obj/structure/ritualcircle/zizo/attack_hand(mob/living/user)
if((user.patron?.type) != /datum/patron/inhumen/zizo)
to_chat(user,span_smallred("I don't know the proper rites for this..."))
return
if(!HAS_TRAIT(user, TRAIT_RITUALIST))
to_chat(user,span_smallred("I don't know the proper rites for this..."))
return
if(user.has_status_effect(/datum/status_effect/debuff/ritesexpended))
to_chat(user,span_smallred("I have performed enough rituals for the day... I must rest before communing more."))
return
var/riteselection = input(user, "Rituals of Progress", src) as null|anything in zizorites
switch(riteselection) // put ur rite selection here
if("Rite of Armaments")
if(do_after(user, 50))
user.say("ZIZO! ZIZO! DAME OF PROGRESS!!")
if(do_after(user, 50))
user.say("ZIZO! ZIZO! HEED MY CALL!!")
if(do_after(user, 50))
user.say("ZIZO! ZIZO! ARMS TO SLAY THE IGNORANT!!")
if(do_after(user, 50))
// icon_state = "zizo_active"
user.apply_status_effect(/datum/status_effect/debuff/ritesexpended)
zizoarmaments(src)
// icon_state = zizo_chalky - whip these bad boys out when we actually have the sprites + add a spawn timer to set the chalk state back.

/obj/structure/ritualcircle/zizo/proc/zizoarmaments(src)
var/onrune = view(0, loc)
var/list/possible_targets = list()
for(var/mob/living/carbon/human/persononrune in onrune)
possible_targets += persononrune
var/mob/living/carbon/human/target = pick(possible_targets)
if(!HAS_TRAIT(target, TRAIT_CABAL))
loc.visible_message(span_cult("THE RITE REJECTS ONE NOT OF THE CABAL"))
return
target.Stun(60)
target.Knockdown(60)
to_chat(target, span_userdanger("UNIMAGINABLE PAIN!"))
target.emote("Agony")
playsound(loc, 'sound/combat/newstuck.ogg', 50)
loc.visible_message(span_cult("Great hooks come from the rune, embedding into [target]'s ankles, pulling them onto the rune. Then, into their wrists. Their lux is torn from their chest, and reforms into armor. "))
spawn(20)
playsound(loc, 'sound/combat/hits/onmetal/grille (2).ogg', 50)
target.equipOutfit(/datum/outfit/job/roguetown/darksteelrite)
target.apply_status_effect(/datum/status_effect/debuff/devitalised)
spawn(40)
to_chat(target, span_purple("They are ignorant, backwards, without hope. You. You will be powerful."))

/datum/outfit/job/roguetown/darksteelrite/pre_equip(mob/living/carbon/human/H)
..()
var/list/items = list()
items |= H.get_equipped_items(TRUE)
for(var/I in items)
H.dropItemToGround(I, TRUE)
H.drop_all_held_items()
armor = /obj/item/clothing/suit/roguetown/armor/plate/full/zizo
pants = /obj/item/clothing/under/roguetown/platelegs/zizo
shoes = /obj/item/clothing/shoes/roguetown/boots/armor/zizo
gloves = /obj/item/clothing/gloves/roguetown/plate/zizo
head = /obj/item/clothing/head/roguetown/helmet/heavy/zizo