diff --git a/code/datums/spell.dm b/code/datums/spell.dm index 89ead867c24..cc29da42a43 100644 --- a/code/datums/spell.dm +++ b/code/datums/spell.dm @@ -144,7 +144,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin if(!istype(H.wear_suit, /obj/item/clothing/suit/wizrobe) && !istype(H.wear_suit, /obj/item/clothing/suit/space/hardsuit/wizard) && !istype(H.wear_suit, /obj/item/clothing/suit/space/eva/plasmaman/wizard)) to_chat(user, "I don't feel strong enough without my robe.") return 0 - if(!istype(H.shoes, /obj/item/clothing/shoes/sandal)) + if(!istype(H.shoes, /obj/item/clothing/shoes/sandal) && !istype(H.shoes, /obj/item/clothing/shoes/magboots/wizard)) to_chat(user, "I don't feel strong enough without my sandals.") return 0 if(!istype(H.head, /obj/item/clothing/head/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/hardsuit/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/eva/plasmaman/wizard)) @@ -459,11 +459,11 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin var/clothcheck = locate(/obj/effect/proc_holder/spell/noclothes) in user.mob_spell_list var/clothcheck2 = user.mind && (locate(/obj/effect/proc_holder/spell/noclothes) in user.mind.spell_list) if(clothes_req && !clothcheck && !clothcheck2) //clothes check - if(!istype(H.wear_suit, /obj/item/clothing/suit/wizrobe) && !istype(H.wear_suit, /obj/item/clothing/suit/space/hardsuit/wizard)) + if(!istype(H.wear_suit, /obj/item/clothing/suit/wizrobe) && !istype(H.wear_suit, /obj/item/clothing/suit/space/hardsuit/wizard) && !istype(H.wear_suit, /obj/item/clothing/suit/space/eva/plasmaman/wizard)) return 0 - if(!istype(H.shoes, /obj/item/clothing/shoes/sandal)) + if(!istype(H.shoes, /obj/item/clothing/shoes/sandal) && !istype(H.shoes, /obj/item/clothing/shoes/magboots/wizard)) return 0 - if(!istype(H.head, /obj/item/clothing/head/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/hardsuit/wizard)) + if(!istype(H.head, /obj/item/clothing/head/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/hardsuit/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/eva/plasmaman/wizard)) return 0 else if(clothes_req || human_req) diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index 7b81518526a..0cc5fcf0ca5 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -353,7 +353,7 @@ /datum/spellbook_entry/item/armor name = "Mastercrafted Armor Set" - desc = "An artefact suit of armor that allows you to cast spells while providing more protection against attacks and the void of space." + desc = "An artefact suit of armor that allows you to cast spells while providing more protection against attacks and the void of space. Comes bundled with Boots of Gripping." item_path = /obj/item/clothing/suit/space/hardsuit/wizard log_name = "HS" category = "Defensive" @@ -361,7 +361,7 @@ /datum/spellbook_entry/item/armor/Buy(var/mob/living/carbon/human/user,var/obj/item/spellbook/book) . = ..() if(.) - new /obj/item/clothing/shoes/sandal(get_turf(user)) //In case they've lost them. + new /obj/item/clothing/shoes/magboots/wizard(get_turf(user)) new /obj/item/clothing/gloves/color/purple(get_turf(user))//To complete the outfit new /obj/item/clothing/head/helmet/space/hardsuit/wizard(get_turf(user)) diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 3156b617c03..8cfcb2b1c5f 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -7,6 +7,7 @@ var/magpulse = 0 var/slowdown_active = 2 var/slowdown_passive = SHOES_SLOWDOWN + var/magpulse_name = "mag-pulse traction system" actions_types = list(/datum/action/item_action/toggle) strip_delay = 70 put_on_delay = 70 @@ -21,7 +22,7 @@ slowdown = slowdown_active magpulse = !magpulse icon_state = "[magboot_state][magpulse]" - to_chat(user, "You [magpulse ? "enable" : "disable"] the mag-pulse traction system.") + to_chat(user, "You [magpulse ? "enable" : "disable"] the [magpulse_name].") user.update_inv_shoes() //so our mob-overlays update user.update_gravity(user.mob_has_gravity()) for(var/X in actions) @@ -33,7 +34,7 @@ /obj/item/clothing/shoes/magboots/examine(mob/user) ..(user) - to_chat(user, "Its mag-pulse traction system appears to be [magpulse ? "enabled" : "disabled"].") + to_chat(user, "Its [magpulse_name] appears to be [magpulse ? "enabled" : "disabled"].") /obj/item/clothing/shoes/magboots/advance @@ -65,7 +66,27 @@ obj/item/clothing/shoes/magboots/syndie/advance //For the Syndicate Strike Team slowdown = SHOES_SLOWDOWN+1 slowdown_active = SHOES_SLOWDOWN+1 slowdown_passive = SHOES_SLOWDOWN+1 + magpulse_name = "honk-powered traction system" item_color = "clown" silence_steps = 1 shoe_sound = "clownstep" - origin_tech = "magnets=4;syndicate=2" \ No newline at end of file + origin_tech = "magnets=4;syndicate=2" + +/obj/item/clothing/shoes/magboots/wizard //bundled with the wiz hardsuit + name = "boots of gripping" + desc = "These magical boots, once activated, will stay gripped to any surface without slowing you down." + icon_state = "wizmag0" + magboot_state = "wizmag" + slowdown_active = SHOES_SLOWDOWN //wiz hardsuit already slows you down, no need to double it + magpulse_name = "gripping ability" + +/obj/item/clothing/shoes/magboots/wizard/attack_self(mob/user) + if(user) + if(user.mind in ticker.mode.wizards) + if(magpulse) //faint blue light when shoes are turned on gives a reason to turn them off when not needed in maint + set_light(0) + else + set_light(2, 1, LIGHT_COLOR_LIGHTBLUE) + ..() + else + to_chat(user, "You poke the gem on [src]. Nothing happens.") \ No newline at end of file diff --git a/icons/mob/feet.dmi b/icons/mob/feet.dmi index 0ba92e7705c..7fa7b78561d 100644 Binary files a/icons/mob/feet.dmi and b/icons/mob/feet.dmi differ diff --git a/icons/obj/clothing/shoes.dmi b/icons/obj/clothing/shoes.dmi index 7143a55ab59..14a173785ed 100644 Binary files a/icons/obj/clothing/shoes.dmi and b/icons/obj/clothing/shoes.dmi differ