Personalized combat messages part 2 (#52890)

Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators
This commit is contained in:
kingofkosmos
2020-08-13 17:34:57 +03:00
committed by GitHub
parent c74590fd4d
commit 3263decaad
97 changed files with 484 additions and 260 deletions
@@ -160,7 +160,8 @@
throw_range = 0
throw_speed = 0
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "cut")
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")
sharpness = SHARP_EDGED
wound_bonus = -60
bare_wound_bonus = 20
+8 -4
View File
@@ -46,7 +46,8 @@
wound_bonus = -80
bare_wound_bonus = 30
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "rended")
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "rends")
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "rend")
/obj/item/melee/cultblade/Initialize()
. = ..()
@@ -93,7 +94,8 @@
throw_range = 3
sharpness = SHARP_EDGED
light_color = COLOR_RED
attack_verb = list("cleaved", "slashed", "tore", "lacerated", "hacked", "ripped", "diced", "carved")
attack_verb_continuous = list("cleaves", "slashes", "tears", "lacerates", "hacks", "rips", "dices", "carves")
attack_verb_simple = list("cleave", "slash", "tear", "lacerate", "hack", "rip", "dice", "carve")
icon_state = "cultbastard"
inhand_icon_state = "cultbastard"
hitsound = 'sound/weapons/bladeslice.ogg'
@@ -626,7 +628,8 @@
throw_speed = 2
armour_penetration = 30
block_chance = 30
attack_verb = list("attacked", "impaled", "stabbed", "tore", "lacerated", "gored")
attack_verb_continuous = list("attacks", "impales", "stabs", "tears", "lacerates", "gores")
attack_verb_simple = list("attack", "impale", "stab", "tear", "lacerate", "gore")
sharpness = SHARP_EDGED
hitsound = 'sound/weapons/bladeslice.ogg'
var/datum/action/innate/cult/spear/spear_act
@@ -896,7 +899,8 @@
throw_speed = 1
throw_range = 4
w_class = WEIGHT_CLASS_BULKY
attack_verb = list("bumped", "prodded")
attack_verb_continuous = list("bumps", "prods")
attack_verb_simple = list("bump", "prod")
hitsound = 'sound/weapons/smash.ogg'
var/illusions = 2
@@ -123,8 +123,8 @@
var/weakness = check_weakness(I, user)
apply_damage(I.force * weakness, I.damtype, def_zone)
var/message_verb = ""
if(I.attack_verb && length(I.attack_verb))
message_verb = "[pick(I.attack_verb)]"
if(length(I.attack_verb_continuous))
message_verb = "[pick(I.attack_verb_continuous)]"
else if(I.force)
message_verb = "attacked"
@@ -46,7 +46,8 @@
force = 17
throwforce = 10
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "rended")
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "rends")
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "rend")
/obj/item/melee/sickly_blade/attack(mob/living/M, mob/living/user)
if(!IS_HERETIC(user))
+8 -4
View File
@@ -86,7 +86,8 @@
force = 10
throwforce = 10
throw_speed = 4
attack_verb = list("sliced")
attack_verb_continuous = list("slices")
attack_verb_simple = list("slice")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
@@ -154,7 +155,8 @@
force = 10
throwforce = 20
throw_speed = 4
attack_verb = list("sliced")
attack_verb_continuous = list("slices")
attack_verb_simple = list("slice")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
glass_colour_type = /datum/client_colour/glass_colour/lightgreen
@@ -226,7 +228,8 @@
force = 10
throwforce = 10
throw_speed = 4
attack_verb = list("sliced")
attack_verb_continuous = list("slices")
attack_verb_simple = list("slice")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
@@ -246,7 +249,8 @@
force = 10
throwforce = 10
throw_speed = 4
attack_verb = list("sliced")
attack_verb_continuous = list("slices")
attack_verb_simple = list("slice")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
glass_colour_type = /datum/client_colour/glass_colour/orange
+2 -1
View File
@@ -157,7 +157,8 @@
force = 10
throwforce = 10
throw_speed = 4
attack_verb = list("sliced")
attack_verb_continuous = list("slices")
attack_verb_simple = list("slice")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
+2 -1
View File
@@ -6,7 +6,8 @@
siemens_coefficient = 0.5
body_parts_covered = HANDS
slot_flags = ITEM_SLOT_GLOVES
attack_verb = list("challenged")
attack_verb_continuous = list("challenges")
attack_verb_simple = list("challenge")
var/transfer_prints = FALSE
strip_delay = 20
equip_delay_other = 40
+2 -1
View File
@@ -290,7 +290,8 @@
throw_speed = 2
throw_range = 5
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("warned", "cautioned", "smashed")
attack_verb_continuous = list("warns", "cautions", "smashes")
attack_verb_simple = list("warn", "caution", "smash")
resistance_flags = NONE
dynamic_hair_suffix = ""
+2 -1
View File
@@ -503,7 +503,8 @@
throw_range = 5
w_class = WEIGHT_CLASS_SMALL
body_parts_covered = CHEST|GROIN
attack_verb = list("warned", "cautioned", "smashed")
attack_verb_continuous = list("warns", "cautions", "smashes")
attack_verb_simple = list("warn", "caution", "smash")
armor = list("melee" = 5, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
/obj/item/clothing/suit/changshan_red
@@ -145,7 +145,8 @@
w_class = WEIGHT_CLASS_TINY
inhand_icon_state = "beer"
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("stabbed", "slashed", "attacked")
attack_verb_continuous = list("stabs", "slashes", "attacks")
attack_verb_simple = list("stab", "slash", "attack")
sharpness = SHARP_EDGED
var/static/icon/broken_outline = icon('icons/obj/drinks.dmi', "broken")
@@ -204,7 +204,8 @@
bitesize = 3
w_class = WEIGHT_CLASS_NORMAL
slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_BELT
attack_verb = list("touche'd")
attack_verb_continuous = list("touche's")
attack_verb_simple = list("touche")
tastes = list("bread" = 1)
foodtype = GRAIN
value = FOOD_FAST
@@ -463,7 +463,8 @@
block_chance = 55
armour_penetration = 80
wound_bonus = -70
attack_verb = list("slapped", "slathered")
attack_verb_continuous = list("slaps", "slathers")
attack_verb_simple = list("slap", "slather")
w_class = WEIGHT_CLASS_BULKY
tastes = list("cherry" = 1, "crepe" = 1)
foodtype = GRAIN | FRUIT | SUGAR
+2 -2
View File
@@ -45,14 +45,14 @@
D.card_throwforce = 0
D.card_throw_speed = 3
D.card_throw_range = 7
D.card_attack_verb = list("attacked")
D.card_attack_verb_continuous = list("attacks")
else
D.card_hitsound = 'sound/weapons/bladeslice.ogg'
D.card_force = 5
D.card_throwforce = 10
D.card_throw_speed = 3
D.card_throw_range = 7
D.card_attack_verb = list("attacked", "sliced", "diced", "slashed", "cut")
D.card_attack_verb_continuous = list("attacks", "slices", "dices", "slashes", "cuts")
/obj/effect/holodeck_effect/sparks/activate(obj/machinery/computer/holodeck/HC)
+2 -1
View File
@@ -8,7 +8,8 @@
icon = 'icons/obj/hydroponics/equipment.dmi'
icon_state = "graft_plant"
worn_icon_state = "graft"
attack_verb = list("planted", "vegitized", "cropped", "reaped", "farmed")
attack_verb_continuous = list("plants", "vegitizes", "crops", "reaps", "farms")
attack_verb_simple = list("plant", "vegitize", "crop", "reap", "farm")
///The stored trait taken from the parent plant. Defaults to perenial growth.
var/datum/plant_gene/trait/stored_trait
///Determines the appearance of the graft. Rudimentary right now so it just picks randomly.
+4 -2
View File
@@ -28,7 +28,8 @@
w_class = WEIGHT_CLASS_TINY
throw_speed = 2
throw_range = 3
attack_verb = list("pomfed")
attack_verb_continuous = list("pomfs")
attack_verb_simple = list("pomf")
var/cotton_type = /obj/item/stack/sheet/cotton
var/cotton_name = "raw cotton"
@@ -75,6 +76,7 @@
w_class = WEIGHT_CLASS_NORMAL
throw_speed = 2
throw_range = 3
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
attack_verb_continuous = list("bashes", "batters", "bludgeons", "whacks")
attack_verb_simple = list("bash", "batter", "bludgeon", "whack")
cotton_type = /obj/item/stack/sheet/cotton/durathread
cotton_name = "raw durathread"
+2 -1
View File
@@ -249,7 +249,8 @@
w_class = WEIGHT_CLASS_TINY
throw_speed = 1
throw_range = 3
attack_verb = list("roasted", "scorched", "burned")
attack_verb_continuous = list("roasts", "scorches", "burns")
attack_verb_simple = list("roast", "scorch", "burn")
grind_results = list(/datum/reagent/consumable/capsaicin = 0, /datum/reagent/consumable/condensedcapsaicin = 0)
/obj/item/grown/novaflower/add_juice()
+2 -1
View File
@@ -46,7 +46,8 @@
w_class = WEIGHT_CLASS_TINY
throw_speed = 1
throw_range = 3
attack_verb = list("stung")
attack_verb_continuous = list("stings")
attack_verb_simple = list("sting")
/obj/item/reagent_containers/food/snacks/grown/nettle/suicide_act(mob/user)
user.visible_message("<span class='suicide'>[user] is eating some of [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
+2 -1
View File
@@ -22,7 +22,8 @@
force = 4
throwforce = 8
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("stung", "pined")
attack_verb_continuous = list("stings", "pines")
attack_verb_simple = list("sting", "pine")
throw_speed = 1
throw_range = 5
slice_path = /obj/item/reagent_containers/food/snacks/pineappleslice
@@ -30,7 +30,8 @@
w_class = WEIGHT_CLASS_TINY
throw_speed = 2
throw_range = 3
attack_verb = list("pompfed")
attack_verb_continuous = list("pompfs")
attack_verb_simple = list("pompf")
/obj/item/reagent_containers/food/snacks/grown/rainbow_flower/Initialize()
. = ..()
+2 -1
View File
@@ -43,7 +43,8 @@
w_class = WEIGHT_CLASS_NORMAL
throw_speed = 2
throw_range = 3
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
attack_verb_continuous = list("bashes", "batters", "bludgeons", "whacks")
attack_verb_simple = list("bash", "batter", "bludgeon", "whack")
var/plank_type = /obj/item/stack/sheet/mineral/wood
var/plank_name = "wooden planks"
var/static/list/accepted = typecacheof(list(/obj/item/reagent_containers/food/snacks/grown/tobacco,
+12 -6
View File
@@ -81,7 +81,8 @@
throwforce = 7
w_class = WEIGHT_CLASS_SMALL
custom_materials = list(/datum/material/iron=50)
attack_verb = list("slashed", "sliced", "cut", "clawed")
attack_verb_continuous = list("slashes", "slices", "cuts", "claws")
attack_verb_simple = list("slash", "slice", "cut", "claw")
hitsound = 'sound/weapons/bladeslice.ogg'
/obj/item/cultivator/suicide_act(mob/user)
@@ -92,7 +93,8 @@
name = "rake"
icon_state = "rake"
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("slashed", "sliced", "bashed", "clawed")
attack_verb_continuous = list("slashes", "slices", "bashes", "claws")
attack_verb_simple = list("slash", "slice", "bash", "claw")
hitsound = null
custom_materials = list(/datum/material/wood = MINERAL_MATERIAL_AMOUNT * 1.5)
flags_1 = NONE
@@ -125,7 +127,8 @@
throw_speed = 3
throw_range = 4
custom_materials = list(/datum/material/iron = 15000)
attack_verb = list("chopped", "tore", "lacerated", "cut")
attack_verb_continuous = list("chops", "tears", "lacerates", "cuts")
attack_verb_simple = list("chop", "tear", "lacerate", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
@@ -158,7 +161,8 @@
flags_1 = CONDUCT_1
armour_penetration = 20
slot_flags = ITEM_SLOT_BACK
attack_verb = list("chopped", "sliced", "cut", "reaped")
attack_verb_continuous = list("chops", "slices", "cuts", "reaps")
attack_verb_simple = list("chop", "slice", "cut", "reap")
hitsound = 'sound/weapons/bladeslice.ogg'
var/swiping = FALSE
@@ -205,7 +209,8 @@
w_class = WEIGHT_CLASS_SMALL
slot_flags = ITEM_SLOT_BELT
custom_materials = list(/datum/material/iron=4000)
attack_verb = list("slashed", "sliced", "cut", "clawed")
attack_verb_continuous = list("slashes", "slices", "cuts", "claws")
attack_verb_simple = list("slash", "slice", "cut", "claw")
hitsound = 'sound/weapons/bladeslice.ogg'
/obj/item/geneshears
@@ -223,7 +228,8 @@
slot_flags = ITEM_SLOT_BELT
material_flags = MATERIAL_NO_EFFECTS
custom_materials = list(/datum/material/iron=4000, /datum/material/uranium=1500, /datum/material/gold=500)
attack_verb = list("slashed", "sliced", "cut")
attack_verb_continuous = list("slashes", "slices", "cuts")
attack_verb_simple = list("slash", "slice", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
+2 -1
View File
@@ -210,7 +210,8 @@
throw_speed = 1
throw_range = 5
w_class = WEIGHT_CLASS_NORMAL //upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever)
attack_verb = list("bashed", "whacked", "educated")
attack_verb_continuous = list("bashes", "whacks", "educates")
attack_verb_simple = list("bash", "whack", "educate")
resistance_flags = FLAMMABLE
drop_sound = 'sound/items/handling/book_drop.ogg'
pickup_sound = 'sound/items/handling/book_pickup.ogg'
@@ -16,7 +16,8 @@
armour_penetration = 10
custom_materials = list(/datum/material/iron=1150, /datum/material/glass=2075)
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("smashed", "crushed", "cleaved", "chopped", "pulped")
attack_verb_continuous = list("smashes", "crushes", "cleaves", "chops", "pulps")
attack_verb_simple = list("smash", "crush", "cleave", "chop", "pulp")
sharpness = SHARP_EDGED
actions_types = list(/datum/action/item_action/toggle_light)
obj_flags = UNIQUE_RENAME
@@ -16,7 +16,8 @@
tool_behaviour = TOOL_MINING
toolspeed = 1
usesound = list('sound/effects/picaxe1.ogg', 'sound/effects/picaxe2.ogg', 'sound/effects/picaxe3.ogg')
attack_verb = list("hit", "pierced", "sliced", "attacked")
attack_verb_continuous = list("hits", "pierces", "slices", "attacks")
attack_verb_simple = list("hit", "pierce", "slice", "attack")
/obj/item/pickaxe/suicide_act(mob/living/user)
user.visible_message("<span class='suicide'>[user] begins digging into [user.p_their()] chest! It looks like [user.p_theyre()] trying to commit suicide!</span>")
@@ -28,7 +29,8 @@
/obj/item/pickaxe/rusted
name = "rusty pickaxe"
desc = "A pickaxe that's been left to rust."
attack_verb = list("ineffectively hit")
attack_verb_continuous = list("ineffectively hits")
attack_verb_simple = list("ineffectively hit")
force = 1
throwforce = 1
@@ -133,7 +135,8 @@
inhand_icon_state = "shovel"
w_class = WEIGHT_CLASS_NORMAL
custom_materials = list(/datum/material/iron=50)
attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked")
attack_verb_continuous = list("bashes", "bludgeons", "thrashes", "whacks")
attack_verb_simple = list("bash", "bludgeon", "thrash", "whack")
sharpness = SHARP_EDGED
/obj/item/shovel/Initialize()
@@ -171,5 +174,6 @@
throwforce = 12
w_class = WEIGHT_CLASS_NORMAL
toolspeed = 0.7
attack_verb = list("slashed", "impaled", "stabbed", "sliced")
attack_verb_continuous = list("slashes", "impales", "stabs", "slices")
attack_verb_simple = list("slash", "impale", "stab", "slice")
sharpness = SHARP_EDGED
@@ -707,8 +707,8 @@
icon_state = "cleaving_saw"
icon_state_on = "cleaving_saw_open"
slot_flags = ITEM_SLOT_BELT
attack_verb_off = list("attacked", "sawed", "sliced", "tore", "lacerated", "ripped", "diced", "cut")
attack_verb_on = list("cleaved", "swiped", "slashed", "chopped")
attack_verb_off = list("attacks", "saws", "slices", "tears", "lacerates", "rips", "dices", "cuts")
attack_verb_on = list("cleaves", "swipes", "slashes", "chops")
hitsound = 'sound/weapons/bladeslice.ogg'
hitsound_on = 'sound/weapons/bladeslice.ogg'
w_class = WEIGHT_CLASS_BULKY
@@ -823,7 +823,8 @@
force = 1
throwforce = 1
hitsound = 'sound/effects/ghost2.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "rended")
attack_verb_continuous = list("attacks", "slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "rends")
attack_verb_simple = list("attack", "slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "rend")
var/summon_cooldown = 0
var/list/mob/dead/observer/spirits
@@ -1140,7 +1141,8 @@
slot_flags = ITEM_SLOT_BACK
w_class = WEIGHT_CLASS_BULKY
force = 15
attack_verb = list("clubbed", "beat", "pummeled")
attack_verb_continuous = list("clubs", "beats", "pummels")
attack_verb_simple = list("club", "beat", "pummel")
hitsound = 'sound/weapons/sonic_jackhammer.ogg'
actions_types = list(/datum/action/item_action/vortex_recall, /datum/action/item_action/toggle_unfriendly_fire)
var/cooldown_time = 20 //how long the cooldown between non-melee ranged attacks is
+2 -1
View File
@@ -8,7 +8,8 @@
zone = BODY_ZONE_HEAD
slot = ORGAN_SLOT_BRAIN
organ_flags = ORGAN_VITAL
attack_verb = list("attacked", "slapped", "whacked")
attack_verb_continuous = list("attacks", "slaps", "whacks")
attack_verb_simple = list("attack", "slap", "whack")
///The brain's organ variables are significantly more different than the other organs, with half the decay rate for balance reasons, and twice the maxHealth
decay_factor = STANDARD_ORGAN_DECAY / 2 //30 minutes of decaying to result in a fully damaged brain, since a fast decay rate would be unfun gameplay-wise
@@ -99,10 +99,9 @@
return TRUE //successful attack
/mob/living/carbon/send_item_attack_message(obj/item/I, mob/living/user, hit_area, obj/item/bodypart/hit_bodypart)
var/message_verb = "attacked"
if(length(I.attack_verb))
message_verb = "[pick(I.attack_verb)]"
else if(!I.force)
var/message_verb_continuous = length(I.attack_verb_continuous) ? "[pick(I.attack_verb_continuous)]" : "attacks"
var/message_verb_simple = length(I.attack_verb_simple) ? "[pick(I.attack_verb_simple)]" : "attack"
if(!I.force)
return
var/extra_wound_details = ""
@@ -119,15 +118,18 @@
var/message_hit_area = ""
if(hit_area)
message_hit_area = " in the [hit_area]"
var/attack_message = "[src] is [message_verb][message_hit_area] with [I][extra_wound_details]!"
var/attack_message_local = "You're [message_verb][message_hit_area] with [I][extra_wound_details]!"
var/attack_message_spectator = "[src] [message_verb_continuous][message_hit_area] with [I][extra_wound_details]!"
var/attack_message_victim = "You're [message_verb_continuous][message_hit_area] with [I][extra_wound_details]!"
var/attack_message_attacker = "You [message_verb_simple] [src][message_hit_area] with [I]!"
if(user in viewers(src, null))
attack_message = "[user] [message_verb] [src][message_hit_area] with [I][extra_wound_details]!"
attack_message_local = "[user] [message_verb] you[message_hit_area] with [I][extra_wound_details]!"
attack_message_spectator = "[user] [message_verb_continuous] [src][message_hit_area] with [I][extra_wound_details]!"
attack_message_victim = "[user] [message_verb_continuous] you[message_hit_area] with [I][extra_wound_details]!"
if(user == src)
attack_message_local = "You [message_verb] yourself[message_hit_area] with [I][extra_wound_details]"
visible_message("<span class='danger'>[attack_message]</span>",\
"<span class='userdanger'>[attack_message_local]</span>", null, COMBAT_MESSAGE_RANGE)
attack_message_victim = "You [message_verb_simple] yourself[message_hit_area] with [I][extra_wound_details]!"
visible_message("<span class='danger'>[attack_message_spectator]</span>",\
"<span class='userdanger'>[attack_message_victim]</span>", null, COMBAT_MESSAGE_RANGE, user)
if(user != src)
to_chat(user, "<span class='danger'>[attack_message_attacker]</span>")
return TRUE
+2 -1
View File
@@ -12,7 +12,8 @@
armour_penetration = 50
w_class = WEIGHT_CLASS_NORMAL
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "cut")
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")
slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_BELT
sharpness = SHARP_EDGED
max_integrity = 200
+2 -1
View File
@@ -196,7 +196,8 @@
* (Alan) Edaggers
*/
/obj/item/pen/edagger
attack_verb = list("slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "cut") //these won't show up if the pen is off
attack_verb_continuous = list("slashes", "stabs", "slices", "tears", "lacerates", "rips", "dices", "cuts") //these won't show up if the pen is off
attack_verb_simple = list("slash", "stab", "slice", "tear", "lacerate", "rip", "dice", "cut")
sharpness = SHARP_EDGED
var/on = FALSE
+2 -1
View File
@@ -10,7 +10,8 @@
throw_range = 7
custom_materials = list(/datum/material/iron=60)
pressure_resistance = 2
attack_verb = list("stamped")
attack_verb_continuous = list("stamps")
attack_verb_simple = list("stamp")
/obj/item/stamp/suicide_act(mob/user)
user.visible_message("<span class='suicide'>[user] stamps 'VOID' on [user.p_their()] forehead, then promptly falls over, dead.</span>")
+2 -1
View File
@@ -403,7 +403,8 @@ GLOBAL_LIST_INIT(wire_node_generating_types, typecacheof(list(/obj/structure/gri
custom_materials = list(/datum/material/iron=10, /datum/material/glass=5)
flags_1 = CONDUCT_1
slot_flags = ITEM_SLOT_BELT
attack_verb = list("whipped", "lashed", "disciplined", "flogged")
attack_verb_continuous = list("whips", "lashes", "disciplines", "flogs")
attack_verb_simple = list("whip", "lash", "discipline", "flog")
singular_name = "cable piece"
full_w_class = WEIGHT_CLASS_SMALL
grind_results = list(/datum/reagent/copper = 2) //2 copper per cable in the coil
+2 -1
View File
@@ -197,7 +197,8 @@ By design, d1 is the smallest direction and d2 is the highest
custom_materials = list(/datum/material/iron=10, /datum/material/glass=5)
flags_1 = CONDUCT_1
slot_flags = ITEM_SLOT_BELT
attack_verb = list("whipped", "lashed", "disciplined", "flogged")
attack_verb_continuous = list("whips", "lashes", "disciplines", "flogs")
attack_verb_simple = list("whip", "lash", "discipline", "flog")
singular_name = "pipe cleaner piece"
full_w_class = WEIGHT_CLASS_SMALL
grind_results = list("copper" = 2) //2 copper per pipe_cleaner in the coil
+2 -1
View File
@@ -18,7 +18,8 @@
throw_range = 5
force = 5
item_flags = NEEDS_PERMIT
attack_verb = list("struck", "hit", "bashed")
attack_verb_continuous = list("strikes", "hits", "bashes")
attack_verb_simple = list("strike", "hit", "bash")
var/fire_sound = 'sound/weapons/gun/pistol/shot.ogg'
var/vary_fire_sound = TRUE
@@ -254,7 +254,8 @@
weapon_weight = WEAPON_MEDIUM
can_be_sawn_off = FALSE
force = 16 //it has a hook on it
attack_verb = list("slashed", "hooked", "stabbed")
attack_verb_continuous = list("slashes", "hooks", "stabs")
attack_verb_simple = list("slash", "hook", "stab")
hitsound = 'sound/weapons/bladeslice.ogg'
//our hook gun!
var/obj/item/gun/magic/hook/bounty/hook
@@ -126,7 +126,8 @@
inhand_icon_state = "plasmacutter"
ammo_type = list(/obj/item/ammo_casing/energy/plasma)
flags_1 = CONDUCT_1
attack_verb = list("attacked", "slashed", "cut", "sliced")
attack_verb_continuous = list("attacks", "slashes", "cuts", "slices")
attack_verb_simple = list("attack", "slash", "cut", "slice")
force = 12
sharpness = SHARP_EDGED
can_charge = FALSE
+2 -1
View File
@@ -7,7 +7,8 @@
worn_icon_state = "pen"
flags_1 = CONDUCT_1
w_class = WEIGHT_CLASS_TINY
attack_verb = list("poked")
attack_verb_continuous = list("pokes")
attack_verb_simple = list("poke")
var/fail_message = "<span class='warning'>INVALID USER.</span>"
var/selfdestruct = 0 // Explode when user check is failed.
var/force_replace = 0 // Can forcefully replace other pins.
@@ -33,19 +33,24 @@ Slimecrossing Weapons
switch(damtype)
if(BRUTE)
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("slashed","sliced","cut")
attack_verb_continuous = list("slashes", "slices", "cuts")
attack_verb_simple = list("slash", "slice", "cut")
if(BURN)
hitsound = 'sound/weapons/sear.ogg'
attack_verb = list("burned","singed","heated")
attack_verb_continuous = list("burns", "sings", "heats")
attack_verb_simple = list("burn", "sing", "heat")
if(TOX)
hitsound = 'sound/weapons/pierce.ogg'
attack_verb = list("poisoned","dosed","toxified")
attack_verb_continuous = list("poisons", "doses", "toxifies")
attack_verb_simple = list("poison", "dose", "toxify")
if(OXY)
hitsound = 'sound/effects/space_wind.ogg'
attack_verb = list("suffocated","winded","vacuumed")
attack_verb_continuous = list("suffocates", "winds", "vacuums")
attack_verb_simple = list("suffocate", "wind", "vacuum")
if(CLONE)
hitsound = 'sound/items/geiger/ext1.ogg'
attack_verb = list("irradiated","mutated","maligned")
attack_verb_continuous = list("irradiates", "mutates", "maligns")
attack_verb_simple = list("irradiate", "mutate", "malign")
return ..()
//Adamantine shield - Chilling Adamantine
@@ -62,7 +67,8 @@ Slimecrossing Weapons
force = 0
throw_range = 1 //How far do you think you're gonna throw a solid crystalline shield...?
throw_speed = 2
attack_verb = list("bashed","pounded","slammed")
attack_verb_continuous = list("bashes", "pounds", "slams")
attack_verb_simple = list("bash", "pound", "slam")
item_flags = SLOWS_WHILE_IN_HAND
/obj/item/shield/adamantineshield/ComponentInitialize()
+8 -4
View File
@@ -60,7 +60,8 @@
be possessed by the devil? This arm appears to be possessed by no \
one though."
icon_state = "default_human_l_arm"
attack_verb = list("slapped", "punched")
attack_verb_continuous = list("slaps", "punches")
attack_verb_simple = list("slap", "punch")
max_damage = 50
max_stamina_damage = 50
body_zone = BODY_ZONE_L_ARM
@@ -125,7 +126,8 @@
desc = "Over 87% of humans are right handed. That figure is much lower \
among humans missing their right arm."
icon_state = "default_human_r_arm"
attack_verb = list("slapped", "punched")
attack_verb_continuous = list("slaps", "punches")
attack_verb_simple = list("slap", "punch")
max_damage = 50
body_zone = BODY_ZONE_R_ARM
body_part = ARM_RIGHT
@@ -190,7 +192,8 @@
desc = "Some athletes prefer to tie their left shoelaces first for good \
luck. In this instance, it probably would not have helped."
icon_state = "default_human_l_leg"
attack_verb = list("kicked", "stomped")
attack_verb_continuous = list("kicks", "stomps")
attack_verb_simple = list("kick", "stomp")
max_damage = 50
body_zone = BODY_ZONE_L_LEG
body_part = LEG_LEFT
@@ -249,7 +252,8 @@
The hokey pokey has certainly changed a lot since space colonisation."
// alternative spellings of 'pokey' are availible
icon_state = "default_human_r_leg"
attack_verb = list("kicked", "stomped")
attack_verb_continuous = list("kicks", "stomps")
attack_verb_simple = list("kick", "stomp")
max_damage = 50
body_zone = BODY_ZONE_R_LEG
body_part = LEG_RIGHT
@@ -13,7 +13,8 @@
/obj/item/bodypart/l_arm/robot
name = "cyborg left arm"
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
attack_verb = list("slapped", "punched")
attack_verb_continuous = list("slaps", "punches")
attack_verb_simple = list("slap", "punch")
inhand_icon_state = "buildpipe"
icon = 'icons/mob/augmentation/augments.dmi'
flags_1 = CONDUCT_1
@@ -34,7 +35,8 @@
/obj/item/bodypart/r_arm/robot
name = "cyborg right arm"
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
attack_verb = list("slapped", "punched")
attack_verb_continuous = list("slaps", "punches")
attack_verb_simple = list("slap", "punch")
inhand_icon_state = "buildpipe"
icon = 'icons/mob/augmentation/augments.dmi'
flags_1 = CONDUCT_1
@@ -55,7 +57,8 @@
/obj/item/bodypart/l_leg/robot
name = "cyborg left leg"
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
attack_verb = list("kicked", "stomped")
attack_verb_continuous = list("kicks", "stomps")
attack_verb_simple = list("kick", "stomp")
inhand_icon_state = "buildpipe"
icon = 'icons/mob/augmentation/augments.dmi'
flags_1 = CONDUCT_1
@@ -76,7 +79,8 @@
/obj/item/bodypart/r_leg/robot
name = "cyborg right leg"
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
attack_verb = list("kicked", "stomped")
attack_verb_continuous = list("kicks", "stomps")
attack_verb_simple = list("kick", "stomp")
inhand_icon_state = "buildpipe"
icon = 'icons/mob/augmentation/augments.dmi'
flags_1 = CONDUCT_1
+2 -1
View File
@@ -16,7 +16,8 @@
// Heart attack code is in code/modules/mob/living/carbon/human/life.dm
var/beating = 1
var/icon_base = "heart"
attack_verb = list("beat", "thumped")
attack_verb_continuous = list("beats", "thumps")
attack_verb_simple = list("beat", "thump")
var/beat = BEAT_NONE//is this mob having a heatbeat sound played? if so, which?
var/failed = FALSE //to prevent constantly running failing code
var/operated = FALSE //whether the heart's been operated on to fix some of its damages
+2 -1
View File
@@ -4,7 +4,8 @@
w_class = WEIGHT_CLASS_SMALL
zone = BODY_ZONE_CHEST
slot = ORGAN_SLOT_STOMACH
attack_verb = list("gored", "squished", "slapped", "digested")
attack_verb_continuous = list("gores", "squishes", "slaps", "digests")
attack_verb_simple = list("gore", "squish", "slap", "digest")
desc = "Onaka ga suite imasu."
healing_factor = STANDARD_ORGAN_HEALING
+8 -4
View File
@@ -4,7 +4,8 @@
icon_state = "tonguenormal"
zone = BODY_ZONE_PRECISE_MOUTH
slot = ORGAN_SLOT_TONGUE
attack_verb = list("licked", "slobbered", "slapped", "frenched", "tongued")
attack_verb_continuous = list("licks", "slobbers", "slaps", "frenches", "tongues")
attack_verb_simple = list("lick", "slobber", "slap", "french", "tongue")
var/list/languages_possible
var/say_mod = null
var/taste_sensitivity = 15 // lower is more sensitive.
@@ -211,7 +212,8 @@
desc = "Apparently skeletons alter the sounds they produce through oscillation of their teeth, hence their characteristic rattling."
icon_state = "tonguebone"
say_mod = "rattles"
attack_verb = list("bitten", "chattered", "chomped", "enamelled", "boned")
attack_verb_continuous = list("bites", "chatters", "chomps", "enamelles", "bones")
attack_verb_simple = list("bite", "chatter", "chomp", "enamel", "bone")
taste_sensitivity = 101 // skeletons cannot taste anything
modifies_speech = TRUE
var/chattering = FALSE
@@ -260,7 +262,8 @@
organ_flags = NONE
icon_state = "tonguerobot"
say_mod = "states"
attack_verb = list("beeped", "booped")
attack_verb_continuous = list("beeps", "boops")
attack_verb_simple = list("beep", "boop")
modifies_speech = TRUE
taste_sensitivity = 25 // not as good as an organic tongue
@@ -289,7 +292,8 @@
desc = "A sophisticated ethereal organ, capable of synthesising speech via electrical discharge."
icon_state = "electrotongue"
say_mod = "crackles"
attack_verb = list("shocked", "jolted", "zapped")
attack_verb_continuous = list("shocks", "jolts", "zaps")
attack_verb_simple = list("shock", "jolt", "zap")
taste_sensitivity = 101 // Not a tongue, they can't taste shit
var/static/list/languages_possible_ethereal = typecacheof(list(
/datum/language/common,
+16 -8
View File
@@ -30,7 +30,8 @@
flags_1 = CONDUCT_1
item_flags = SURGICAL_TOOL
w_class = WEIGHT_CLASS_TINY
attack_verb = list("attacked", "pinched")
attack_verb_continuous = list("attacks", "pinches")
attack_verb_simple = list("attack", "pinch")
tool_behaviour = TOOL_HEMOSTAT
toolspeed = 1
@@ -51,7 +52,8 @@
flags_1 = CONDUCT_1
item_flags = SURGICAL_TOOL
w_class = WEIGHT_CLASS_TINY
attack_verb = list("burnt")
attack_verb_continuous = list("burns")
attack_verb_simple = list("burn")
tool_behaviour = TOOL_CAUTERY
toolspeed = 1
@@ -73,7 +75,8 @@
item_flags = SURGICAL_TOOL | EYE_STAB
force = 15
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("drilled")
attack_verb_continuous = list("drills")
attack_verb_simple = list("drill")
tool_behaviour = TOOL_DRILL
toolspeed = 1
@@ -108,7 +111,8 @@
throw_speed = 3
throw_range = 5
custom_materials = list(/datum/material/iron=4000, /datum/material/glass=1000)
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "tore", "lacerated", "ripped", "diced", "cut")
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")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = SHARP_EDGED
tool_behaviour = TOOL_SCALPEL
@@ -145,7 +149,8 @@
throw_speed = 2
throw_range = 5
custom_materials = list(/datum/material/iron=1000)
attack_verb = list("attacked", "slashed", "sawed", "cut")
attack_verb_continuous = list("attacks", "slashes", "saws", "cuts")
attack_verb_simple = list("attack", "slash", "saw", "cut")
sharpness = SHARP_EDGED
tool_behaviour = TOOL_SAW
toolspeed = 1
@@ -172,7 +177,8 @@
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
inhand_icon_state = "drapes"
w_class = WEIGHT_CLASS_TINY
attack_verb = list("slapped")
attack_verb_continuous = list("slaps")
attack_verb_simple = list("slap")
/obj/item/surgical_drapes/Initialize(mapload)
. = ..()
@@ -349,7 +355,8 @@
throw_speed = 2
throw_range = 5
custom_materials = list(/datum/material/iron=8000, /datum/material/titanium=6000)
attack_verb = list("sheared", "snipped")
attack_verb_continuous = list("shears", "snips")
attack_verb_simple = list("shear", "snip")
sharpness = SHARP_EDGED
custom_premium_price = 1800
@@ -415,6 +422,7 @@
flags_1 = CONDUCT_1
item_flags = SURGICAL_TOOL
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("corrected", "properly set")
attack_verb_continuous = list("corrects", "properly sets")
attack_verb_simple = list("correct", "properly set")
tool_behaviour = TOOL_BONESET
toolspeed = 1
+2 -1
View File
@@ -68,6 +68,7 @@
inhand_icon_state = "chain"
lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi'
righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi'
attack_verb = list("flogged", "whipped", "lashed", "disciplined")
attack_verb_continuous = list("flogs", "whips", "lashes", "disciplines")
attack_verb_simple = list("flog", "whip", "lash", "discipline")
hitsound = 'sound/weapons/whip.ogg'
slot_flags = ITEM_SLOT_BELT