mirror of
https://github.com/KabKebab/GS13.git
synced 2026-07-11 07:59:08 +01:00
dragon's blood tweaking
This commit is contained in:
@@ -738,11 +738,10 @@
|
||||
if(1)
|
||||
new /obj/item/melee/ghost_sword(src)
|
||||
if(2)
|
||||
new /obj/item/lava_staff(src)
|
||||
if(3)
|
||||
new /obj/item/book/granter/spell/sacredflame(src)
|
||||
new /obj/item/gun/magic/wand/fireball(src)
|
||||
if(4)
|
||||
new /obj/item/lava_staff(src)
|
||||
if(3 to 4)
|
||||
new /obj/item/dragons_blood(src)
|
||||
|
||||
/obj/structure/closet/crate/necropolis/dragon/crusher
|
||||
@@ -852,33 +851,19 @@
|
||||
icon_state = "vial"
|
||||
|
||||
/obj/item/dragons_blood/attack_self(mob/living/carbon/human/user)
|
||||
if(!istype(user))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/random = rand(1,4)
|
||||
|
||||
switch(random)
|
||||
if(1)
|
||||
to_chat(user, "<span class='danger'>Your appearance morphs to that of a very small humanoid ash dragon! You get to look like a freak without the cool abilities.</span>")
|
||||
H.dna.features = list("mcolor" = "A02720", "tail_lizard" = "Dark Tiger", "tail_human" = "None", "snout" = "Sharp", "horns" = "Curled", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "Long", "body_markings" = "Dark Tiger Body", "legs" = "Digitigrade Legs")
|
||||
H.eye_color = "fee5a3"
|
||||
H.set_species(/datum/species/lizard)
|
||||
if(2)
|
||||
to_chat(user, "<span class='danger'>Your flesh begins to melt! Miraculously, you seem fine otherwise.</span>")
|
||||
H.set_species(/datum/species/skeleton)
|
||||
if(3)
|
||||
to_chat(user, "<span class='danger'>Power courses through you! You can now shift your form at will.</span>")
|
||||
if(user.mind)
|
||||
var/obj/effect/proc_holder/spell/targeted/shapeshift/dragon/D = new
|
||||
user.mind.AddSpell(D)
|
||||
if(4)
|
||||
to_chat(user, "<span class='danger'>You feel like you could walk straight through lava now.</span>")
|
||||
H.weather_immunities |= "lava"
|
||||
if(prob(50))
|
||||
to_chat(user, "<span class='danger'>You feel like you could walk straight through lava now.</span>")
|
||||
user.weather_immunities |= "lava"
|
||||
else
|
||||
to_chat(user, "<span class='danger'>Power courses through you! You can now shift your form at will.</span>")
|
||||
if(user.mind)
|
||||
var/obj/effect/proc_holder/spell/targeted/shapeshift/dragon/D = new
|
||||
user.mind.AddSpell(D)
|
||||
|
||||
playsound(user.loc,'sound/items/drink.ogg', rand(10,50), 1)
|
||||
qdel(src)
|
||||
|
||||
|
||||
/datum/disease/transformation/dragon
|
||||
name = "dragon transformation"
|
||||
cure_text = "nothing"
|
||||
@@ -974,9 +959,7 @@
|
||||
switch(loot)
|
||||
if(1)
|
||||
new /obj/item/mayhem(src)
|
||||
if(2)
|
||||
new /obj/item/gun/magic/staff/spellblade(src)
|
||||
if(3)
|
||||
if(2 to 3)
|
||||
new /obj/item/gun/magic/staff/spellblade(src)
|
||||
|
||||
/obj/structure/closet/crate/necropolis/bubblegum/crusher
|
||||
@@ -1066,6 +1049,7 @@
|
||||
var/random_crystal = pick(choices)
|
||||
new random_crystal(src)
|
||||
new /obj/item/organ/vocal_cords/colossus(src)
|
||||
new /obj/item/skin_dissolver(src)
|
||||
|
||||
/obj/structure/closet/crate/necropolis/colossus/crusher
|
||||
name = "angelic colossus chest"
|
||||
@@ -1354,3 +1338,88 @@
|
||||
new /obj/item/wisp_lantern(src)
|
||||
if(3)
|
||||
new /obj/item/prisoncube(src)
|
||||
|
||||
//THE legion
|
||||
/obj/structure/closet/crate/necropolis/legion
|
||||
name = "\improper Guardian of the Necropolis crate"
|
||||
|
||||
/obj/structure/closet/crate/necropolis/legion/PopulateContents()
|
||||
new /obj/item/staff/storm(src)
|
||||
new /obj/item/skin_dissolver(src)
|
||||
|
||||
/obj/item/staff/storm
|
||||
name = "staff of storms"
|
||||
desc = "An ancient staff retrieved from the remains of Legion. The wind stirs as you move it."
|
||||
icon_state = "staffofstorms"
|
||||
item_state = "staffofstorms"
|
||||
icon = 'icons/obj/guns/magic.dmi'
|
||||
slot_flags = ITEM_SLOT_BACK
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
force = 25
|
||||
damtype = BURN
|
||||
hitsound = 'sound/weapons/sear.ogg'
|
||||
var/storm_type = /datum/weather/ash_storm
|
||||
var/storm_cooldown = 0
|
||||
var/static/list/excluded_areas = list(/area/reebe/city_of_cogs)
|
||||
|
||||
/obj/item/staff/storm/attack_self(mob/user)
|
||||
if(storm_cooldown > world.time)
|
||||
to_chat(user, "<span class='warning'>The staff is still recharging!</span>")
|
||||
return
|
||||
|
||||
var/area/user_area = get_area(user)
|
||||
var/turf/user_turf = get_turf(user)
|
||||
if(!user_area || !user_turf || (user_area.type in excluded_areas))
|
||||
to_chat(user, "<span class='warning'>Something is preventing you from using the staff here.</span>")
|
||||
return
|
||||
var/datum/weather/A
|
||||
for(var/V in SSweather.processing)
|
||||
var/datum/weather/W = V
|
||||
if((user_turf.z in W.impacted_z_levels) && W.area_type == user_area.type)
|
||||
A = W
|
||||
break
|
||||
|
||||
if(A)
|
||||
if(A.stage != END_STAGE)
|
||||
if(A.stage == WIND_DOWN_STAGE)
|
||||
to_chat(user, "<span class='warning'>The storm is already ending! It would be a waste to use the staff now.</span>")
|
||||
return
|
||||
user.visible_message("<span class='warning'>[user] holds [src] skywards as an orange beam travels into the sky!</span>", \
|
||||
"<span class='notice'>You hold [src] skyward, dispelling the storm!</span>")
|
||||
playsound(user, 'sound/magic/staff_change.ogg', 200, 0)
|
||||
A.wind_down()
|
||||
log_game("[user] ([key_name(user)]) has dispelled a storm at [AREACOORD(user_turf)]")
|
||||
return
|
||||
else
|
||||
A = new storm_type(list(user_turf.z))
|
||||
A.name = "staff storm"
|
||||
log_game("[user] ([key_name(user)]) has summoned [A] at [AREACOORD(user_turf)]")
|
||||
if (is_special_character(user))
|
||||
message_admins("[A] has been summoned in [ADMIN_VERBOSEJMP(user_turf)] by [user] ([key_name_admin(user)], a non-antagonist")
|
||||
A.area_type = user_area.type
|
||||
A.telegraph_duration = 100
|
||||
A.end_duration = 100
|
||||
|
||||
user.visible_message("<span class='warning'>[user] holds [src] skywards as red lightning crackles into the sky!</span>", \
|
||||
"<span class='notice'>You hold [src] skyward, calling down a terrible storm!</span>")
|
||||
playsound(user, 'sound/magic/staff_change.ogg', 200, 0)
|
||||
A.telegraph()
|
||||
storm_cooldown = world.time + 200
|
||||
|
||||
/obj/item/skin_dissolver
|
||||
name = "bottle of acid"
|
||||
desc = "Of course, you're only planning on keeping this in a safe place..."
|
||||
icon = 'icons/obj/wizard.dmi'
|
||||
icon_state = "vial"
|
||||
|
||||
/obj/item/skin_dissolver/attack_self(mob/living/carbon/human/user)
|
||||
to_chat(user, "<span class='danger'>Your flesh begins to melt! Miraculously, you seem fine otherwise.</span>")
|
||||
user.set_species(/datum/species/skeleton)
|
||||
playsound(user.loc,'sound/items/drink.ogg', rand(10,50), 1)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/skin_dissolver/attack(mob/M, mob/user)
|
||||
if(M == user)
|
||||
attack_self(user)
|
||||
return
|
||||
..()
|
||||
|
||||
Reference in New Issue
Block a user