mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-31 07:57:47 +01:00
rawr
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
/datum/cult_info
|
||||
var/name = "Cult of Nar'Sie"
|
||||
var/theme = "blood"
|
||||
var/dam_type = "BRUTE"
|
||||
var/dam_type = BRUTE
|
||||
|
||||
//God Entity
|
||||
var/entity_name = "Nar'Sie"
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
//Armored Construct
|
||||
var/juggernaut_name = "Juggernaut"
|
||||
var/juggernaut_icon_state = "armour"
|
||||
var/juggernaut_icon_state = "behemoth"
|
||||
var/juggernaut_dead_state = "shade_dead"
|
||||
|
||||
//Harvester Construct
|
||||
@@ -49,7 +49,7 @@
|
||||
/datum/cult_info/fire
|
||||
name = "Cult of Pyr'Kaeus"
|
||||
theme = "fire"
|
||||
dam_type = "BURN"
|
||||
dam_type = BURN
|
||||
|
||||
entity_name = "Pyr'Kaeus"
|
||||
entity_title1 = "The Burning One"
|
||||
@@ -77,15 +77,16 @@
|
||||
entity_title2 = "The One Who Beckons"
|
||||
entity_title3 = "The Ferryman of Oblivion"
|
||||
|
||||
entity_icon_state = "legion" //dmi path, mob/lavaland
|
||||
|
||||
artificer_name = "Boneshaper"
|
||||
|
||||
behemoth_name = "Draugr"
|
||||
behemoth_icon_state = "horror"
|
||||
|
||||
wraith_name = "Wraith"
|
||||
wraith_icon_state = "stand"
|
||||
|
||||
juggernaut_name = "Wight"
|
||||
juggernaut_icon_state = "horror"
|
||||
|
||||
harvester_name = "Psychopomp"
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
..()
|
||||
if(ishuman(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
H.drip(5000)
|
||||
H.drip(500)
|
||||
|
||||
|
||||
/obj/item/weapon/legcuffs/bolas/cult
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
if(cooldowntime > world.time)
|
||||
to_chat(user, "<span class='cultitalic'>The magic in [src] is weak, it will be ready to use again in [getETA()].</span>")
|
||||
return
|
||||
var/choice = alert(user,"You study the schematics etched into the forge...",, "Flagellant's Robe","Cultist Hardsuit")
|
||||
var/choice = alert(user,"You study the schematics etched into the forge...",, "Flagellant's Robe","Cultist Hardsuit", "Cultist Dagger")
|
||||
var/pickedtype
|
||||
var/otheritem //ie:helmet..
|
||||
switch(choice)
|
||||
@@ -153,6 +153,8 @@
|
||||
if("Cultist Hardsuit")
|
||||
pickedtype = /obj/item/clothing/suit/space/cult
|
||||
otheritem = /obj/item/clothing/head/helmet/space/cult
|
||||
if("Cultist Dagger")
|
||||
pickedtype = /obj/item/weapon/melee/cultblade/dagger
|
||||
if(pickedtype && Adjacent(user) && src && !qdeleted(src) && !user.incapacitated() && cooldowntime <= world.time)
|
||||
cooldowntime = world.time + 2400
|
||||
var/obj/item/N = new pickedtype(get_turf(src))
|
||||
@@ -191,7 +193,7 @@
|
||||
for(var/mob/living/L in range(5, src))
|
||||
if(iscultist(L) || istype(L, /mob/living/simple_animal/shade) || istype(L, /mob/living/simple_animal/hostile/construct))
|
||||
if(L.health != L.maxHealth)
|
||||
new /obj/effect/overlay/temp/heal(get_turf(src), "#960000")
|
||||
new /obj/effect/overlay/temp/heal(get_turf(src), "#960000")//not working
|
||||
if(ishuman(L))
|
||||
L.adjustBruteLoss(-1, 0)
|
||||
L.adjustFireLoss(-1, 0)
|
||||
@@ -204,7 +206,7 @@
|
||||
if(last_corrupt <= world.time)
|
||||
var/list/validturfs = list()
|
||||
for(var/T in circleviewturfs(src, 5))
|
||||
if(istype(T, /turf/simulated/floor/engine/cult) || istype(T, /turf/space) || istype(T, /turf/simulated/wall))
|
||||
if(istype(T, /turf/simulated/floor/engine/cult) || istype(T, /turf/space) || istype(T, /turf/simulated/wall) || istype(T, /turf/simulated/shuttle))
|
||||
continue
|
||||
validturfs |= T
|
||||
var/turf/T = safepick(validturfs)
|
||||
|
||||
@@ -223,19 +223,19 @@
|
||||
return
|
||||
if(ispath(rune_to_scribe, /obj/effect/rune/narsie) || ispath(rune_to_scribe, /obj/effect/rune/slaughter))//may need to change this - Fethas
|
||||
|
||||
if(istype(ticker.mode.name, "cult"))
|
||||
if(!canbypass)//not an admin-tome, check things
|
||||
if(ticker.mode.name == "cult")
|
||||
if(!canbypass == 1)//not an admin-tome, check things
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
if(!("eldergod" in cult_mode.objectives) || !("slughter" in cult_mode.objectives))
|
||||
to_chat(user, "<span class='warning'>[cult_mode.cultdat.entity_name]'s power does not wish to be unleashed!</span>")
|
||||
return
|
||||
else if(!cult_mode.narsie_condition_cleared)
|
||||
if(!cult_mode.narsie_condition_cleared)
|
||||
to_chat(user, "<span class='warning'>There is still more to do before unleashing [cult_mode.cultdat.entity_name] power!</span>")
|
||||
return
|
||||
else if(!cult_mode.eldergod)
|
||||
if(!cult_mode.eldergod)
|
||||
to_chat(user, "<span class='cultlarge'>\"I am already here. There is no need to try to summon me now.\"</span>")
|
||||
return
|
||||
else if(cult_mode.demons_summoned)
|
||||
if(cult_mode.demons_summoned)
|
||||
to_chat(user, "<span class='cultlarge'>\"We are already here. There is no need to try to summon us now.\"</span>")
|
||||
return
|
||||
var/confirm_final = alert(user, "This is the FINAL step to summon Nar-Sie, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar-Sie!", "No")
|
||||
@@ -254,8 +254,8 @@
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/dam_zone = pick("head", "chest", "groin", "l_arm", "l_hand", "r_arm", "r_hand", "l_leg", "l_foot", "r_leg", "r_foot")
|
||||
var/obj/item/organ/external/affecting = H.get_organ(ran_zone(dam_zone))
|
||||
user.visible_message("<span class='warning'>[user] cuts open their [affecting] and begins writing in their own blood!</span>", "<span class='cult'>You slice open your [affecting] and begin drawing a sigil of [ticker.mode.cultdat.entity_title3].</span>")
|
||||
user.apply_damage(initial(rune_to_scribe.scribe_damage), BRUTE, affecting)
|
||||
user.visible_message("<span class='warning'>[user] cuts open their /the [affecting] and begins writing in their own blood!</span>", "<span class='cult'>You slice open your [affecting] and begin drawing a sigil of [ticker.mode.cultdat.entity_title3].</span>")
|
||||
user.apply_damage(initial(rune_to_scribe.scribe_damage), ticker.mode.cultdat.dam_type, affecting)
|
||||
if(!do_after(user, initial(rune_to_scribe.scribe_delay)-scribereduct, target = get_turf(user)))
|
||||
for(var/V in shields)
|
||||
var/obj/machinery/shield/S = V
|
||||
|
||||
@@ -31,6 +31,7 @@ To draw a rune, use an arcane tome.
|
||||
var/scribe_damage = 0.1 //how much damage you take doing it
|
||||
|
||||
var/allow_excess_invokers = 0 //if we allow excess invokers when being invoked
|
||||
var/construct_invoke = 1 //if constructs can invoke it
|
||||
|
||||
var/req_keyword = 0 //If the rune requires a keyword - go figure amirite
|
||||
var/keyword //The actual keyword for the rune
|
||||
@@ -80,6 +81,14 @@ To draw a rune, use an arcane tome.
|
||||
else
|
||||
fail_invoke(user)
|
||||
|
||||
|
||||
/obj/effect/rune/attack_animal(mob/living/simple_animal/M)
|
||||
if(istype(M, /mob/living/simple_animal/shade) || istype(M, /mob/living/simple_animal/hostile/construct))
|
||||
if(construct_invoke || !iscultist(M)) //if you're not a cult construct we want the normal fail message
|
||||
attack_hand(M)
|
||||
else
|
||||
to_chat(M, "<span class='warning'>You are unable to invoke the rune!</span>")
|
||||
|
||||
/obj/effect/rune/proc/talismanhide() //for talisman of revealing/hiding
|
||||
visible_message("<span class='danger'>[src] fades away.</span>")
|
||||
invisibility = INVISIBILITY_OBSERVER
|
||||
@@ -95,6 +104,7 @@ To draw a rune, use an arcane tome.
|
||||
visible_message("<span class='danger'>[src] takes on a waxy apperance!</span>")
|
||||
icon = 'icons/effects/crayondecal.dmi'
|
||||
icon_state = "rune[runenum]"
|
||||
color = rgb(255, 0, 0)
|
||||
|
||||
/*
|
||||
There are a few different procs each rune runs through when a cultist activates it.
|
||||
@@ -138,11 +148,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
if(invocation)
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
if(!L.IsVocal())//MIMES
|
||||
//do emote here...
|
||||
L.emote("acts out the rune invocation.")//it will looks like flailing...
|
||||
else
|
||||
L.say(invocation)
|
||||
L.say(invocation)
|
||||
var/oldtransform = transform
|
||||
spawn(0) //animate is a delay, we want to avoid being delayed
|
||||
animate(transform = matrix()*2, alpha = 0, time = 5) //fade out
|
||||
@@ -153,6 +159,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
visible_message("<span class='warning'>The markings pulse with a small flash of red light, then fall dark.</span>")
|
||||
spawn(0) //animate is a delay, we want to avoid being delayed
|
||||
animate(src, color = rgb(255, 0, 0), time = 0)
|
||||
animate(src, color = initial(color), time = 5)
|
||||
|
||||
//Malformed Rune: This forms if a rune is not drawn correctly. Invoking it does nothing but hurt the user.
|
||||
/obj/effect/rune/malformed
|
||||
@@ -718,6 +725,7 @@ var/list/teleport_runes = list()
|
||||
invocation = "Fwe'sh mah erl nyag r'ya!"
|
||||
icon_state = "6"
|
||||
rune_in_use = 0 //One at a time, please!
|
||||
construct_invoke = 0
|
||||
var/mob/living/affecting = null
|
||||
|
||||
/obj/effect/rune/astral/examine(mob/user)
|
||||
@@ -853,6 +861,7 @@ var/list/teleport_runes = list()
|
||||
cultist_desc = "boils the blood of non-believers who can see the rune, dealing extreme amounts of damage. Requires 3 invokers."
|
||||
invocation = "Dedo ol'btoh!"
|
||||
icon_state = "4"
|
||||
construct_invoke = 0
|
||||
req_cultists = 3
|
||||
|
||||
/obj/effect/rune/blood_boil/invoke(var/list/invokers)
|
||||
@@ -882,6 +891,7 @@ var/list/teleport_runes = list()
|
||||
cultist_desc = "manifests a spirit as a servant of your god. The invoker must not move from atop the rune, and will take damage for each summoned spirit."
|
||||
invocation = "Gal'h'rfikk harfrandid mud'gib!" //how the fuck do you pronounce this
|
||||
icon_state = "6"
|
||||
construct_invoke = 0
|
||||
color = rgb(200, 0, 0)
|
||||
|
||||
/obj/effect/rune/manifest/New(loc)
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
var/cultist_name = "talisman"
|
||||
var/cultist_desc = "A basic talisman. It serves no purpose."
|
||||
var/invocation = "Naise meam!"
|
||||
info = "<center><img src='talisman.png'></center><br/><br/>"
|
||||
var/uses = 1
|
||||
var/health_cost = 0 //The amount of health taken from the user when invoking the talisman
|
||||
|
||||
|
||||
@@ -154,9 +154,11 @@
|
||||
/proc/setupcult()
|
||||
var/random_cult = pick(all_cults)
|
||||
var/picked_cult = new random_cult() //this seems redundent as fuck
|
||||
log_startup_progress("Summoning eldritch horrors...")
|
||||
if(!picked_cult)//shouldn't happen BUT JUST TO BE SURE LET US KNOW
|
||||
to_chat(world, "<span class='danger'>Failed to select a cult datum, Shank a coder.</span>")
|
||||
|
||||
log_startup_progress(" Failed to select a cult datum, Shank a coder!")
|
||||
else
|
||||
log_startup_progress(" Crab'sie has risen!")
|
||||
//todo:add adminonly datum var, check for said var here...
|
||||
return picked_cult
|
||||
|
||||
|
||||
@@ -333,6 +333,9 @@
|
||||
if(confused)
|
||||
confused = max(0, confused - 1)
|
||||
|
||||
if(cultslurring)
|
||||
cultslurring = max(cultslurring-1, 0)
|
||||
|
||||
//Jitteryness
|
||||
if(jitteriness)
|
||||
do_jitter_animation(jitteriness)
|
||||
|
||||
Reference in New Issue
Block a user