From c930622bea74c5472f4a057d9ade80a5683d69d2 Mon Sep 17 00:00:00 2001 From: "johnsonmt88@gmail.com" Date: Thu, 26 Jul 2012 05:21:24 +0000 Subject: [PATCH] Attack verbs! Instead of 'x has been attacked with y by z' it now reads 'x has been 'y.attack_verb-ed' with y by z'! Example: Monkeyman has been bashed in the head with a riot shield by Nodrak! or Monkeyman has been stabbed in the chest with an energy sword by Nodrak! - Every obj now has a list named "attack_verbs" - When declaring an object, just use attack_verb = list("verb1", "verb2") and so on to initialize the list for that specific item. - I've added a bunch of these to a ton of items already, feel free to modify or add more. Just try to stay away from gimmicky verbs (clown stuff being the exception.) clothing.dm and spawner.dm only had a single definition in each of them, so their definitins have been moved to obj.dm and their original dm files deleted. I'm not sure about spawner but clothing had all of its other definitions removed recently. radio.dm was a completely blank file, so it was removed. Changelog updated git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4182 316c924e-a436-60f5-8080-3fe189b3f50e --- code/defines/obj.dm | 14 +- code/defines/obj/clothing.dm | 21 -- code/defines/obj/hydro.dm | 3 + code/defines/obj/radio.dm | 0 code/defines/obj/spawner.dm | 3 - code/defines/obj/storage.dm | 1 + code/defines/obj/toy.dm | 4 + code/defines/obj/weapon.dm | 34 +- code/game/gamemodes/cult/cult_items.dm | 1 + code/game/machinery/newscaster.dm | 1 + code/game/magic/library.dm | 1 + code/game/objects/alien/egg.dm | 5 +- code/game/objects/alien/weeds.dm | 5 +- code/game/objects/items/item.dm | 5 +- .../objects/items/weapons/cigs_lighters.dm | 3 + .../objects/items/weapons/mops_cleaners.dm | 1 + code/game/objects/items/weapons/stunbaton.dm | 1 + code/game/objects/items/weapons/tools.dm | 8 +- code/game/objects/items/weapons/twohanded.dm | 1 + code/game/objects/storage/belt.dm | 1 + code/modules/chemical/Chemistry-Tools.dm | 1 + code/modules/clothing/gloves.dm | 1 + code/modules/mining/mine_items.dm | 2 + .../mob/living/carbon/human/human_defense.dm | 7 +- code/modules/paperwork/paper.dm | 1 + code/modules/paperwork/stamps.dm | 1 + code/modules/projectiles/gun.dm | 1 + html/changelog.html | 12 +- tgstation.dme | 292 ------------------ 29 files changed, 105 insertions(+), 326 deletions(-) delete mode 100644 code/defines/obj/clothing.dm delete mode 100644 code/defines/obj/radio.dm delete mode 100644 code/defines/obj/spawner.dm diff --git a/code/defines/obj.dm b/code/defines/obj.dm index 277442930f..6fef5e67bc 100644 --- a/code/defines/obj.dm +++ b/code/defines/obj.dm @@ -12,6 +12,7 @@ var/datum/marked_datum animate_movement = 2 var/throwforce = 1 + var/list/attack_verb = list() //Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]" proc/handle_internal_lifeform(mob/lifeform_inside_me, breath_request) //Return: (NONSTANDARD) @@ -380,6 +381,7 @@ desc = "Blueprints of the station. There's stamp \"Classified\" and several coffee stains on it." icon = 'icons/obj/items.dmi' icon_state = "blueprints" + attack_verb = list("attacked", "bapped", "hit") /obj/item/apc_frame name = "APC frame" @@ -745,7 +747,7 @@ density = 1 anchored = 1.0 layer = 2.8 - throwpass = 1 //You can throw objects over this, despite it's density. + throwpass = 1 //You can throw objects over this, despite it's density.") /obj/structure/table/New() ..() @@ -1002,6 +1004,7 @@ throw_speed = 3 throw_range = 5 origin_tech = "biotech=3" + attack_verb = list("attacked", "slapped", "whacked") var/mob/living/carbon/brain/brainmob = null @@ -1200,6 +1203,7 @@ throw_range = 20 m_amt = 1875 max_amount = 60 + attack_verb = list("hit", "bludgeoned", "whacked") /obj/item/stack/sheet name = "sheet" @@ -1213,6 +1217,7 @@ max_amount = 50 throw_speed = 3 throw_range = 3 + attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "smashed") var/perunit = 3750 /obj/item/stack/sheet/attackby(obj/item/weapon/W as obj, mob/user as mob) @@ -1394,6 +1399,7 @@ throw_range = 20 flags = FPRINT | TABLEPASS | CONDUCT max_amount = 60 + attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "smashed") var/on = 1 var/state //0 = fine, 1 = flickering, 2 = breaking, 3 = broken @@ -1449,3 +1455,9 @@ name = "Geas" desc = "You can't resist." // name = "" + +/obj/item/clothing + name = "clothing" + +/obj/effect/spawner + name = "object spawner" diff --git a/code/defines/obj/clothing.dm b/code/defines/obj/clothing.dm deleted file mode 100644 index 320e2fb9cf..0000000000 --- a/code/defines/obj/clothing.dm +++ /dev/null @@ -1,21 +0,0 @@ -// All currently in-game clothing. Gimmicks moved to obj\clothing\gimmick.dm for all of your gay fantasy roleplay dress-up shenanigans. - -/obj/item/clothing - name = "clothing" -// var/obj/item/clothing/master = null - - - - - - - - -// Belt slot clothing (only suspenders for now, because utility belt is a storage item) -/* -/obj/item/clothing/belt - name = "belt" - - flags = FPRINT | TABLEPASS | ONBELT -*/ - diff --git a/code/defines/obj/hydro.dm b/code/defines/obj/hydro.dm index 4685615e02..fb7868da7f 100644 --- a/code/defines/obj/hydro.dm +++ b/code/defines/obj/hydro.dm @@ -1728,6 +1728,7 @@ plant_type = 2 origin_tech = "materials=1" seed = "/obj/item/seeds/towermycelium" + attack_verb = list("bashed", "battered", "bludgeoned", "whacked") attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || (istype(W, /obj/item/weapon/twohanded/fireaxe) && W:wielded) || istype(W, /obj/item/weapon/melee/energy)) @@ -1812,6 +1813,7 @@ plant_type = 1 seed = "/obj/item/seeds/deathnettleseed" origin_tech = "combat=3" + attack_verb = list("stung") New() ..() reagents.add_reagent("nutriment", 1+round((potency / 50), 1)) @@ -1926,6 +1928,7 @@ throwforce = 7.0 w_class = 2.0 m_amt = 50 + attack_verb = list("slashed", "sliced", "cut", "clawed") // ************************************* // Weedkiller defines for hydroponics diff --git a/code/defines/obj/radio.dm b/code/defines/obj/radio.dm deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/code/defines/obj/spawner.dm b/code/defines/obj/spawner.dm deleted file mode 100644 index d0ec0ef858..0000000000 --- a/code/defines/obj/spawner.dm +++ /dev/null @@ -1,3 +0,0 @@ -/obj/effect/spawner - name = "object spawner" - diff --git a/code/defines/obj/storage.dm b/code/defines/obj/storage.dm index a93ddeb822..2c93193d0e 100644 --- a/code/defines/obj/storage.dm +++ b/code/defines/obj/storage.dm @@ -420,6 +420,7 @@ throw_range = 7 w_class = 4.0 origin_tech = "combat=1" + attack_verb = "robusted" /obj/item/weapon/storage/toolbox/emergency name = "emergency toolbox" diff --git a/code/defines/obj/toy.dm b/code/defines/obj/toy.dm index ddd808e53e..c1b488d430 100644 --- a/code/defines/obj/toy.dm +++ b/code/defines/obj/toy.dm @@ -134,6 +134,7 @@ w_class = 3.0 g_amt = 10 m_amt = 10 + attack_verb = list("struck", "pistol whipped", "hit", "bashed") var/bullets = 7.0 examine() @@ -188,6 +189,7 @@ var/active = 0.0 w_class = 2.0 flags = FPRINT | TABLEPASS | NOSHIELD + attack_verb = list("attacked", "struck", "hit") attack_self(mob/user as mob) src.active = !( src.active ) @@ -214,6 +216,7 @@ item_state = "crossbow" flags = FPRINT | TABLEPASS | USEDELAY w_class = 2.0 + attack_verb = list("attacked", "struck", "hit") var/bullets = 5 examine() @@ -319,6 +322,7 @@ icon = 'icons/obj/crayons.dmi' icon_state = "crayonred" w_class = 1.0 + attack_verb = list("attacked", "coloured") var/colour = "#FF0000" //RGB var/shadeColour = "#220000" //RGB var/uses = 30 //0 for unlimited uses diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index a1c83d064d..03278726cd 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -22,6 +22,7 @@ g_amt = 7500 m_amt = 1000 origin_tech = "materials=2" + attack_verb = list("shoved", "bashed") IsShield() return 1 @@ -38,6 +39,7 @@ throw_range = 4 w_class = 1 origin_tech = "materials=4;magnets=3;syndicate=4" + attack_verb = list("shoved", "bashed") var/active = 0 @@ -64,6 +66,7 @@ force = 2 throwforce = 1 w_class = 3 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") /obj/item/weapon/claymore name = "claymore" @@ -75,6 +78,7 @@ force = 40 throwforce = 10 w_class = 3 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") IsShield() return 1 @@ -89,6 +93,7 @@ force = 40 throwforce = 10 w_class = 3 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") IsShield() return 1 @@ -227,6 +232,7 @@ throwforce = 7 w_class = 3 origin_tech = "combat=4" + attack_verb = list("flogged", "whipped", "lashed", "disciplined") /obj/item/weapon/melee/energy var/active = 0 @@ -242,6 +248,7 @@ w_class = 3.0 flags = FPRINT | CONDUCT | NOSHIELD | TABLEPASS origin_tech = "combat=3" + attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") /obj/item/weapon/melee/energy/sword color @@ -255,6 +262,7 @@ w_class = 2.0 flags = FPRINT | TABLEPASS | NOSHIELD origin_tech = "magnets=3;syndicate=4" + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") /obj/item/weapon/melee/energy/sword/chainsword color = "chain" @@ -276,6 +284,7 @@ throw_range = 1 w_class = 4.0//So you can't hide it in your pocket or some such. flags = FPRINT | TABLEPASS | NOSHIELD + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") var/datum/effect/effect/system/spark_spread/spark_system /obj/item/weapon/bananapeel @@ -410,6 +419,7 @@ w_class = 1.0 throw_speed = 3 throw_range = 15 + attack_verb = list("HONKED") var/spam_flag = 0 /obj/item/stack/medical @@ -569,6 +579,7 @@ flags = TABLEPASS | USEDELAY | FPRINT | CONDUCT slot_flags = SLOT_BELT item_state = "coil_red" + attack_verb = list("whipped", "lashed", "disciplined", "flogged") /obj/item/weapon/cable_coil/cut item_state = "coil_red2" @@ -620,6 +631,7 @@ w_class = 2.0 m_amt = 50 origin_tech = "engineering=1" + attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "thrashed", "whacked") /obj/item/weapon/crowbar/red icon = 'icons/obj/items.dmi' @@ -637,6 +649,7 @@ item_state = "cane" w_class = 2.0 m_amt = 50 + attack_verb = list("bludgeoned", "whacked", "disciplined") /obj/item/weapon/cane/browncane name = " browncane" @@ -675,6 +688,7 @@ force = 10.0 item_state = "fire_extinguisher" m_amt = 90 + attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed") /obj/item/weapon/extinguisher/mini name = "fire extinguisher" @@ -894,6 +908,7 @@ throw_range = 5 w_class = 2.0 flags = FPRINT | TABLEPASS + attack_verb = list("warned", "cautioned", "smashed") /obj/item/weapon/caution/cone desc = "This cone is trying to warn you of something!" @@ -958,6 +973,7 @@ w_class = 1.0 throw_speed = 7 throw_range = 15 + attack_verb = list("banned") /obj/item/weapon/pen/sleepypen desc = "It's a normal black ink pen with a sharp point and a carefully engraved \"Waffle Co.\"" @@ -1001,6 +1017,7 @@ throw_range = 5 g_amt = 0 m_amt = 75 + attack_verb = list("stabbed") /obj/item/weapon/shard name = "shard" @@ -1012,6 +1029,7 @@ throwforce = 15.0 item_state = "shard-glass" g_amt = 3750 + attack_verb = list("stabbed", "slashed", "sliced", "cut") /*/obj/item/weapon/syndicate_uplink name = "station bounced radio" @@ -1081,7 +1099,7 @@ throw_range = 5 w_class = 2.0 flags = FPRINT | TABLEPASS | NOSHIELD - + attack_verb = list("bludgeoned", "whacked", "disciplined") /obj/item/weapon/staff/stick name = "stick" @@ -1104,6 +1122,7 @@ icon_state = "table_parts" m_amt = 3750 flags = FPRINT | TABLEPASS| CONDUCT + attack_verb = list("slammed", "bashed", "battered", "bludgeoned", "thrashed", "whacked") /obj/item/weapon/table_parts/reinforced name = "reinforced table parts" @@ -1141,6 +1160,7 @@ var/laying = 0.0 var/old_lay = null m_amt = 40 + attack_verb = list("whipped", "lashed", "disciplined", "tickled") /obj/item/weapon/wrapping_paper name = "wrapping paper" @@ -1340,6 +1360,7 @@ throw_speed = 2 throw_range = 7 w_class = 3.0 + attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") //I think the rollingpin attackby will end up ignoring this anyway. /obj/item/weapon/kitchenknife name = "kitchen knife" @@ -1354,6 +1375,7 @@ throw_range = 6 m_amt = 12000 origin_tech = "materials=1" + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") /obj/item/weapon/butch name = "butcher's Cleaver" @@ -1368,6 +1390,7 @@ throw_range = 6 m_amt = 12000 origin_tech = "materials=1" + attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") /obj/item/weapon/tray name = "tray" @@ -1410,6 +1433,7 @@ throw_range = 5 flags = FPRINT | TABLEPASS | CONDUCT origin_tech = "materials=1" + attack_verb = list("attacked", "stabbed", "poked") /obj/item/weapon/kitchen/utensil/fork @@ -1428,6 +1452,7 @@ name = "spoon" desc = "SPOON!" icon_state = "spoon" + attack_verb = list("attacked", "poked") /obj/item/weapon/scalpel name = "scalpel" @@ -1443,6 +1468,7 @@ m_amt = 10000 g_amt = 5000 origin_tech = "materials=1;biotech=1" + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") /obj/item/weapon/retractor name = "retractor" @@ -1465,6 +1491,7 @@ flags = FPRINT | TABLEPASS | CONDUCT w_class = 1.0 origin_tech = "materials=1;biotech=1" + attack_verb = list("attacked", "pinched") /obj/item/weapon/cautery name = "cautery" @@ -1476,6 +1503,7 @@ flags = FPRINT | TABLEPASS | CONDUCT w_class = 1.0 origin_tech = "materials=1;biotech=1" + attack_verb = list("burnt") /obj/item/weapon/surgicaldrill name = "surgical drill" @@ -1489,6 +1517,7 @@ force = 15.0 w_class = 1.0 origin_tech = "materials=1;biotech=1" + attack_verb = list("drilled") /obj/item/weapon/circular_saw name = "circular saw" @@ -1505,6 +1534,7 @@ m_amt = 20000 g_amt = 10000 origin_tech = "materials=1;biotech=1" + attack_verb = list("attacked", "slashed", "sawed", "cut") /obj/item/weapon/syntiflesh name = "syntiflesh" @@ -1528,6 +1558,7 @@ throw_range = 4 m_amt = 15000 origin_tech = "materials=2;combat=1" + attack_verb = list("chopped", "torn", "cut") /* @@ -1580,6 +1611,7 @@ name = "data cable" icon = 'icons/obj/power.dmi' icon_state = "wire1" + var/obj/machinery/machine /obj/item/weapon/plastique diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index 576a9f11f0..694e8b6948 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -7,6 +7,7 @@ slot_flags = SLOT_BELT force = 40 throwforce = 10 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") /obj/item/weapon/melee/cultblade/attack(mob/living/target as mob, mob/living/carbon/human/user as mob) diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index cc41b7f1c6..fe8ed4bbb8 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -669,6 +669,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //list that will contain r desc = "An issue of The Griffon, the newspaper circulating aboard Nanotrasen Space Stations." icon_state = "newspaper" w_class = 2 //Let's make it fit in trashbags! + attack_verb = list("bapped") var/screen = 0 var/pages = 0 var/curr_page = 0 diff --git a/code/game/magic/library.dm b/code/game/magic/library.dm index f04240a91e..46bf1c0506 100644 --- a/code/game/magic/library.dm +++ b/code/game/magic/library.dm @@ -178,6 +178,7 @@ throw_range = 5 w_class = 1.0 flags = FPRINT | TABLEPASS + attack_verb = list("bashed", "whacked", "educated") var/dat // Actual page content var/due_date = 0 // Game time in 1/10th seconds var/author // Who wrote the thing, can be changed by pen or PC. It is not automatically assigned diff --git a/code/game/objects/alien/egg.dm b/code/game/objects/alien/egg.dm index 8f73d2cd11..37c4178cf3 100644 --- a/code/game/objects/alien/egg.dm +++ b/code/game/objects/alien/egg.dm @@ -76,7 +76,10 @@ /obj/effect/alien/egg/attackby(var/obj/item/weapon/W, var/mob/user) if(health <= 0) return - src.visible_message("\red \The [src] has been attacked with \the [W][(user ? " by [user]." : ".")]") + if(W.attack_verb.len) + src.visible_message("\red \The [src] has been [pick(W.attack_verb)] with \the [W][(user ? " by [user]." : ".")]") + else + src.visible_message("\red \The [src] has been attacked with \the [W][(user ? " by [user]." : ".")]") var/damage = W.force / 4.0 if(istype(W, /obj/item/weapon/weldingtool)) diff --git a/code/game/objects/alien/weeds.dm b/code/game/objects/alien/weeds.dm index 3c07c2fd73..4bac17a337 100644 --- a/code/game/objects/alien/weeds.dm +++ b/code/game/objects/alien/weeds.dm @@ -69,7 +69,10 @@ Alien plants should do something if theres a lot of poison return /obj/effect/alien/weeds/attackby(var/obj/item/weapon/W, var/mob/user) - visible_message("\red \The [src] have been attacked with \the [W][(user ? " by [user]." : ".")]") + if(W.attack_verb.len) + visible_message("\red \The [src] have been [pick(W.attack_verb)] with \the [W][(user ? " by [user]." : ".")]") + else + visible_message("\red \The [src] have been attacked with \the [W][(user ? " by [user]." : ".")]") var/damage = W.force / 4.0 diff --git a/code/game/objects/items/item.dm b/code/game/objects/items/item.dm index 1cc863025f..240f532934 100644 --- a/code/game/objects/items/item.dm +++ b/code/game/objects/items/item.dm @@ -265,7 +265,10 @@ showname = "." for(var/mob/O in viewers(messagesource, null)) - O.show_message(text("\red [] has been attacked with [][] ", M, src, showname), 1) + if(src.attack_verb.len) + O.show_message("\red [M] has been [pick(src.attack_verb)] with [src][showname] ", 1) + else + O.show_message("\red [M] has been attacked with [src][showname] ", 1) if(!showname && user) if(user.client) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index a2a238503a..0ca6179148 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -23,6 +23,7 @@ ZIPPO var/smoketime = 5 w_class = 1.0 origin_tech = "materials=1" + attack_verb = list("burnt", "singed") process() @@ -106,6 +107,7 @@ ZIPPO item_state = "cigoff" w_class = 1 body_parts_covered = null + attack_verb = list("burnt", "singed") var/lit = 0 var/icon_on = "cigon" //Note - these are in masks.dmi not in cigarette.dmi var/icon_off = "cigoff" @@ -450,6 +452,7 @@ ZIPPO throwforce = 4 flags = TABLEPASS | CONDUCT slot_flags = SLOT_BELT + attack_verb = list("burnt", "singed") var/lit = 0 /obj/item/weapon/lighter/zippo diff --git a/code/game/objects/items/weapons/mops_cleaners.dm b/code/game/objects/items/weapons/mops_cleaners.dm index d7ee860292..8c298e36b5 100644 --- a/code/game/objects/items/weapons/mops_cleaners.dm +++ b/code/game/objects/items/weapons/mops_cleaners.dm @@ -349,6 +349,7 @@ throw_range = 10 w_class = 3.0 flags = FPRINT | TABLEPASS + attack_verb = list("mopped", "bashed", "bludgeoned", "whacked") /obj/item/weapon/mop/New() diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 0f58a40559..62065188df 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -12,6 +12,7 @@ var/status = 0 origin_tech = "combat=2" + /obj/item/weapon/melee/baton/update_icon() if(status) icon_state = "stunbaton_active" diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 0b026808dc..4f971a32cb 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -6,6 +6,7 @@ CONTAINS: WRENCH SCREWDRIVER WELDINGTOOOL +WIRECUTTERS */ @@ -22,7 +23,7 @@ WELDINGTOOOL w_class = 2.0 m_amt = 150 origin_tech = "materials=1;engineering=1" - + attack_verb = list("bashed", "battered", "bludgeoned", "whacked") // SCREWDRIVER @@ -355,6 +356,10 @@ WELDINGTOOOL reagents += (gen_amount) if(reagents > max_fuel) reagents = max_fuel + + + +//WIRECUTTERS /obj/item/weapon/wirecutters name = "wirecutters" desc = "This cuts wires." @@ -368,6 +373,7 @@ WELDINGTOOOL w_class = 2.0 m_amt = 80 origin_tech = "materials=1;engineering=1" + attack_verb = list("pinched", "nipped") /obj/item/weapon/wirecutters/New() if(prob(50)) diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index 73f5880e07..0c14166dd3 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -87,6 +87,7 @@ slot_flags = SLOT_BACK force_unwielded = 5 force_wielded = 18 + attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") /obj/item/weapon/twohanded/fireaxe/update_icon() //Currently only here to fuck with the on-mob icons. icon_state = "fireaxe[wielded]" diff --git a/code/game/objects/storage/belt.dm b/code/game/objects/storage/belt.dm index 08d1788499..68bd8dc33c 100644 --- a/code/game/objects/storage/belt.dm +++ b/code/game/objects/storage/belt.dm @@ -6,6 +6,7 @@ item_state = "utility" flags = FPRINT | TABLEPASS slot_flags = SLOT_BELT + attack_verb = list("whipped", "lashed", "disciplined") /obj/item/weapon/storage/belt/proc/can_use() diff --git a/code/modules/chemical/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm index a16fc4036d..9b829a6247 100644 --- a/code/modules/chemical/Chemistry-Tools.dm +++ b/code/modules/chemical/Chemistry-Tools.dm @@ -2764,6 +2764,7 @@ throw_range = 5 item_state = "beer" //item_state - Need to find a bottle sprite + attack_verb = list("stabbed", "slashed", "attacked") var/icon/broken_outline = icon('icons/obj/drinks.dmi', "broken") diff --git a/code/modules/clothing/gloves.dm b/code/modules/clothing/gloves.dm index 3402ced7cd..e851aae641 100644 --- a/code/modules/clothing/gloves.dm +++ b/code/modules/clothing/gloves.dm @@ -11,3 +11,4 @@ var/obj/item/weapon/cell/cell = 0 body_parts_covered = HANDS slot_flags = SLOT_GLOVES + attack_verb = list("challenged") diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 887a0a5e4d..537f4c7fea 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -192,6 +192,7 @@ proc/move_mining_shuttle() m_amt = 3750 //one sheet, but where can you make them? var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO origin_tech = "materials=1;engineering=1" + attack_verb = list("hit", "pierced", "sliced", "attacked") hammer name = "Mining Sledge Hammer" @@ -278,6 +279,7 @@ proc/move_mining_shuttle() w_class = 3.0 m_amt = 50 origin_tech = "materials=1;engineering=1" + attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked") /obj/item/weapon/shovel/spade name = "spade" diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 71ca669ddc..886de2b8ae 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -117,9 +117,12 @@ emp_act if((user != src) && check_shields(I.force, "the [I.name]")) return 0 - visible_message("\red [src] has been attacked in the [hit_area] with [I.name] by [user]!") + if(I.attack_verb.len) + visible_message("\red [src] has been [pick(I.attack_verb)] in the [hit_area] with [I.name] by [user]!") + else + visible_message("\red [src] has been attacked in the [hit_area] with [I.name] by [user]!") - var/armor = run_armor_check(affecting, "melee", "Your armor has protected you from a hit to the [hit_area].", "Your armor has softened hit to your [hit_area].") + var/armor = run_armor_check(affecting, "melee", "Your armor has protected your [hit_area].", "Your armor has softened hit to your [hit_area].") if(armor >= 2) return 0 if(!I.force) return 0 diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 5ff269f56d..676272decb 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -12,6 +12,7 @@ slot_flags = SLOT_HEAD body_parts_covered = HEAD protective_temperature = 0 + attack_verb = list("") var/info //What's actually written on the paper. var/info_links //A different version of the paper which includes html links at fields and EOF diff --git a/code/modules/paperwork/stamps.dm b/code/modules/paperwork/stamps.dm index f5589e816a..8a5161a53e 100644 --- a/code/modules/paperwork/stamps.dm +++ b/code/modules/paperwork/stamps.dm @@ -12,6 +12,7 @@ m_amt = 60 color = "cargo" pressure_resistance = 5 + attack_verb = list("stamped") /obj/item/weapon/stamp/captain name = "captain's rubber stamp" diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index fa566130f3..e7cc2c2865 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -13,6 +13,7 @@ throw_range = 5 force = 5.0 origin_tech = "combat=1" + attack_verb = list("struck", "hit", "bashed") var/fire_sound = 'Gunshot.ogg' var/obj/item/projectile/in_chamber = null diff --git a/html/changelog.html b/html/changelog.html index 574c65c771..42725f5a62 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,7 +50,15 @@ should be listed in the changelog upon commit tho. Thanks. -->
-

July 25, 2012

+

July 25, 2012: The day of updates!

+

Nodrak updated:

+
    +
  • Attacking mobs with items will now give new messages. Instead of "Monkeyman was attacked in the head with a wrench by Nodrak." it will read "Monkeyman was bashed in the head with a wrench by Nodrak." Diffrent items have diffrent verbs and some have multiple verbs.
  • +
  • Cultists can now read what words a rune was made with by examining the rune. Due to an error in the code, this was not possible before.
  • +
  • Clowns no longer have practice lasers or staves of change blow up in their face due to clumsyness.
  • +
  • Engineering cyborgs can now actually repair a cut AI wire in APCs.
  • +
  • I've removed a ton of pointless checks and redundant loops from metroid's which have been causing lag due to how often they get called. If metroids are behaving strangly ping me in #coderbus
  • +

Sieve updated:

  • Made a 'default' save slot (D), and whenever you connect it automatically selects the default slot to load from, but manually selecting a different slot will allow you to play on that one before it returns to default.
  • @@ -63,7 +71,7 @@ should be listed in the changelog upon commit tho. Thanks. -->

Icarus updated:

    -
  • Players not buckled in when the emergency shuttle/pod starts moving get will get stunned.
  • +
  • Players not buckled in when the emergency shuttle/pod starts moving get will get knocked down.
  • Added a YouTool vending machine to primary tool storage.
diff --git a/tgstation.dme b/tgstation.dme index 8aa875c227..f6aea658e5 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -5,266 +5,6 @@ // END_INTERNALS // BEGIN_FILE_DIR #define FILE_DIR . -#define FILE_DIR ".svn" -#define FILE_DIR ".svn/pristine" -#define FILE_DIR ".svn/pristine/00" -#define FILE_DIR ".svn/pristine/01" -#define FILE_DIR ".svn/pristine/02" -#define FILE_DIR ".svn/pristine/03" -#define FILE_DIR ".svn/pristine/04" -#define FILE_DIR ".svn/pristine/05" -#define FILE_DIR ".svn/pristine/06" -#define FILE_DIR ".svn/pristine/07" -#define FILE_DIR ".svn/pristine/08" -#define FILE_DIR ".svn/pristine/09" -#define FILE_DIR ".svn/pristine/0a" -#define FILE_DIR ".svn/pristine/0b" -#define FILE_DIR ".svn/pristine/0c" -#define FILE_DIR ".svn/pristine/0d" -#define FILE_DIR ".svn/pristine/0e" -#define FILE_DIR ".svn/pristine/0f" -#define FILE_DIR ".svn/pristine/10" -#define FILE_DIR ".svn/pristine/11" -#define FILE_DIR ".svn/pristine/12" -#define FILE_DIR ".svn/pristine/13" -#define FILE_DIR ".svn/pristine/14" -#define FILE_DIR ".svn/pristine/15" -#define FILE_DIR ".svn/pristine/16" -#define FILE_DIR ".svn/pristine/17" -#define FILE_DIR ".svn/pristine/18" -#define FILE_DIR ".svn/pristine/19" -#define FILE_DIR ".svn/pristine/1a" -#define FILE_DIR ".svn/pristine/1b" -#define FILE_DIR ".svn/pristine/1c" -#define FILE_DIR ".svn/pristine/1d" -#define FILE_DIR ".svn/pristine/1e" -#define FILE_DIR ".svn/pristine/1f" -#define FILE_DIR ".svn/pristine/20" -#define FILE_DIR ".svn/pristine/21" -#define FILE_DIR ".svn/pristine/22" -#define FILE_DIR ".svn/pristine/23" -#define FILE_DIR ".svn/pristine/24" -#define FILE_DIR ".svn/pristine/25" -#define FILE_DIR ".svn/pristine/26" -#define FILE_DIR ".svn/pristine/27" -#define FILE_DIR ".svn/pristine/28" -#define FILE_DIR ".svn/pristine/29" -#define FILE_DIR ".svn/pristine/2a" -#define FILE_DIR ".svn/pristine/2b" -#define FILE_DIR ".svn/pristine/2c" -#define FILE_DIR ".svn/pristine/2d" -#define FILE_DIR ".svn/pristine/2e" -#define FILE_DIR ".svn/pristine/2f" -#define FILE_DIR ".svn/pristine/30" -#define FILE_DIR ".svn/pristine/31" -#define FILE_DIR ".svn/pristine/32" -#define FILE_DIR ".svn/pristine/33" -#define FILE_DIR ".svn/pristine/34" -#define FILE_DIR ".svn/pristine/35" -#define FILE_DIR ".svn/pristine/36" -#define FILE_DIR ".svn/pristine/37" -#define FILE_DIR ".svn/pristine/38" -#define FILE_DIR ".svn/pristine/39" -#define FILE_DIR ".svn/pristine/3a" -#define FILE_DIR ".svn/pristine/3b" -#define FILE_DIR ".svn/pristine/3c" -#define FILE_DIR ".svn/pristine/3d" -#define FILE_DIR ".svn/pristine/3e" -#define FILE_DIR ".svn/pristine/3f" -#define FILE_DIR ".svn/pristine/40" -#define FILE_DIR ".svn/pristine/41" -#define FILE_DIR ".svn/pristine/42" -#define FILE_DIR ".svn/pristine/43" -#define FILE_DIR ".svn/pristine/44" -#define FILE_DIR ".svn/pristine/45" -#define FILE_DIR ".svn/pristine/46" -#define FILE_DIR ".svn/pristine/47" -#define FILE_DIR ".svn/pristine/48" -#define FILE_DIR ".svn/pristine/49" -#define FILE_DIR ".svn/pristine/4a" -#define FILE_DIR ".svn/pristine/4b" -#define FILE_DIR ".svn/pristine/4c" -#define FILE_DIR ".svn/pristine/4d" -#define FILE_DIR ".svn/pristine/4e" -#define FILE_DIR ".svn/pristine/4f" -#define FILE_DIR ".svn/pristine/50" -#define FILE_DIR ".svn/pristine/51" -#define FILE_DIR ".svn/pristine/52" -#define FILE_DIR ".svn/pristine/53" -#define FILE_DIR ".svn/pristine/54" -#define FILE_DIR ".svn/pristine/55" -#define FILE_DIR ".svn/pristine/56" -#define FILE_DIR ".svn/pristine/57" -#define FILE_DIR ".svn/pristine/58" -#define FILE_DIR ".svn/pristine/59" -#define FILE_DIR ".svn/pristine/5a" -#define FILE_DIR ".svn/pristine/5b" -#define FILE_DIR ".svn/pristine/5c" -#define FILE_DIR ".svn/pristine/5d" -#define FILE_DIR ".svn/pristine/5e" -#define FILE_DIR ".svn/pristine/5f" -#define FILE_DIR ".svn/pristine/60" -#define FILE_DIR ".svn/pristine/61" -#define FILE_DIR ".svn/pristine/62" -#define FILE_DIR ".svn/pristine/63" -#define FILE_DIR ".svn/pristine/64" -#define FILE_DIR ".svn/pristine/65" -#define FILE_DIR ".svn/pristine/66" -#define FILE_DIR ".svn/pristine/67" -#define FILE_DIR ".svn/pristine/68" -#define FILE_DIR ".svn/pristine/69" -#define FILE_DIR ".svn/pristine/6a" -#define FILE_DIR ".svn/pristine/6b" -#define FILE_DIR ".svn/pristine/6c" -#define FILE_DIR ".svn/pristine/6d" -#define FILE_DIR ".svn/pristine/6e" -#define FILE_DIR ".svn/pristine/6f" -#define FILE_DIR ".svn/pristine/70" -#define FILE_DIR ".svn/pristine/71" -#define FILE_DIR ".svn/pristine/72" -#define FILE_DIR ".svn/pristine/73" -#define FILE_DIR ".svn/pristine/74" -#define FILE_DIR ".svn/pristine/75" -#define FILE_DIR ".svn/pristine/76" -#define FILE_DIR ".svn/pristine/77" -#define FILE_DIR ".svn/pristine/78" -#define FILE_DIR ".svn/pristine/79" -#define FILE_DIR ".svn/pristine/7a" -#define FILE_DIR ".svn/pristine/7b" -#define FILE_DIR ".svn/pristine/7c" -#define FILE_DIR ".svn/pristine/7d" -#define FILE_DIR ".svn/pristine/7e" -#define FILE_DIR ".svn/pristine/7f" -#define FILE_DIR ".svn/pristine/80" -#define FILE_DIR ".svn/pristine/81" -#define FILE_DIR ".svn/pristine/82" -#define FILE_DIR ".svn/pristine/83" -#define FILE_DIR ".svn/pristine/84" -#define FILE_DIR ".svn/pristine/85" -#define FILE_DIR ".svn/pristine/86" -#define FILE_DIR ".svn/pristine/87" -#define FILE_DIR ".svn/pristine/88" -#define FILE_DIR ".svn/pristine/89" -#define FILE_DIR ".svn/pristine/8a" -#define FILE_DIR ".svn/pristine/8b" -#define FILE_DIR ".svn/pristine/8c" -#define FILE_DIR ".svn/pristine/8d" -#define FILE_DIR ".svn/pristine/8e" -#define FILE_DIR ".svn/pristine/8f" -#define FILE_DIR ".svn/pristine/90" -#define FILE_DIR ".svn/pristine/91" -#define FILE_DIR ".svn/pristine/92" -#define FILE_DIR ".svn/pristine/93" -#define FILE_DIR ".svn/pristine/94" -#define FILE_DIR ".svn/pristine/95" -#define FILE_DIR ".svn/pristine/96" -#define FILE_DIR ".svn/pristine/97" -#define FILE_DIR ".svn/pristine/98" -#define FILE_DIR ".svn/pristine/99" -#define FILE_DIR ".svn/pristine/9a" -#define FILE_DIR ".svn/pristine/9b" -#define FILE_DIR ".svn/pristine/9c" -#define FILE_DIR ".svn/pristine/9d" -#define FILE_DIR ".svn/pristine/9e" -#define FILE_DIR ".svn/pristine/9f" -#define FILE_DIR ".svn/pristine/a0" -#define FILE_DIR ".svn/pristine/a1" -#define FILE_DIR ".svn/pristine/a2" -#define FILE_DIR ".svn/pristine/a3" -#define FILE_DIR ".svn/pristine/a4" -#define FILE_DIR ".svn/pristine/a5" -#define FILE_DIR ".svn/pristine/a6" -#define FILE_DIR ".svn/pristine/a7" -#define FILE_DIR ".svn/pristine/a8" -#define FILE_DIR ".svn/pristine/a9" -#define FILE_DIR ".svn/pristine/aa" -#define FILE_DIR ".svn/pristine/ab" -#define FILE_DIR ".svn/pristine/ac" -#define FILE_DIR ".svn/pristine/ad" -#define FILE_DIR ".svn/pristine/ae" -#define FILE_DIR ".svn/pristine/af" -#define FILE_DIR ".svn/pristine/b0" -#define FILE_DIR ".svn/pristine/b1" -#define FILE_DIR ".svn/pristine/b2" -#define FILE_DIR ".svn/pristine/b3" -#define FILE_DIR ".svn/pristine/b4" -#define FILE_DIR ".svn/pristine/b5" -#define FILE_DIR ".svn/pristine/b6" -#define FILE_DIR ".svn/pristine/b7" -#define FILE_DIR ".svn/pristine/b8" -#define FILE_DIR ".svn/pristine/b9" -#define FILE_DIR ".svn/pristine/ba" -#define FILE_DIR ".svn/pristine/bb" -#define FILE_DIR ".svn/pristine/bc" -#define FILE_DIR ".svn/pristine/bd" -#define FILE_DIR ".svn/pristine/be" -#define FILE_DIR ".svn/pristine/bf" -#define FILE_DIR ".svn/pristine/c0" -#define FILE_DIR ".svn/pristine/c1" -#define FILE_DIR ".svn/pristine/c2" -#define FILE_DIR ".svn/pristine/c3" -#define FILE_DIR ".svn/pristine/c4" -#define FILE_DIR ".svn/pristine/c5" -#define FILE_DIR ".svn/pristine/c6" -#define FILE_DIR ".svn/pristine/c7" -#define FILE_DIR ".svn/pristine/c8" -#define FILE_DIR ".svn/pristine/c9" -#define FILE_DIR ".svn/pristine/ca" -#define FILE_DIR ".svn/pristine/cb" -#define FILE_DIR ".svn/pristine/cc" -#define FILE_DIR ".svn/pristine/cd" -#define FILE_DIR ".svn/pristine/ce" -#define FILE_DIR ".svn/pristine/cf" -#define FILE_DIR ".svn/pristine/d0" -#define FILE_DIR ".svn/pristine/d1" -#define FILE_DIR ".svn/pristine/d2" -#define FILE_DIR ".svn/pristine/d3" -#define FILE_DIR ".svn/pristine/d4" -#define FILE_DIR ".svn/pristine/d5" -#define FILE_DIR ".svn/pristine/d6" -#define FILE_DIR ".svn/pristine/d7" -#define FILE_DIR ".svn/pristine/d8" -#define FILE_DIR ".svn/pristine/d9" -#define FILE_DIR ".svn/pristine/da" -#define FILE_DIR ".svn/pristine/db" -#define FILE_DIR ".svn/pristine/dc" -#define FILE_DIR ".svn/pristine/dd" -#define FILE_DIR ".svn/pristine/de" -#define FILE_DIR ".svn/pristine/df" -#define FILE_DIR ".svn/pristine/e0" -#define FILE_DIR ".svn/pristine/e1" -#define FILE_DIR ".svn/pristine/e2" -#define FILE_DIR ".svn/pristine/e3" -#define FILE_DIR ".svn/pristine/e4" -#define FILE_DIR ".svn/pristine/e5" -#define FILE_DIR ".svn/pristine/e6" -#define FILE_DIR ".svn/pristine/e7" -#define FILE_DIR ".svn/pristine/e8" -#define FILE_DIR ".svn/pristine/e9" -#define FILE_DIR ".svn/pristine/ea" -#define FILE_DIR ".svn/pristine/eb" -#define FILE_DIR ".svn/pristine/ec" -#define FILE_DIR ".svn/pristine/ed" -#define FILE_DIR ".svn/pristine/ee" -#define FILE_DIR ".svn/pristine/ef" -#define FILE_DIR ".svn/pristine/f0" -#define FILE_DIR ".svn/pristine/f1" -#define FILE_DIR ".svn/pristine/f2" -#define FILE_DIR ".svn/pristine/f3" -#define FILE_DIR ".svn/pristine/f4" -#define FILE_DIR ".svn/pristine/f5" -#define FILE_DIR ".svn/pristine/f6" -#define FILE_DIR ".svn/pristine/f7" -#define FILE_DIR ".svn/pristine/f8" -#define FILE_DIR ".svn/pristine/f9" -#define FILE_DIR ".svn/pristine/fa" -#define FILE_DIR ".svn/pristine/fb" -#define FILE_DIR ".svn/pristine/fc" -#define FILE_DIR ".svn/pristine/fd" -#define FILE_DIR ".svn/pristine/fe" -#define FILE_DIR ".svn/pristine/ff" -#define FILE_DIR "bot" -#define FILE_DIR "bot/Marakov" #define FILE_DIR "code" #define FILE_DIR "code/ATMOSPHERICS" #define FILE_DIR "code/ATMOSPHERICS/components" @@ -426,22 +166,6 @@ #define FILE_DIR "code/WorkInProgress/mapload" #define FILE_DIR "code/WorkInProgress/organs" #define FILE_DIR "code/WorkInProgress/virus2" -#define FILE_DIR "config" -#define FILE_DIR "config/names" -#define FILE_DIR "data" -#define FILE_DIR "data/logs" -#define FILE_DIR "data/logs/2012" -#define FILE_DIR "data/logs/2012/06-June" -#define FILE_DIR "data/logs/2012/07-July" -#define FILE_DIR "data/player_saves" -#define FILE_DIR "data/player_saves/a" -#define FILE_DIR "data/player_saves/a/ammy55" -#define FILE_DIR "data/player_saves/c" -#define FILE_DIR "data/player_saves/c/cheridan" -#define FILE_DIR "data/player_saves/r" -#define FILE_DIR "data/player_saves/r/rockdtben" -#define FILE_DIR "data/player_saves/s" -#define FILE_DIR "data/player_saves/s/sieve" #define FILE_DIR "html" #define FILE_DIR "icons" #define FILE_DIR "icons/48x48" @@ -457,7 +181,6 @@ #define FILE_DIR "icons/obj/machines" #define FILE_DIR "icons/obj/pipes" #define FILE_DIR "icons/pda_icons" -#define FILE_DIR "icons/PSD files" #define FILE_DIR "icons/spideros_icons" #define FILE_DIR "icons/Testing" #define FILE_DIR "icons/turf" @@ -467,9 +190,7 @@ #define FILE_DIR "interface" #define FILE_DIR "maps" #define FILE_DIR "maps/RandomZLevels" -#define FILE_DIR "music" #define FILE_DIR "Redirector" -#define FILE_DIR "Runtime Condenser" #define FILE_DIR "sound" #define FILE_DIR "sound/AI" #define FILE_DIR "sound/ambience" @@ -482,16 +203,6 @@ #define FILE_DIR "sound/piano" #define FILE_DIR "sound/voice" #define FILE_DIR "sound/weapons" -#define FILE_DIR "SQL" -#define FILE_DIR "tools" -#define FILE_DIR "tools/UnstandardnessTestForDM" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug" -#define FILE_DIR "tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties" // END_FILE_DIR // BEGIN_PREFERENCES @@ -604,13 +315,10 @@ #include "code\defines\mob\living\silicon\robot.dm" #include "code\defines\mob\living\silicon\silicon.dm" #include "code\defines\obj\closet.dm" -#include "code\defines\obj\clothing.dm" #include "code\defines\obj\costume.dm" #include "code\defines\obj\decal.dm" #include "code\defines\obj\hydro.dm" #include "code\defines\obj\machinery.dm" -#include "code\defines\obj\radio.dm" -#include "code\defines\obj\spawner.dm" #include "code\defines\obj\storage.dm" #include "code\defines\obj\supplypacks.dm" #include "code\defines\obj\toy.dm"