mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 03:25:49 +01:00
Adds more magic items and spells to the wizard spellbook (#15036)
* touches more or less everthing that is magic * Other changes I forgot to put in * removes extra s * nevermind lets not do drake form * Apply suggestions from code review Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com> * Better variable name * Heart curse removed * Re adds new stuff Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
This commit is contained in:
@@ -172,6 +172,18 @@
|
||||
log_name = "IG"
|
||||
category = "Offensive"
|
||||
|
||||
/datum/spellbook_entry/sacred_flame
|
||||
name = "Sacred Flame"
|
||||
spell_type = /obj/effect/proc_holder/spell/targeted/sacred_flame
|
||||
cost = 1
|
||||
log_name = "SF"
|
||||
refundable = 0 //You get fire immunity out of it, no.
|
||||
|
||||
/datum/spellbook_entry/sacred_flame/LearnSpell(mob/living/carbon/human/user, obj/item/spellbook/book, obj/effect/proc_holder/spell/newspell)
|
||||
..()
|
||||
user.dna.SetSEState(GLOB.coldblock, 1)
|
||||
genemutcheck(user, GLOB.coldblock, null, MUTCHK_FORCED)
|
||||
|
||||
//Defensive
|
||||
/datum/spellbook_entry/disabletech
|
||||
name = "Disable Tech"
|
||||
@@ -357,10 +369,14 @@
|
||||
name = "Buy Item"
|
||||
refundable = 0
|
||||
buy_word = "Summon"
|
||||
var/spawn_on_floor = FALSE
|
||||
var/item_path = null
|
||||
|
||||
/datum/spellbook_entry/item/Buy(mob/living/carbon/human/user, obj/item/spellbook/book)
|
||||
user.put_in_hands(new item_path)
|
||||
if(spawn_on_floor == FALSE)
|
||||
user.put_in_hands(new item_path)
|
||||
else
|
||||
new item_path(user.loc)
|
||||
SSblackbox.record_feedback("tally", "wizard_spell_learned", 1, log_name)
|
||||
return 1
|
||||
|
||||
@@ -406,6 +422,30 @@
|
||||
log_name = "WA"
|
||||
category = "Artefacts"
|
||||
|
||||
/datum/spellbook_entry/item/cursed_heart
|
||||
name = "Cursed Heart"
|
||||
desc = "A heart that has been empowered with magic to heal the user. The user must ensure the heart is manually beaten or their blood circulation will suffer, but every beat heals their injuries. It must beat every 6 seconds. Not reccomended for first time wizards."
|
||||
item_path = /obj/item/organ/internal/heart/cursed/wizard
|
||||
log_name = "CH"
|
||||
cost = 1
|
||||
category = "Artefacts"
|
||||
|
||||
/datum/spellbook_entry/item/voice_of_god
|
||||
name = "Voice of god"
|
||||
desc = "A magical vocal cord that can be used to yell out with the voice of a god, be it to harm, help, or confuse the target."
|
||||
item_path = /obj/item/organ/internal/vocal_cords/colossus/wizard
|
||||
log_name = "VG"
|
||||
category = "Artefacts"
|
||||
|
||||
/datum/spellbook_entry/item/warp_cubes
|
||||
name = "Warp Cubes"
|
||||
desc = "Two magic cubes, that when they are twisted in hand, teleports the user to the location of the other cube instantly. Great for silently teleporting to a fixed location, or teleporting you to an appretnance, or vice versa. Do not leave on the wizard den, it will not work."
|
||||
item_path = /obj/item/warp_cube/red
|
||||
log_name = "WC"
|
||||
cost = 1
|
||||
spawn_on_floor = TRUE // breaks if spawned in hand
|
||||
category = "Artefacts"
|
||||
|
||||
//Weapons and Armors
|
||||
/datum/spellbook_entry/item/battlemage
|
||||
name = "Battlemage Armour"
|
||||
@@ -437,6 +477,21 @@
|
||||
log_name = "SI"
|
||||
category = "Weapons and Armors"
|
||||
|
||||
/datum/spellbook_entry/item/spell_blade //Yes spellblade is technicaly a staff, but you can melee with it and it is not called a staff so I am putting it here
|
||||
name = "Spellblade"
|
||||
desc = "A magical sword that is quite good at slashing people, but is even better at shooting magical projectiles that can potentialy delimb at range."
|
||||
item_path = /obj/item/gun/magic/staff/spellblade
|
||||
log_name = "SB"
|
||||
category = "Weapons and Armors"
|
||||
|
||||
/datum/spellbook_entry/item/meat_hook
|
||||
name = "Meat hook"
|
||||
desc = "An enchanted hook, that can be used to hook people, hurt them, and bring them right to you. Quite bulky, works well as a belt though."
|
||||
item_path = /obj/item/gun/magic/hook
|
||||
cost = 1
|
||||
log_name = "MH"
|
||||
category = "Weapons and Armors"
|
||||
|
||||
//Staves
|
||||
/datum/spellbook_entry/item/staffdoor
|
||||
name = "Staff of Door Creation"
|
||||
|
||||
@@ -300,6 +300,7 @@
|
||||
icon = 'icons/obj/lavaland/artefacts.dmi'
|
||||
icon_state = "blue_cube"
|
||||
var/obj/item/warp_cube/linked
|
||||
var/cooldown = FALSE
|
||||
|
||||
/obj/item/warp_cube/Destroy()
|
||||
if(linked)
|
||||
@@ -315,6 +316,9 @@
|
||||
if(is_in_teleport_proof_area(user) || is_in_teleport_proof_area(linked))
|
||||
to_chat(user, "<span class='warning'>[src] sparks and fizzles.</span>")
|
||||
return
|
||||
if(cooldown)
|
||||
to_chat(user, "<span class='warning'>[src] sparks and fizzles.</span>")
|
||||
return
|
||||
|
||||
var/datum/effect_system/smoke_spread/smoke = new
|
||||
smoke.set_up(1, 0, user.loc)
|
||||
@@ -326,6 +330,13 @@
|
||||
var/datum/effect_system/smoke_spread/smoke2 = new
|
||||
smoke2.set_up(1, 0, user.loc)
|
||||
smoke2.start()
|
||||
cooldown = TRUE
|
||||
linked.cooldown = TRUE
|
||||
addtimer(CALLBACK(src, .proc/reset), 20 SECONDS)
|
||||
|
||||
/obj/item/warp_cube/proc/reset()
|
||||
cooldown = FALSE
|
||||
linked.cooldown = FALSE
|
||||
|
||||
/obj/item/warp_cube/red
|
||||
name = "red cube"
|
||||
|
||||
@@ -182,6 +182,10 @@ GLOBAL_DATUM_INIT(multispin_words, /regex, regex("like a record baby"))
|
||||
if(iscultist(owner))
|
||||
power_multiplier *= 2
|
||||
|
||||
//It's magic, they are a wizard.
|
||||
if(iswizard(owner))
|
||||
power_multiplier *= 2.5
|
||||
|
||||
//Try to check if the speaker specified a name or a job to focus on
|
||||
var/list/specific_listeners = list()
|
||||
var/found_string = null
|
||||
@@ -477,3 +481,10 @@ GLOBAL_DATUM_INIT(multispin_words, /regex, regex("like a record baby"))
|
||||
|
||||
message_admins("[key_name_admin(owner)] has said '[log_message]' with a Voice of God, affecting [english_list(listeners)], with a power multiplier of [power_multiplier].")
|
||||
log_game("[key_name(owner)] has said '[log_message]' with a Voice of God, affecting [english_list(listeners)], with a power multiplier of [power_multiplier].")
|
||||
|
||||
/obj/item/organ/internal/vocal_cords/colossus/wizard
|
||||
desc = "They carry the voice of an ancient god. This one is enchanted to implant it into yourself when used in hand"
|
||||
|
||||
/obj/item/organ/internal/vocal_cords/colossus/wizard/attack_self(mob/living/user)
|
||||
user.drop_item()
|
||||
insert(user)
|
||||
|
||||
Reference in New Issue
Block a user