Files
Aurora.3/code/modules/spells/general/contract_spells.dm
Alberyk ed6dbee896 Bay wizard port/rework (#1635)
Ports the newest bay wizard version, with some additions and changes.

General changes:
-ported the newest bay wizard
-wizards can select some school of magic, which also changes their spell selection as whole.
-added several new spells, like raise dead, contracts that bind the person with the wizard, and more.
-added wands, limited sources of certain types of effects/spell, also with their own bad effects for non wizards
-changed the wizard checks to a faction check instead of a mind check
-fixed wizards without certain slots due to race being fucked over due to it
-added new artifacts
-balanced some spells like the emp
-added a lot of new sounds to spell, mostly from tg
-remove horse mask from spell selection, also, you can melt the mask with acid now
-wizard's spell are now displayed at round end like traitors and what they did buy
-also fixes vaurca, and vox, antags spawning without a mask by default
2017-02-07 18:45:42 +02:00

68 lines
1.6 KiB
Plaintext

//These spells are given to the owner of a contract when a victim signs it.
//As such they are REALLY REALLY powerful (because the victim is rewarded for signing it, and signing contracts is completely voluntary)
/spell/contract
name = "Contract Spell"
desc = "A spell perfecting the techniques of keeping a servant happy and obedient."
school = "transmutation"
spell_flags = 0
invocation = "none"
invocation_type = SpI_NONE
var/mob/subject
/spell/contract/New(var/mob/M)
..()
subject = M
name += " ([M.real_name])"
/spell/contract/choose_targets()
return list(subject)
/spell/contract/cast(mob/target,mob/user)
if(!subject)
usr << "This spell was not properly given a target. Contact a coder."
return null
if(istype(target,/list))
target = target[1]
return target
/spell/contract/reward
name = "Reward Contractee"
desc = "A spell that makes your contracted victim feel better."
charge_max = 300
cooldown_min = 100
hud_state = "wiz_jaunt_old"
/spell/contract/reward/cast(mob/living/target,mob/user)
target = ..(target,user)
if(!target)
return
target << "<span class='notice'>You feel great!</span>"
target.ExtinguishMob()
/spell/contract/punish
name = "Punish Contractee"
desc = "A spell that sets your contracted victim ablaze."
charge_max = 300
cooldown_min = 100
hud_state = "gen_immolate"
/spell/contract/punish/cast(mob/living/target,mob/user)
target = ..(target,user)
if(!target)
return
target << "<span class='danger'>You feel punished!</span>"
target.fire_stacks += 15
target.IgniteMob()