diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 3eea2400aa2..1d4883b2c47 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -762,6 +762,40 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 inhand_icon_state = "hoverboard_nt" board_item_type = /obj/vehicle/ridden/scooter/skateboard/hoverboard/admin +/obj/item/melee/skateboard/holyboard + name = "holy skateboard" + desc = "A board blessed by the gods with the power to grind for our sins. Has the initials 'J.C.' on the underside." + icon_state = "hoverboard_holy_held" + inhand_icon_state = "hoverboard_holy" + force = 18 + throwforce = 6 + w_class = WEIGHT_CLASS_NORMAL + attack_verb_continuous = list("bashes", "crashes", "grinds", "skates") + attack_verb_simple = list("bash", "crash", "grind", "skate") + board_item_type = /obj/vehicle/ridden/scooter/skateboard/hoverboard/holyboarded + +/obj/item/melee/skateboard/holyboard/Initialize(mapload) + . = ..() + AddComponent(/datum/component/anti_magic, MAGIC_RESISTANCE|MAGIC_RESISTANCE_HOLY) + AddComponent(/datum/component/effect_remover, \ + success_feedback = "You disrupt the magic of %THEEFFECT with %THEWEAPON.", \ + success_forcesay = "BEGONE FOUL MAGICKS!!", \ + tip_text = "Clear rune", \ + on_clear_callback = CALLBACK(src, PROC_REF(on_cult_rune_removed)), \ + effects_we_clear = list(/obj/effect/rune, /obj/effect/heretic_rune) \ + ) + AddElement(/datum/element/bane, target_type = /mob/living/basic/revenant, damage_multiplier = 0, added_damage = 25, requires_combat_mode = FALSE) + +/obj/item/melee/skateboard/holyboard/proc/on_cult_rune_removed(obj/effect/target, mob/living/user) + SIGNAL_HANDLER + if(!istype(target, /obj/effect/rune)) + return + + var/obj/effect/rune/target_rune = target + if(target_rune.log_when_erased) + user.log_message("erased [target_rune.cultist_name] rune using [src]", LOG_GAME) + SSshuttle.shuttle_purchase_requirements_met[SHUTTLE_UNLOCK_NARNAR] = TRUE + /obj/item/melee/baseball_bat name = "baseball bat" desc = "There ain't a skull in the league that can withstand a swatter." diff --git a/code/modules/jobs/job_types/chaplain/chaplain_nullrod.dm b/code/modules/jobs/job_types/chaplain/chaplain_nullrod.dm index f204518acc5..df658d71ddd 100644 --- a/code/modules/jobs/job_types/chaplain/chaplain_nullrod.dm +++ b/code/modules/jobs/job_types/chaplain/chaplain_nullrod.dm @@ -48,6 +48,7 @@ Allows you to behead targets for empowered strikes. \ Harms you if you dismiss the scythe without first causing harm to a creature. \ The shard also causes you to become Morbid, shifting your interests towards the macabre." + rods[/obj/item/melee/skateboard/holyboard] = "A skateboard that grants you flight and anti-magic abilities while ridden. Fits in your bag." AddComponent(/datum/component/subtype_picker, rods, CALLBACK(src, PROC_REF(on_holy_weapon_picked))) /obj/item/nullrod/proc/on_holy_weapon_picked(obj/item/nullrod/holy_weapon_type) diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index 0b842b8ed9c..08edbf78867 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -206,6 +206,21 @@ to_chat(rider, span_warning("[src] [p_are()] not powerful enough to fly upwards.")) return FALSE +/obj/vehicle/ridden/scooter/skateboard/hoverboard/holyboarded + name = "holy skateboard" + desc = "A board blessed by the gods with the power to grind for our sins. Has the initials 'J.C.' on the underside." + board_item_type = /obj/item/melee/skateboard/holyboard + instability = 3 + icon_state = "hoverboard_holy" +/obj/vehicle/ridden/scooter/skateboard/hoverboard/holyboarded/post_buckle_mob(mob/living/M) + M.AddComponent(/datum/component/anti_magic, MAGIC_RESISTANCE|MAGIC_RESISTANCE_HOLY) + return ..() + +/obj/vehicle/ridden/scooter/skateboard/hoverboard/holyboarded/post_unbuckle_mob(mob/living/M) + if(!has_buckled_mobs()) + qdel (M.GetComponent(/datum/component/anti_magic, MAGIC_RESISTANCE|MAGIC_RESISTANCE_HOLY)) + return ..() + /obj/vehicle/ridden/scooter/skateboard/hoverboard/admin name = "\improper Board Of Directors" desc = "The engineering complexity of a spaceship concentrated inside of a board. Just as expensive, too." diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi index 5515ad69c34..86bd5020f4f 100644 Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index fdad955fd9a..a6de8b97464 100644 Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ diff --git a/icons/mob/rideables/vehicles.dmi b/icons/mob/rideables/vehicles.dmi index 7e2b8a05f20..08923668d26 100644 Binary files a/icons/mob/rideables/vehicles.dmi and b/icons/mob/rideables/vehicles.dmi differ