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"