Raging Mages: A Magistake (#9891)

Added a new gamemode, Magistake, where a group of four rookie mages take the skipjack on a joyride to the station.
    Magical staves now show their ammo on the HUD.
    Magic missile no longer targets fellow magic users.

Note to maintainers: This should be added to the server's config after being merged, to allow it to happen in Secret.
This commit is contained in:
Geeves
2020-09-19 12:43:28 +02:00
committed by GitHub
parent 54f83927b4
commit da7bb8392c
21 changed files with 358 additions and 21 deletions

View File

@@ -1,10 +1,10 @@
/obj/item/clothing/suit/armor/bone
name = "bone armor"
desc = "A rudimentary armor made of bones of several creatures."
icon = 'icons/obj/necromancer.dmi'
icon = 'icons/obj/wizard_gear.dmi'
icon_state = "bonearmor"
item_state = "bonearmor"
contained_sprite = 1
contained_sprite = TRUE
species_restricted = list(BODYTYPE_SKELETON)
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
armor = list(melee = 50, bullet = 40, laser = 50, energy = 25, bomb = 30, bio = 0, rad = 0)
@@ -12,9 +12,9 @@
/obj/item/clothing/head/helmet/bone
name = "bone helmet"
desc = "A rudimentary helmet made of some dead creature."
icon = 'icons/obj/necromancer.dmi'
icon = 'icons/obj/wizard_gear.dmi'
icon_state = "skull"
item_state = "skull"
contained_sprite = 1
contained_sprite = TRUE
species_restricted = list(BODYTYPE_SKELETON)
armor = list(melee = 50, bullet = 40, laser = 50, energy = 25, bomb = 30, bio = 0, rad = 0)

View File

@@ -24,6 +24,13 @@
amt_dam_fire = 10
/spell/targeted/projectile/magic_missile/choose_prox_targets(mob/user = usr, var/atom/movable/spell_holder)
var/list/targets = ..()
for(var/mob/living/target in targets)
if(target.is_wizard())
targets -= target
return targets
/spell/targeted/projectile/magic_missile/prox_cast(var/list/targets, atom/spell_holder)
spell_holder.visible_message("<span class='danger'>\The [spell_holder] pops with a flash!</span>")
for(var/mob/living/M in targets)

View File

@@ -1,6 +1,6 @@
/spell/targeted/equip_item/shield
name = "Summon Shield"
desc = "Summons the most holy of shields, the riot shield. Commonly used during wizard riots."
desc = "Summons the most holy of shields, the buckler. Commonly used during wizard riots."
feedback = "SH"
school = "evocation"
invocation = "Sia helda!"

View File

@@ -34,8 +34,7 @@
H.add_spell(spell_to_add)
/mob/proc/add_spell(var/spell/spell_to_add, var/spell_base = "wiz_spell_ready", var/master_type = /obj/screen/movable/spell_master)
if(isobserver(usr)) // we spawned in via ghost spawner, so set our thing to this so we don't screw up
usr = src
usr = src // whoever made screen objects is an asshole and forced me to do this, i regret absolutely nothing
if(!spell_masters)
spell_masters = list()