mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-30 03:22:41 +00:00
* Faction defines * fixes --------- Co-authored-by: Profakos <profakos@gmail.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
611 lines
27 KiB
Plaintext
611 lines
27 KiB
Plaintext
// CHAPLAIN NULLROD AND CUSTOM WEAPONS //
|
|
|
|
/obj/item/nullrod
|
|
name = "null rod"
|
|
desc = "A rod of pure obsidian; its very presence disrupts and dampens 'magical forces'. That's what the guidebook says, anyway."
|
|
icon_state = "nullrod"
|
|
inhand_icon_state = "nullrod"
|
|
lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi'
|
|
force = 18
|
|
throw_speed = 3
|
|
throw_range = 4
|
|
throwforce = 10
|
|
slot_flags = ITEM_SLOT_BELT
|
|
w_class = WEIGHT_CLASS_TINY
|
|
obj_flags = UNIQUE_RENAME
|
|
wound_bonus = -10
|
|
/// boolean on whether it's allowed to be picked from the nullrod's transformation ability
|
|
var/chaplain_spawnable = TRUE
|
|
/// Short description of what this item is capable of, for radial menu uses.
|
|
var/menu_description = "A standard chaplain's weapon. Fits in pockets. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/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 MAGIKS!!", \
|
|
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/simple_animal/revenant, damage_multiplier = 0, added_damage = 25, requires_combat_mode = FALSE)
|
|
|
|
if(!GLOB.holy_weapon_type && type == /obj/item/nullrod)
|
|
var/list/rods = list()
|
|
for(var/obj/item/nullrod/nullrod_type as anything in typesof(/obj/item/nullrod))
|
|
if(!initial(nullrod_type.chaplain_spawnable))
|
|
continue
|
|
rods[nullrod_type] = initial(nullrod_type.menu_description)
|
|
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)
|
|
GLOB.holy_weapon_type = holy_weapon_type
|
|
SSblackbox.record_feedback("tally", "chaplain_weapon", 1, "[initial(holy_weapon_type.name)]")
|
|
|
|
/obj/item/nullrod/proc/on_cult_rune_removed(obj/effect/target, mob/living/user)
|
|
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 a null rod", LOG_GAME)
|
|
message_admins("[ADMIN_LOOKUPFLW(user)] erased a [target_rune.cultist_name] rune with a null rod.")
|
|
SSshuttle.shuttle_purchase_requirements_met[SHUTTLE_UNLOCK_NARNAR] = TRUE
|
|
|
|
/obj/item/nullrod/suicide_act(mob/living/user)
|
|
user.visible_message(span_suicide("[user] is killing [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to get closer to god!"))
|
|
return (BRUTELOSS|FIRELOSS)
|
|
|
|
/obj/item/nullrod/godhand
|
|
name = "god hand"
|
|
desc = "This hand of yours glows with an awesome power!"
|
|
icon_state = "disintegrate"
|
|
inhand_icon_state = "disintegrate"
|
|
lefthand_file = 'icons/mob/inhands/items/touchspell_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/items/touchspell_righthand.dmi'
|
|
slot_flags = null
|
|
item_flags = ABSTRACT | DROPDEL
|
|
w_class = WEIGHT_CLASS_HUGE
|
|
hitsound = 'sound/weapons/sear.ogg'
|
|
damtype = BURN
|
|
attack_verb_continuous = list("punches", "cross counters", "pummels")
|
|
attack_verb_simple = list(SFX_PUNCH, "cross counter", "pummel")
|
|
menu_description = "An undroppable god hand dealing burn damage. Disappears if the arm holding it is cut off."
|
|
|
|
/obj/item/nullrod/godhand/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT)
|
|
|
|
/obj/item/nullrod/staff
|
|
name = "red holy staff"
|
|
desc = "It has a mysterious, protective aura."
|
|
icon_state = "godstaff-red"
|
|
inhand_icon_state = "godstaff-red"
|
|
lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi'
|
|
w_class = WEIGHT_CLASS_HUGE
|
|
force = 5
|
|
slot_flags = ITEM_SLOT_BACK
|
|
block_chance = 50
|
|
menu_description = "A red staff which provides a medium chance of blocking incoming attacks via a protective red aura around its user, but deals very low amount of damage. Can be worn only on the back."
|
|
/// The icon which appears over the mob holding the item
|
|
var/shield_icon = "shield-red"
|
|
|
|
/obj/item/nullrod/staff/worn_overlays(mutable_appearance/standing, isinhands)
|
|
. = ..()
|
|
if(isinhands)
|
|
. += mutable_appearance('icons/effects/effects.dmi', shield_icon, MOB_SHIELD_LAYER)
|
|
|
|
/obj/item/nullrod/staff/blue
|
|
name = "blue holy staff"
|
|
icon_state = "godstaff-blue"
|
|
inhand_icon_state = "godstaff-blue"
|
|
shield_icon = "shield-old"
|
|
menu_description = "A blue staff which provides a medium chance of blocking incoming attacks via a protective blue aura around its user, but deals very low amount of damage. Can be worn only on the back."
|
|
|
|
/obj/item/nullrod/claymore
|
|
name = "holy claymore"
|
|
desc = "A weapon fit for a crusade!"
|
|
icon_state = "claymore_gold"
|
|
inhand_icon_state = "claymore_gold"
|
|
worn_icon_state = "claymore_gold"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_BELT
|
|
block_chance = 30
|
|
sharpness = SHARP_EDGED
|
|
hitsound = 'sound/weapons/bladeslice.ogg'
|
|
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "cuts")
|
|
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "cut")
|
|
menu_description = "A sharp claymore which provides a low chance of blocking incoming melee attacks. Can be worn on the back or belt."
|
|
|
|
/obj/item/nullrod/claymore/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK)
|
|
if(attack_type == PROJECTILE_ATTACK)
|
|
final_block_chance = 0 //Don't bring a sword to a gunfight
|
|
return ..()
|
|
|
|
/obj/item/nullrod/claymore/darkblade
|
|
name = "dark blade"
|
|
desc = "Spread the glory of the dark gods!"
|
|
icon = 'icons/obj/cult/items_and_weapons.dmi'
|
|
icon_state = "cultblade"
|
|
inhand_icon_state = "cultblade"
|
|
worn_icon_state = "cultblade"
|
|
lefthand_file = 'icons/mob/inhands/64x64_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/64x64_righthand.dmi'
|
|
inhand_x_dimension = 64
|
|
inhand_y_dimension = 64
|
|
hitsound = 'sound/hallucinations/growl1.ogg'
|
|
menu_description = "A sharp blade which provides a low chance of blocking incoming melee attacks. Can be worn on the back or belt."
|
|
|
|
/obj/item/nullrod/claymore/chainsaw_sword
|
|
name = "sacred chainsaw sword"
|
|
desc = "Suffer not a heretic to live."
|
|
icon_state = "chainswordon"
|
|
inhand_icon_state = "chainswordon"
|
|
worn_icon_state = "chainswordon"
|
|
slot_flags = ITEM_SLOT_BELT
|
|
attack_verb_continuous = list("saws", "tears", "lacerates", "cuts", "chops", "dices")
|
|
attack_verb_simple = list("saw", "tear", "lacerate", "cut", "chop", "dice")
|
|
hitsound = 'sound/weapons/chainsawhit.ogg'
|
|
tool_behaviour = TOOL_SAW
|
|
toolspeed = 1.5 //slower than a real saw
|
|
menu_description = "A sharp chainsaw sword which provides a low chance of blocking incoming melee attacks. Can be used as a slower saw tool. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/claymore/glowing
|
|
name = "force weapon"
|
|
desc = "The blade glows with the power of faith. Or possibly a battery."
|
|
icon_state = "swordon"
|
|
inhand_icon_state = "swordon"
|
|
worn_icon_state = "swordon"
|
|
menu_description = "A sharp weapon which provides a low chance of blocking incoming melee attacks. Can be worn on the back or belt."
|
|
|
|
/obj/item/nullrod/claymore/katana
|
|
name = "\improper Hanzo steel"
|
|
desc = "Capable of cutting clean through a holy claymore."
|
|
icon_state = "katana"
|
|
inhand_icon_state = "katana"
|
|
worn_icon_state = "katana"
|
|
menu_description = "A sharp katana which provides a low chance of blocking incoming melee attacks. Can be worn on the back or belt."
|
|
|
|
/obj/item/nullrod/claymore/multiverse
|
|
name = "extradimensional blade"
|
|
desc = "Once the harbinger of an interdimensional war, its sharpness fluctuates wildly."
|
|
icon_state = "multiverse"
|
|
inhand_icon_state = "multiverse"
|
|
worn_icon_state = "multiverse"
|
|
slot_flags = ITEM_SLOT_BACK
|
|
force = 15
|
|
menu_description = "An odd sharp blade which provides a low chance of blocking incoming melee attacks and deals a random amount of damage, which can range from almost nothing to very high. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/claymore/multiverse/melee_attack_chain(mob/user, atom/target, params)
|
|
var/old_force = force
|
|
force += rand(-14, 15)
|
|
. = ..()
|
|
force = old_force
|
|
|
|
/obj/item/nullrod/claymore/saber
|
|
name = "light energy sword"
|
|
desc = "If you strike me down, I shall become more robust than you can possibly imagine."
|
|
icon = 'icons/obj/weapons/transforming_energy.dmi'
|
|
icon_state = "e_sword_on_blue"
|
|
inhand_icon_state = "e_sword_on_blue"
|
|
worn_icon_state = "swordblue"
|
|
slot_flags = ITEM_SLOT_BELT
|
|
hitsound = 'sound/weapons/blade1.ogg'
|
|
menu_description = "A sharp energy sword which provides a low chance of blocking incoming melee attacks. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/claymore/saber/red
|
|
name = "dark energy sword"
|
|
desc = "Woefully ineffective when used on steep terrain."
|
|
icon_state = "e_sword_on_red"
|
|
inhand_icon_state = "e_sword_on_red"
|
|
worn_icon_state = "swordred"
|
|
|
|
/obj/item/nullrod/claymore/saber/pirate
|
|
name = "nautical energy sword"
|
|
desc = "Convincing HR that your religion involved piracy was no mean feat."
|
|
icon_state = "e_cutlass_on"
|
|
inhand_icon_state = "e_cutlass_on"
|
|
worn_icon_state = "swordred"
|
|
|
|
/obj/item/nullrod/sord
|
|
name = "\improper UNREAL SORD"
|
|
desc = "This thing is so unspeakably HOLY you are having a hard time even holding it."
|
|
icon_state = "sord"
|
|
inhand_icon_state = "sord"
|
|
worn_icon_state = "sord"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
force = 4.13
|
|
throwforce = 1
|
|
slot_flags = ITEM_SLOT_BELT
|
|
hitsound = 'sound/weapons/bladeslice.ogg'
|
|
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "cuts")
|
|
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "cut")
|
|
menu_description = "An odd s(w)ord dealing a laughable amount of damage. Fits in pockets. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/sord/suicide_act(mob/living/user) //a near-exact copy+paste of the actual sord suicide_act()
|
|
user.visible_message(span_suicide("[user] is trying to impale [user.p_them()]self with [src]! It might be a suicide attempt if it weren't so HOLY."), \
|
|
span_suicide("You try to impale yourself with [src], but it's TOO HOLY..."))
|
|
return SHAME
|
|
|
|
/obj/item/nullrod/scythe
|
|
name = "reaper scythe"
|
|
desc = "Ask not for whom the bell tolls..."
|
|
icon_state = "scythe1"
|
|
inhand_icon_state = "scythe1"
|
|
lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi'
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
armour_penetration = 35
|
|
slot_flags = ITEM_SLOT_BACK
|
|
sharpness = SHARP_EDGED
|
|
attack_verb_continuous = list("chops", "slices", "cuts", "reaps")
|
|
attack_verb_simple = list("chop", "slice", "cut", "reap")
|
|
menu_description = "A sharp scythe which partially penetrates armor. Very effective at butchering bodies. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/scythe/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/butchering, \
|
|
speed = 7 SECONDS, \
|
|
effectiveness = 110, \
|
|
)
|
|
AddElement(/datum/element/bane, mob_biotypes = MOB_PLANT, damage_multiplier = 0.5, requires_combat_mode = FALSE)
|
|
|
|
/obj/item/nullrod/scythe/vibro
|
|
name = "high frequency blade"
|
|
desc = "Bad references are the DNA of the soul."
|
|
icon_state = "hfrequency0"
|
|
inhand_icon_state = "hfrequency1"
|
|
worn_icon_state = "hfrequency0"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
attack_verb_continuous = list("chops", "slices", "cuts", "zandatsu's")
|
|
attack_verb_simple = list("chop", "slice", "cut", "zandatsu")
|
|
hitsound = 'sound/weapons/rapierhit.ogg'
|
|
menu_description = "A sharp blade which partially penetrates armor. Very effective at butchering bodies. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/scythe/spellblade
|
|
name = "dormant spellblade"
|
|
desc = "The blade grants the wielder nearly limitless power...if they can figure out how to turn it on, that is."
|
|
icon_state = "spellblade"
|
|
inhand_icon_state = "spellblade"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
worn_icon_state = "spellblade"
|
|
icon = 'icons/obj/weapons/guns/magic.dmi'
|
|
hitsound = 'sound/weapons/rapierhit.ogg'
|
|
menu_description = "A sharp blade which partially penetrates armor. Very effective at butchering bodies. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/scythe/talking
|
|
name = "possessed blade"
|
|
desc = "When the station falls into chaos, it's nice to have a friend by your side."
|
|
icon_state = "talking_sword"
|
|
inhand_icon_state = "talking_sword"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
worn_icon_state = "talking_sword"
|
|
attack_verb_continuous = list("chops", "slices", "cuts")
|
|
attack_verb_simple= list("chop", "slice", "cut")
|
|
hitsound = 'sound/weapons/rapierhit.ogg'
|
|
menu_description = "A sharp blade which partially penetrates armor. Able to awaken a friendly spirit to provide guidance. Very effective at butchering bodies. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/scythe/talking/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/spirit_holding)
|
|
|
|
/obj/item/nullrod/scythe/talking/chainsword
|
|
name = "possessed chainsaw sword"
|
|
desc = "Suffer not a heretic to live."
|
|
icon_state = "chainswordon"
|
|
inhand_icon_state = "chainswordon"
|
|
worn_icon_state = "chainswordon"
|
|
force = 30
|
|
slot_flags = ITEM_SLOT_BELT
|
|
attack_verb_continuous = list("saws", "tears", "lacerates", "cuts", "chops", "dices")
|
|
attack_verb_simple = list("saw", "tear", "lacerate", "cut", "chop", "dice")
|
|
hitsound = 'sound/weapons/chainsawhit.ogg'
|
|
tool_behaviour = TOOL_SAW
|
|
toolspeed = 0.5 //same speed as an active chainsaw
|
|
chaplain_spawnable = FALSE //prevents being pickable as a chaplain weapon (it has 30 force)
|
|
|
|
/obj/item/nullrod/hammer
|
|
name = "relic war hammer"
|
|
desc = "This war hammer cost the chaplain forty thousand space dollars."
|
|
icon_state = "hammeron"
|
|
inhand_icon_state = "hammeron"
|
|
worn_icon_state = "hammeron"
|
|
lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi'
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
attack_verb_continuous = list("smashes", "bashes", "hammers", "crunches")
|
|
attack_verb_simple = list("smash", "bash", "hammer", "crunch")
|
|
menu_description = "A war hammer. Capable of tapping knees to measure brain health. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/hammer/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/kneejerk)
|
|
|
|
/obj/item/nullrod/chainsaw
|
|
name = "chainsaw hand"
|
|
desc = "Good? Bad? You're the guy with the chainsaw hand."
|
|
icon_state = "chainsaw_on"
|
|
inhand_icon_state = "mounted_chainsaw"
|
|
lefthand_file = 'icons/mob/inhands/weapons/chainsaw_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/chainsaw_righthand.dmi'
|
|
w_class = WEIGHT_CLASS_HUGE
|
|
slot_flags = null
|
|
item_flags = ABSTRACT
|
|
sharpness = SHARP_EDGED
|
|
attack_verb_continuous = list("saws", "tears", "lacerates", "cuts", "chops", "dices")
|
|
attack_verb_simple = list("saw", "tear", "lacerate", "cut", "chop", "dice")
|
|
hitsound = 'sound/weapons/chainsawhit.ogg'
|
|
tool_behaviour = TOOL_SAW
|
|
toolspeed = 2 //slower than a real saw
|
|
menu_description = "An undroppable sharp chainsaw hand. Can be used as a very slow saw tool. Capable of slowly butchering bodies. Disappears if the arm holding it is cut off."
|
|
|
|
/obj/item/nullrod/chainsaw/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT)
|
|
AddComponent(/datum/component/butchering, \
|
|
speed = 3 SECONDS, \
|
|
effectiveness = 100, \
|
|
bonus_modifier = 0, \
|
|
butcher_sound = hitsound, \
|
|
)
|
|
|
|
/obj/item/nullrod/clown
|
|
name = "clown dagger"
|
|
desc = "Used for absolutely hilarious sacrifices."
|
|
icon = 'icons/obj/wizard.dmi'
|
|
icon_state = "clownrender"
|
|
inhand_icon_state = "cultdagger"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
worn_icon_state = "render"
|
|
hitsound = 'sound/items/bikehorn.ogg'
|
|
sharpness = SHARP_EDGED
|
|
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "cuts")
|
|
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "cut")
|
|
menu_description = "A sharp dagger. Fits in pockets. Can be worn on the belt. Honk."
|
|
|
|
#define CHEMICAL_TRANSFER_CHANCE 30
|
|
|
|
/obj/item/nullrod/pride_hammer
|
|
name = "Pride-struck Hammer"
|
|
desc = "It resonates an aura of Pride."
|
|
icon_state = "pride"
|
|
inhand_icon_state = "pride"
|
|
worn_icon_state = "pride"
|
|
lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi'
|
|
force = 16
|
|
throwforce = 15
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
slot_flags = ITEM_SLOT_BACK
|
|
attack_verb_continuous = list("attacks", "smashes", "crushes", "splatters", "cracks")
|
|
attack_verb_simple = list("attack", "smash", "crush", "splatter", "crack")
|
|
hitsound = 'sound/weapons/blade1.ogg'
|
|
menu_description = "A hammer dealing a little less damage due to its user's pride. Has a low chance of transferring some of the user's reagents to the target. Capable of tapping knees to measure brain health. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/pride_hammer/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/kneejerk)
|
|
AddElement(
|
|
/datum/element/chemical_transfer,\
|
|
span_notice("Your pride reflects on %VICTIM."),\
|
|
span_userdanger("You feel insecure, taking on %ATTACKER's burden."),\
|
|
CHEMICAL_TRANSFER_CHANCE\
|
|
)
|
|
|
|
#undef CHEMICAL_TRANSFER_CHANCE
|
|
|
|
/obj/item/nullrod/whip
|
|
name = "holy whip"
|
|
desc = "What a terrible night to be on Space Station 13."
|
|
icon_state = "chain"
|
|
inhand_icon_state = "chain"
|
|
worn_icon_state = "whip"
|
|
lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi'
|
|
slot_flags = ITEM_SLOT_BELT
|
|
attack_verb_continuous = list("whips", "lashes")
|
|
attack_verb_simple = list("whip", "lash")
|
|
hitsound = 'sound/weapons/chainhit.ogg'
|
|
menu_description = "A whip. Deals extra damage to vampires. Fits in pockets. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/fedora
|
|
name = "atheist's fedora"
|
|
desc = "The brim of the hat is as sharp as your wit. The edge would hurt almost as much as disproving the existence of God."
|
|
icon_state = "fedora"
|
|
inhand_icon_state = "fedora"
|
|
slot_flags = ITEM_SLOT_HEAD
|
|
icon = 'icons/obj/clothing/head/hats.dmi'
|
|
worn_icon = 'icons/mob/clothing/head/hats.dmi'
|
|
lefthand_file = 'icons/mob/inhands/clothing/hats_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/clothing/hats_righthand.dmi'
|
|
force = 0
|
|
throw_speed = 4
|
|
throw_range = 7
|
|
throwforce = 30
|
|
sharpness = SHARP_EDGED
|
|
attack_verb_continuous = list("enlightens", "redpills")
|
|
attack_verb_simple = list("enlighten", "redpill")
|
|
menu_description = "A sharp fedora dealing a very high amount of throw damage, but none of melee. Fits in pockets. Can be worn on the head, obviously."
|
|
|
|
/obj/item/nullrod/fedora/suicide_act(mob/living/user)
|
|
user.visible_message(span_suicide("[user] is killing [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to get further from god!"))
|
|
return (BRUTELOSS|FIRELOSS)
|
|
|
|
/obj/item/nullrod/armblade
|
|
name = "dark blessing"
|
|
desc = "Particularly twisted deities grant gifts of dubious value."
|
|
icon = 'icons/obj/weapons/changeling_items.dmi'
|
|
icon_state = "arm_blade"
|
|
inhand_icon_state = "arm_blade"
|
|
lefthand_file = 'icons/mob/inhands/antag/changeling_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/antag/changeling_righthand.dmi'
|
|
slot_flags = null
|
|
item_flags = ABSTRACT
|
|
w_class = WEIGHT_CLASS_HUGE
|
|
sharpness = SHARP_EDGED
|
|
wound_bonus = -20
|
|
bare_wound_bonus = 25
|
|
menu_description = "An undroppable sharp armblade capable of inflicting deep wounds. Capable of an ineffective butchering of bodies. Disappears if the arm holding it is cut off."
|
|
|
|
/obj/item/nullrod/armblade/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT)
|
|
AddComponent(/datum/component/butchering, \
|
|
speed = 8 SECONDS, \
|
|
effectiveness = 70, \
|
|
)
|
|
|
|
/obj/item/nullrod/armblade/tentacle
|
|
name = "unholy blessing"
|
|
icon_state = "tentacle"
|
|
inhand_icon_state = "tentacle"
|
|
menu_description = "An undroppable sharp tentacle capable of inflicting deep wounds. Capable of an ineffective butchering of bodies. Disappears if the arm holding it is cut off."
|
|
|
|
/obj/item/nullrod/carp
|
|
name = "carp-sie plushie"
|
|
desc = "An adorable stuffed toy that resembles the god of all carp. The teeth look pretty sharp. Activate it to receive the blessing of Carp-Sie."
|
|
icon = 'icons/obj/toys/plushes.dmi'
|
|
icon_state = "carpplush"
|
|
inhand_icon_state = "carp_plushie"
|
|
worn_icon_state = "nullrod"
|
|
lefthand_file = 'icons/mob/inhands/items_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/items_righthand.dmi'
|
|
force = 15
|
|
attack_verb_continuous = list("bites", "eats", "fin slaps")
|
|
attack_verb_simple = list("bite", "eat", "fin slap")
|
|
hitsound = 'sound/weapons/bite.ogg'
|
|
menu_description = "A plushie dealing a little less damage due to its cute form. Capable of blessing one person with the Carp-Sie favor, which grants friendship of all wild space carps. Fits in pockets. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/carp/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/faction_granter, FACTION_CARP, holy_role_required = HOLY_ROLE_PRIEST, grant_message = span_boldnotice("You are blessed by Carp-Sie. Wild space carp will no longer attack you."))
|
|
|
|
/obj/item/nullrod/claymore/bostaff //May as well make it a "claymore" and inherit the blocking
|
|
name = "monk's staff"
|
|
desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts, it is now used to harass the clown."
|
|
force = 15
|
|
block_chance = 40
|
|
slot_flags = ITEM_SLOT_BACK
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
sharpness = NONE
|
|
hitsound = SFX_SWING_HIT
|
|
attack_verb_continuous = list("smashes", "slams", "whacks", "thwacks")
|
|
attack_verb_simple = list("smash", "slam", "whack", "thwack")
|
|
icon = 'icons/obj/weapons/items_and_weapons.dmi'
|
|
icon_state = "bostaff0"
|
|
inhand_icon_state = "bostaff0"
|
|
worn_icon_state = "bostaff0"
|
|
lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi'
|
|
menu_description = "A staff which provides a medium-low chance of blocking incoming melee attacks and deals a little less damage due to being made of wood. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/tribal_knife
|
|
icon_state = "crysknife"
|
|
desc = "They say fear is the true mind killer, but stabbing them in the head works too. Honour compels you to not sheathe it once drawn."
|
|
inhand_icon_state = "crysknife"
|
|
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
|
|
name = "arrhythmic knife"
|
|
w_class = WEIGHT_CLASS_HUGE
|
|
sharpness = SHARP_EDGED
|
|
slot_flags = null
|
|
hitsound = 'sound/weapons/bladeslice.ogg'
|
|
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "cuts")
|
|
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "cut")
|
|
item_flags = SLOWS_WHILE_IN_HAND
|
|
menu_description = "A sharp knife. Randomly speeds or slows its user at a regular intervals. Capable of butchering bodies. Cannot be worn anywhere."
|
|
|
|
/obj/item/nullrod/tribal_knife/Initialize(mapload)
|
|
. = ..()
|
|
START_PROCESSING(SSobj, src)
|
|
AddComponent(/datum/component/butchering, \
|
|
speed = 5 SECONDS, \
|
|
effectiveness = 100, \
|
|
)
|
|
|
|
/obj/item/nullrod/tribal_knife/Destroy()
|
|
STOP_PROCESSING(SSobj, src)
|
|
. = ..()
|
|
|
|
/obj/item/nullrod/tribal_knife/process()
|
|
slowdown = rand(-10, 10)/10
|
|
if(iscarbon(loc))
|
|
var/mob/living/carbon/wielder = loc
|
|
if(wielder.is_holding(src))
|
|
wielder.update_equipment_speed_mods()
|
|
|
|
/obj/item/nullrod/pitchfork
|
|
name = "unholy pitchfork"
|
|
desc = "Holding this makes you look absolutely devilish."
|
|
icon_state = "pitchfork0"
|
|
inhand_icon_state = "pitchfork0"
|
|
lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi'
|
|
worn_icon_state = "pitchfork0"
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
slot_flags = ITEM_SLOT_BACK
|
|
attack_verb_continuous = list("pokes", "impales", "pierces", "jabs")
|
|
attack_verb_simple = list("poke", "impale", "pierce", "jab")
|
|
hitsound = 'sound/weapons/bladeslice.ogg'
|
|
sharpness = SHARP_EDGED
|
|
menu_description = "A sharp pitchfork. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/egyptian
|
|
name = "egyptian staff"
|
|
desc = "A tutorial in mummification is carved into the staff. You could probably craft the wraps if you had some cloth."
|
|
icon = 'icons/obj/weapons/guns/magic.dmi'
|
|
icon_state = "pharoah_sceptre"
|
|
inhand_icon_state = "pharoah_sceptre"
|
|
lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi'
|
|
worn_icon_state = "pharoah_sceptre"
|
|
w_class = WEIGHT_CLASS_NORMAL
|
|
slot_flags = ITEM_SLOT_BACK
|
|
attack_verb_continuous = list("bashes", "smacks", "whacks")
|
|
attack_verb_simple = list("bash", "smack", "whack")
|
|
menu_description = "A staff. Can be used as a tool to craft exclusive egyptian items. Easily stored. Can be worn on the back."
|
|
|
|
/obj/item/nullrod/hypertool
|
|
name = "hypertool"
|
|
desc = "A tool so powerful even you cannot perfectly use it."
|
|
icon = 'icons/obj/device.dmi'
|
|
icon_state = "hypertool"
|
|
inhand_icon_state = "hypertool"
|
|
worn_icon_state = "hypertool"
|
|
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
|
slot_flags = ITEM_SLOT_BELT
|
|
damtype = BRAIN
|
|
armour_penetration = 35
|
|
attack_verb_continuous = list("pulses", "mends", "cuts")
|
|
attack_verb_simple = list("pulse", "mend", "cut")
|
|
hitsound = 'sound/effects/sparks4.ogg'
|
|
menu_description = "A tool dealing brain damage which partially penetrates armor. Fits in pockets. Can be worn on the belt."
|
|
|
|
/obj/item/nullrod/spear
|
|
name = "ancient spear"
|
|
desc = "An ancient spear made of brass, I mean gold, I mean bronze. It looks highly mechanical."
|
|
icon = 'icons/obj/weapons/items_and_weapons.dmi'
|
|
icon_state = "ratvarian_spear"
|
|
inhand_icon_state = "ratvarian_spear"
|
|
lefthand_file = 'icons/mob/inhands/antag/clockwork_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/antag/clockwork_righthand.dmi'
|
|
slot_flags = ITEM_SLOT_BELT
|
|
armour_penetration = 10
|
|
sharpness = SHARP_POINTY
|
|
w_class = WEIGHT_CLASS_HUGE
|
|
attack_verb_continuous = list("stabs", "pokes", "slashes", "clocks")
|
|
attack_verb_simple = list("stab", "poke", "slash", "clock")
|
|
hitsound = 'sound/weapons/bladeslice.ogg'
|
|
menu_description = "A pointy spear which penetrates armor a little. Can be worn only on the belt."
|