diff --git a/code/datums/outfits/outfit_admin.dm b/code/datums/outfits/outfit_admin.dm
index 6d88b312dc1..5fb065a41a1 100644
--- a/code/datums/outfits/outfit_admin.dm
+++ b/code/datums/outfits/outfit_admin.dm
@@ -1212,7 +1212,7 @@
suit = /obj/item/clothing/suit/space/hardsuit/singuloth
back = /obj/item/storage/backpack/satchel
l_hand = /obj/item/twohanded/knighthammer
- belt = /obj/item/claymore/ceremonial
+ belt = /obj/item/melee/claymore/ceremonial
gloves = /obj/item/clothing/gloves/combat/swat
shoes = /obj/item/clothing/shoes/magboots
mask = /obj/item/clothing/mask/breath
diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm
index 97b3b8b0aba..a58e3ab6cdb 100644
--- a/code/game/gamemodes/wizard/artefact.dm
+++ b/code/game/gamemodes/wizard/artefact.dm
@@ -596,7 +596,7 @@ GLOBAL_LIST_EMPTY(multiverse)
H.equip_to_slot_or_del(new /obj/item/clothing/under/roman(H), ITEM_SLOT_CLOTH_INNER)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(H), ITEM_SLOT_FEET)
H.equip_to_slot_or_del(new /obj/item/shield/riot/roman(H), ITEM_SLOT_HAND_LEFT)
- H.equip_to_slot_or_del(new /obj/item/claymore(H), ITEM_SLOT_HAND_RIGHT)
+ H.equip_to_slot_or_del(new /obj/item/melee/claymore(H), ITEM_SLOT_HAND_RIGHT)
H.equip_to_slot_or_del(new /obj/item/twohanded/spear(H), ITEM_SLOT_BACK)
if("pirate")
H.equip_to_slot_or_del(new /obj/item/clothing/under/pirate(H), ITEM_SLOT_CLOTH_INNER)
@@ -604,7 +604,7 @@ GLOBAL_LIST_EMPTY(multiverse)
H.equip_to_slot_or_del(new /obj/item/clothing/head/bandana(H), ITEM_SLOT_HEAD)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H), ITEM_SLOT_FEET)
H.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(H), ITEM_SLOT_EYES)
- H.equip_to_slot_or_del(new /obj/item/claymore(H), ITEM_SLOT_HAND_RIGHT)
+ H.equip_to_slot_or_del(new /obj/item/melee/claymore(H), ITEM_SLOT_HAND_RIGHT)
H.equip_to_slot_or_del(new /obj/item/twohanded/spear(H), ITEM_SLOT_BACK)
H.equip_to_slot_or_del(new /obj/item/shield/riot/roman(H), ITEM_SLOT_HAND_LEFT)
if("yand")//mine is an evil laugh
@@ -612,7 +612,7 @@ GLOBAL_LIST_EMPTY(multiverse)
H.equip_to_slot_or_del(new /obj/item/clothing/head/kitty(H), ITEM_SLOT_HEAD)
H.equip_to_slot_or_del(new /obj/item/clothing/under/schoolgirl(H), ITEM_SLOT_CLOTH_INNER)
H.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(H), ITEM_SLOT_CLOTH_OUTER)
- H.equip_to_slot_or_del(new /obj/item/katana(H), ITEM_SLOT_HAND_RIGHT)
+ H.equip_to_slot_or_del(new /obj/item/melee/katana(H), ITEM_SLOT_HAND_RIGHT)
H.equip_to_slot_or_del(new /obj/item/shield/riot/roman(H), ITEM_SLOT_HAND_LEFT)
H.equip_to_slot_or_del(new /obj/item/twohanded/spear(H), ITEM_SLOT_BACK)
if("clown")
@@ -621,7 +621,7 @@ GLOBAL_LIST_EMPTY(multiverse)
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), ITEM_SLOT_MASK)
H.equip_to_slot_or_del(new /obj/item/clothing/head/stalhelm(H), ITEM_SLOT_HEAD)
H.equip_to_slot_or_del(new /obj/item/bikehorn(H), ITEM_SLOT_POCKET_LEFT)
- H.equip_to_slot_or_del(new /obj/item/claymore(H), ITEM_SLOT_HAND_RIGHT)
+ H.equip_to_slot_or_del(new /obj/item/melee/claymore(H), ITEM_SLOT_HAND_RIGHT)
H.equip_to_slot_or_del(new /obj/item/shield/riot/roman(H), ITEM_SLOT_HAND_LEFT)
H.equip_to_slot_or_del(new /obj/item/twohanded/spear(H), ITEM_SLOT_BACK)
@@ -647,7 +647,7 @@ GLOBAL_LIST_EMPTY(multiverse)
H.equip_to_slot_or_del(new /obj/item/clothing/head/kitty(H), ITEM_SLOT_HEAD)
H.equip_to_slot_or_del(new /obj/item/clothing/under/schoolgirl(H), ITEM_SLOT_CLOTH_INNER)
H.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(H), ITEM_SLOT_CLOTH_OUTER)
- H.equip_to_slot_or_del(new /obj/item/katana(H), ITEM_SLOT_HAND_RIGHT)
+ H.equip_to_slot_or_del(new /obj/item/melee/katana(H), ITEM_SLOT_HAND_RIGHT)
H.equip_to_slot_or_del(new /obj/item/shield/riot/roman(H), ITEM_SLOT_HAND_LEFT)
H.equip_to_slot_or_del(new /obj/item/twohanded/spear(H), ITEM_SLOT_BACK)
if(!H.real_name || H.real_name == "unknown")
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index d88fc674794..818515dd69b 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -108,7 +108,7 @@ GLOBAL_DATUM_INIT(fire_overlay, /mutable_appearance, mutable_appearance('icons/g
var/list/allowed = null //suit storage stuff.
var/obj/item/uplink/hidden/hidden_uplink = null // All items can have an uplink hidden inside, just remember to add the triggers.
- var/needs_permit = 0 //Used by security bots to determine if this item is safe for public use.
+ var/needs_permit = FALSE //Used by security bots to determine if this item is safe for public use.
var/strip_delay = DEFAULT_ITEM_STRIP_DELAY
var/put_on_delay = DEFAULT_ITEM_PUTON_DELAY
diff --git a/code/game/objects/items/devices/airlock_painter.dm b/code/game/objects/items/devices/airlock_painter.dm
index 027b05d6a35..45e3597783d 100644
--- a/code/game/objects/items/devices/airlock_painter.dm
+++ b/code/game/objects/items/devices/airlock_painter.dm
@@ -5,6 +5,8 @@
desc = "An advanced autopainter preprogrammed with several paintjobs for airlocks. Use it on a completed airlock to change its paintjob."
icon = 'icons/obj/device.dmi'
icon_state = "airlock_painter"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "airlock_painter"
flags = CONDUCT
item_flags = NOBLUDGEON
diff --git a/code/game/objects/items/devices/floor_painter.dm b/code/game/objects/items/devices/floor_painter.dm
index a1d52787ece..29f839d6eae 100644
--- a/code/game/objects/items/devices/floor_painter.dm
+++ b/code/game/objects/items/devices/floor_painter.dm
@@ -4,6 +4,8 @@
name = "floor painter"
icon = 'icons/obj/device.dmi'
icon_state = "floor_painter"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "floor_painter"
usesound = 'sound/effects/spray2.ogg'
diff --git a/code/game/objects/items/devices/memorizer.dm b/code/game/objects/items/devices/memorizer.dm
index d1a73f599f3..ee8716f4506 100644
--- a/code/game/objects/items/devices/memorizer.dm
+++ b/code/game/objects/items/devices/memorizer.dm
@@ -3,7 +3,6 @@
desc = "If you see this, you're not likely to remember it any time soon."
icon = 'icons/obj/device.dmi'
icon_state = "memorizer"
- item_state = "nullrod"
throwforce = 0
w_class = WEIGHT_CLASS_TINY
throw_speed = 3
diff --git a/code/game/objects/items/devices/pipe_painter.dm b/code/game/objects/items/devices/pipe_painter.dm
index 6df702d578c..ce63491f599 100644
--- a/code/game/objects/items/devices/pipe_painter.dm
+++ b/code/game/objects/items/devices/pipe_painter.dm
@@ -2,6 +2,8 @@
name = "pipe painter"
icon = 'icons/obj/device.dmi'
icon_state = "pipe_painter"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "pipe_painter"
usesound = 'sound/effects/spray2.ogg'
var/list/modes
diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm
index 55be7417b5c..1f0de6790d0 100644
--- a/code/game/objects/items/stacks/sheets/glass.dm
+++ b/code/game/objects/items/stacks/sheets/glass.dm
@@ -30,6 +30,7 @@ GLOBAL_LIST_INIT(glass_recipes, list(
desc = "HOLY SHEET! That is a lot of glass."
singular_name = "glass sheet"
icon_state = "sheet-glass"
+ item_state = "sheet-glass"
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 100)
resistance_flags = ACID_PROOF
diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm
index 21f1be10e14..27876c98834 100644
--- a/code/game/objects/items/stacks/sheets/mineral.dm
+++ b/code/game/objects/items/stacks/sheets/mineral.dm
@@ -475,7 +475,7 @@ GLOBAL_LIST_INIT(plastitanium_recipes, list(
name = "mythril"
desc = "A rare mineral used in construction of chitin armor."
icon_state = "sheet-mythril"
- item_state = "sheet-mythril"
+ //item_state = "sheet-mythril"
singular_name = "mythril sheet"
origin_tech = "materials=7"
merge_type = /obj/item/stack/sheet/mineral/mythril
@@ -487,7 +487,7 @@ GLOBAL_LIST_INIT(plastitanium_recipes, list(
/obj/item/stack/sheet/mineral/snow
name = "snow"
icon_state = "sheet-snow"
- item_state = "sheet-snow"
+ //item_state = "sheet-snow"
singular_name = "snow block"
force = 1
throwforce = 2
diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm
index d1eb98f258b..4fada38f38c 100644
--- a/code/game/objects/items/stacks/sheets/sheet_types.dm
+++ b/code/game/objects/items/stacks/sheets/sheet_types.dm
@@ -335,7 +335,7 @@ GLOBAL_LIST_INIT(durathread_recipes, list(
desc = "A fabric sown from incredibly durable threads, known for its usefulness in armor production."
singular_name = "durathread roll"
icon_state = "sheet-durathread"
- item_state = "sheet-cloth"
+ //item_state = "sheet-cloth"
resistance_flags = FLAMMABLE
force = 0
throwforce = 0
@@ -773,7 +773,7 @@ GLOBAL_LIST_INIT(bamboo_recipes, list(
desc = "Finely cut bamboo sticks."
singular_name = "cut bamboo"
icon_state = "sheet-bamboo"
- item_state = "sheet-bamboo"
+ //item_state = "sheet-bamboo"
icon = 'icons/obj/items.dmi'
sheettype = "bamboo"
force = 10
@@ -799,7 +799,7 @@ GLOBAL_LIST_INIT(cheese_recipes, list(
name = "reinforced cheese"
desc = "A stack of cheese that seems sturdier than regular cheese."
icon_state = "sheet-cheese"
- item_state = "sheet-cheese"
+ //item_state = "sheet-cheese"
icon = 'icons/obj/items.dmi'
singular_name = "reinforced cheese block"
sheettype = "cheese"
@@ -831,7 +831,7 @@ GLOBAL_LIST_INIT(gingerbread_recipes, list(
name = "gingerbread"
desc = "A brick of gingerbread that seems sturdier than regular one."
icon_state = "sheet-gingerbread"
- item_state = "sheet-gingerbread"
+ //item_state = "sheet-gingerbread"
singular_name = "gingerbread block"
icon = 'icons/obj/items.dmi'
sheettype = "gingerbread"
diff --git a/code/game/objects/items/stacks/sheets/sheets.dm b/code/game/objects/items/stacks/sheets/sheets.dm
index a61c26097ae..5df3168aea7 100644
--- a/code/game/objects/items/stacks/sheets/sheets.dm
+++ b/code/game/objects/items/stacks/sheets/sheets.dm
@@ -17,3 +17,6 @@
usesound = 'sound/items/deconstruct.ogg'
toolspeed = 1
var/wall_allowed = TRUE //determines if sheet can be used in wall construction or not.
+
+ lefthand_file = 'icons/mob/inhands/sheet_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/sheet_righthand.dmi'
diff --git a/code/game/objects/items/tools/crowbar.dm b/code/game/objects/items/tools/crowbar.dm
index 69fc06e726b..d5e529cb969 100644
--- a/code/game/objects/items/tools/crowbar.dm
+++ b/code/game/objects/items/tools/crowbar.dm
@@ -3,6 +3,8 @@
desc = "A small crowbar. This handy tool is useful for lots of things, such as prying floor tiles or opening unpowered doors."
icon = 'icons/obj/tools.dmi'
icon_state = "crowbar"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "crowbar"
belt_icon = "pocket_crowbar"
usesound = 'sound/items/crowbar.ogg'
@@ -48,7 +50,7 @@
icon = 'icons/obj/abductor.dmi'
usesound = 'sound/weapons/sonic_jackhammer.ogg'
icon_state = "crowbar"
- item_state = "alien_crowbar"
+ item_state = "crowbar_alien"
belt_icon = "alien_crowbar"
toolspeed = 0.1
origin_tech = "combat=4;engineering=4;abductor=3"
diff --git a/code/game/objects/items/tools/holotool.dm b/code/game/objects/items/tools/holotool.dm
index 6e3a3a52f1b..c16d1d7509f 100644
--- a/code/game/objects/items/tools/holotool.dm
+++ b/code/game/objects/items/tools/holotool.dm
@@ -9,6 +9,8 @@ Holotool. All instruments in one object
desc = "A highly experimental holographic tool projector."
icon = 'icons/obj/holotool.dmi'
icon_state = "holotool"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
slot_flags = ITEM_SLOT_BELT
usesound = 'sound/items/pshoom.ogg'
actions_types = list(/datum/action/item_action/change_ht_color)
diff --git a/code/game/objects/items/tools/multitool.dm b/code/game/objects/items/tools/multitool.dm
index db562b1d1b9..afe2bc0c77f 100644
--- a/code/game/objects/items/tools/multitool.dm
+++ b/code/game/objects/items/tools/multitool.dm
@@ -11,6 +11,8 @@
desc = "Used for pulsing wires to test which to cut. Not recommended by doctors."
icon = 'icons/obj/device.dmi'
icon_state = "multitool"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
belt_icon = "multitool"
flags = CONDUCT
force = 5.0
diff --git a/code/game/objects/items/tools/screwdriver.dm b/code/game/objects/items/tools/screwdriver.dm
index 2a2254d961c..1079fed9a1e 100644
--- a/code/game/objects/items/tools/screwdriver.dm
+++ b/code/game/objects/items/tools/screwdriver.dm
@@ -4,6 +4,8 @@
desc = "You can be totally screwy with this."
icon = 'icons/obj/tools.dmi'
icon_state = "screwdriver_map"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
belt_icon = "screwdriver"
flags = CONDUCT
slot_flags = ITEM_SLOT_BELT
@@ -40,17 +42,15 @@
/obj/item/screwdriver/Initialize(mapload)
. = ..()
- AddElement(/datum/element/falling_hazard, damage = force, hardhat_safety = TRUE, crushes = FALSE, impact_sound = hitsound)
-
-/obj/item/screwdriver/New(loc, var/param_color = null)
- ..()
if(random_color)
if(!param_color)
param_color = pick("red","blue","pink","brown","green","cyan","yellow")
icon_state = "screwdriver_[param_color]"
- if (prob(75))
- src.pixel_y = rand(0, 16)
+ if(prob(75))
+ pixel_y = rand(0, 16)
+
+ AddElement(/datum/element/falling_hazard, damage = force, hardhat_safety = TRUE, crushes = FALSE, impact_sound = hitsound)
/obj/item/screwdriver/attack(mob/living/target, mob/living/user, params, def_zone, skip_attack_anim = FALSE)
diff --git a/code/game/objects/items/tools/welder.dm b/code/game/objects/items/tools/welder.dm
index 543dd83d6cd..7353c762a94 100644
--- a/code/game/objects/items/tools/welder.dm
+++ b/code/game/objects/items/tools/welder.dm
@@ -231,7 +231,7 @@
desc = "An alien welding tool. Whatever fuel it uses, it never runs out."
icon = 'icons/obj/abductor.dmi'
icon_state = "welder"
- item_state = "alien_welder"
+ item_state = "alienwelder"
belt_icon = "alien_welding_tool"
toolspeed = 0.1
light_intensity = 0
diff --git a/code/game/objects/items/tools/wirecutters.dm b/code/game/objects/items/tools/wirecutters.dm
index e266b741393..be78f48646c 100644
--- a/code/game/objects/items/tools/wirecutters.dm
+++ b/code/game/objects/items/tools/wirecutters.dm
@@ -3,6 +3,8 @@
desc = "This cuts wires."
icon = 'icons/obj/tools.dmi'
icon_state = "cutters"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
belt_icon = "wirecutters"
flags = CONDUCT
slot_flags = ITEM_SLOT_BELT
@@ -27,15 +29,12 @@
/obj/item/wirecutters/Initialize(mapload)
. = ..()
- AddElement(/datum/element/falling_hazard, damage = force, hardhat_safety = TRUE, crushes = FALSE, impact_sound = hitsound)
-
-/obj/item/wirecutters/New(loc, param_color = null)
- ..()
if(random_color)
if(!param_color)
param_color = pick("yellow", "red")
icon_state = "cutters_[param_color]"
+ AddElement(/datum/element/falling_hazard, damage = force, hardhat_safety = TRUE, crushes = FALSE, impact_sound = hitsound)
/obj/item/wirecutters/attack(mob/living/carbon/target, mob/living/user, params, def_zone, skip_attack_anim = FALSE)
if(istype(target) && istype(target.handcuffed, /obj/item/restraints/handcuffs/cable))
@@ -69,7 +68,7 @@
desc = "Extremely sharp wirecutters, made out of a silvery-green metal."
icon = 'icons/obj/abductor.dmi'
icon_state = "cutters"
- item_state = "alien_cutters"
+ item_state = "cutters_alien"
belt_icon = "alien_wirecutters"
toolspeed = 0.1
origin_tech = "materials=5;engineering=4;abductor=3"
diff --git a/code/game/objects/items/tools/wrench.dm b/code/game/objects/items/tools/wrench.dm
index 838ca137f43..6ed8a0f9f9f 100644
--- a/code/game/objects/items/tools/wrench.dm
+++ b/code/game/objects/items/tools/wrench.dm
@@ -4,6 +4,8 @@
desc = "A wrench with common uses. Can be found in your hand."
icon = 'icons/obj/tools.dmi'
icon_state = "wrench"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
belt_icon = "wrench"
flags = CONDUCT
slot_flags = ITEM_SLOT_BELT
@@ -46,7 +48,7 @@
desc = "A polarized wrench. It causes anything placed between the jaws to turn."
icon = 'icons/obj/abductor.dmi'
icon_state = "wrench"
- item_state = "alien_wrench"
+ item_state = "wrench_alien"
belt_icon = "alien_wrench"
usesound = 'sound/effects/empulse.ogg'
toolspeed = 0.1
diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm
index f14dcedc6e5..9d77488af2e 100644
--- a/code/game/objects/items/weapons/RCD.dm
+++ b/code/game/objects/items/weapons/RCD.dm
@@ -3,6 +3,8 @@
desc = "A device used to rapidly build and deconstruct walls, floors and airlocks."
icon = 'icons/obj/tools.dmi'
icon_state = "rcd"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
flags = CONDUCT
item_flags = NOBLUDGEON|NO_MAT_REDEMPTION
force = 0
@@ -461,6 +463,8 @@
desc = "Highly compressed matter for the RCD."
icon = 'icons/obj/weapons/ammo.dmi'
icon_state = "rcd"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "rcdammo"
origin_tech = "materials=3"
materials = list(MAT_METAL=16000, MAT_GLASS=8000)
diff --git a/code/game/objects/items/weapons/alien_specific.dm b/code/game/objects/items/weapons/alien_specific.dm
index 1b0105abd91..b51e7d91005 100644
--- a/code/game/objects/items/weapons/alien_specific.dm
+++ b/code/game/objects/items/weapons/alien_specific.dm
@@ -1,6 +1,6 @@
//This file contains xenoborg specic weapons.
-/obj/item/melee/energy/alien/claws
+/obj/item/melee/energy/alien_claws
name = "energy claws"
desc = "A set of alien energy claws."
icon = 'icons/mob/alien.dmi'
diff --git a/code/game/objects/items/weapons/batons.dm b/code/game/objects/items/weapons/batons.dm
index 3c63c05d746..91549efd1e3 100644
--- a/code/game/objects/items/weapons/batons.dm
+++ b/code/game/objects/items/weapons/batons.dm
@@ -275,7 +275,7 @@
/// The sound effecte played when our baton is extended.
var/extend_sound = 'sound/weapons/batonextend.ogg'
/// The inhand iconstate used when our baton is extended.
- var/extend_item_state = "nullrod"
+ var/extend_item_state = "telebaton"
/// The force on extension.
var/extend_force = 10
diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm
index c4e80588b7f..aee787d10a5 100644
--- a/code/game/objects/items/weapons/cards_ids.dm
+++ b/code/game/objects/items/weapons/cards_ids.dm
@@ -100,6 +100,8 @@
desc = "A card used to provide ID and determine access across the station."
icon_state = "id"
item_state = "card-id"
+ lefthand_file = 'icons/mob/inhands/id_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/id_righthand.dmi'
/// For redeeming at mining equipment lockers
var/mining_points = 0
/// Total mining points for the Shift.
@@ -351,13 +353,13 @@
name = "identification card"
desc = "A silver card which shows honour and dedication."
icon_state = "silver"
- item_state = "silver_id"
+ item_state = "silver-id"
/obj/item/card/id/gold
name = "identification card"
desc = "A golden card which shows power and might."
icon_state = "gold"
- item_state = "gold_id"
+ item_state = "gold-id"
/obj/item/card/id/syndicate
name = "agent card"
@@ -827,7 +829,7 @@
name = "captain's spare ID"
desc = "The spare ID of the captain."
icon_state = "gold"
- item_state = "gold_id"
+ item_state = "gold-id"
registered_name = "Captain"
assignment = JOB_TITLE_CAPTAIN
@@ -839,7 +841,7 @@
/obj/item/card/id/admin
name = "admin ID card"
icon_state = "admin"
- item_state = "gold_id"
+ item_state = "gold-id"
registered_name = "Admin"
assignment = "Testing Shit"
untrackable = 1
@@ -1188,7 +1190,7 @@
desc = "Make your ID look like the Captain's or a self-centered HOP's. Applies to any ID."
decal_desc = "A golden card which shows power and might."
decal_icon_state = "gold"
- decal_item_state = "gold_id"
+ decal_item_state = "gold-id"
/obj/item/id_decal/silver
name = "silver ID card decal"
@@ -1196,7 +1198,7 @@
desc = "Make your ID look like HOP's because they wouldn't change it officially. Applies to any ID."
decal_desc = "A silver card which shows honour and dedication."
decal_icon_state = "silver"
- decal_item_state = "silver_id"
+ decal_item_state = "silver-id"
/obj/item/id_decal/prisoner
name = "prisoner ID card decal"
diff --git a/code/game/objects/items/weapons/highlander_swords.dm b/code/game/objects/items/weapons/highlander_swords.dm
index 190e2770628..44dfbf68a26 100644
--- a/code/game/objects/items/weapons/highlander_swords.dm
+++ b/code/game/objects/items/weapons/highlander_swords.dm
@@ -13,19 +13,19 @@
//Highlander Claymore
// Grants the wielder the Highlander Style Martial Art
-/obj/item/claymore/highlander
+/obj/item/melee/claymore/highlander
name = "Highlander Claymore"
desc = "Imbues the wielder with legendary martial prowress and a nigh-unquenchable thirst for glorious battle!"
var/datum/martial_art/highlander/style = new
-/obj/item/claymore/highlander/Destroy()
+/obj/item/melee/claymore/highlander/Destroy()
if(ishuman(loc)) //just in case it gets destroyed while in someone's possession, such as due to acid or something?
var/mob/living/carbon/human/H = loc
style.remove(H)
QDEL_NULL(style)
return ..()
-/obj/item/claymore/highlander/equipped(mob/user, slot, initial)
+/obj/item/melee/claymore/highlander/equipped(mob/user, slot, initial)
. = ..()
if(!ishuman(user) || !user.mind)
@@ -37,19 +37,19 @@
to_chat(H, "THERE CAN ONLY BE ONE!")
else if(H.mind.martial_art && H.mind.martial_art == style)
style.remove(H)
- var/obj/item/claymore/highlander/sword = H.is_type_in_hands(/obj/item/claymore/highlander)
+ var/obj/item/melee/claymore/highlander/sword = H.is_type_in_hands(/obj/item/melee/claymore/highlander)
if(sword)
//if we have a highlander sword in the other hand, relearn the style from that sword.
sword.style.teach(H, 1)
-/obj/item/claymore/highlander/dropped(mob/user, slot, silent = FALSE)
+/obj/item/melee/claymore/highlander/dropped(mob/user, slot, silent = FALSE)
. = ..()
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
style.remove(H)
- var/obj/item/claymore/highlander/sword = H.is_type_in_hands(/obj/item/claymore/highlander)
+ var/obj/item/melee/claymore/highlander/sword = H.is_type_in_hands(/obj/item/melee/claymore/highlander)
if(sword)
//if we have a highlander sword in the other hand, relearn the style from that sword.
sword.style.teach(H, 1)
diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm
index c43887de6fd..dedf1f45a37 100644
--- a/code/game/objects/items/weapons/holy_weapons.dm
+++ b/code/game/objects/items/weapons/holy_weapons.dm
@@ -2,6 +2,8 @@
name = "null rod"
desc = "A rod of pure obsidian, its very presence disrupts and dampens the powers of dark magic."
icon_state = "nullrod"
+ lefthand_file = 'icons/mob/inhands/chaplain_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/chaplain_righthand.dmi'
item_state = "nullrod"
force = 15
throw_speed = 3
@@ -280,7 +282,7 @@
/obj/item/nullrod/scythe/vibro
name = "high frequency blade"
icon_state = "hfrequency0"
- item_state = "hfrequency1"
+ item_state = "hfrequency"
desc = "Bad references are the DNA of the soul."
attack_verb = list("chopped", "sliced", "cut", "zandatsu'd")
@@ -401,7 +403,6 @@
name = "binary fedora"
desc = "The brim of the hat is as sharp as the division between 0 and 1. It makes a mighty throwing weapon."
icon_state = "fedora"
- item_state = "fedora"
slot_flags = ITEM_SLOT_HEAD
icon = 'icons/obj/clothing/hats.dmi'
force = 0
@@ -429,7 +430,6 @@
desc = "An adorable stuffed toy that resembles the god of all carp. The teeth look pretty sharp. Activate it to recieve the blessing of Carp-Sie."
icon = 'icons/obj/toy.dmi'
icon_state = "carpplushie"
- item_state = "carp_plushie"
force = 13
attack_verb = list("bitten", "eaten", "fin slapped")
hitsound = 'sound/weapons/bite.ogg'
@@ -505,6 +505,8 @@
/obj/item/nullrod/pitchfork
name = "unholy pitchfork"
icon_state = "pitchfork0"
+ lefthand_file = 'icons/mob/inhands/twohanded_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/twohanded_righthand.dmi'
item_state = "pitchfork0"
w_class = WEIGHT_CLASS_NORMAL
desc = "Holding this makes you look absolutely devilish."
@@ -549,7 +551,7 @@
)
praying = TRUE
-
+
if(!do_after(user, 15 SECONDS, target))
to_chat(user, span_notice("Your prayer to [SSticker.Bible_deity_name] was interrupted."))
praying = FALSE
@@ -564,7 +566,7 @@
SSticker.mode.remove_clocker(target.mind)
praying = FALSE
return .|ATTACK_CHAIN_SUCCESS
-
+
var/datum/antagonist/vampire/vamp = target.mind?.has_antag_datum(/datum/antagonist/vampire)
if(vamp && !vamp.get_ability(/datum/vampire_passive/full)) // Getting a full prayer off on a vampire will interrupt their powers for a large duration.
switch(vamp.nullification)
diff --git a/code/game/objects/items/weapons/lighters.dm b/code/game/objects/items/weapons/lighters.dm
index d0cfc2b4d28..af595494845 100644
--- a/code/game/objects/items/weapons/lighters.dm
+++ b/code/game/objects/items/weapons/lighters.dm
@@ -134,6 +134,8 @@
item_state = "zippo"
icon_on = "zippoon"
icon_off = "zippo"
+ lefthand_file = 'icons/mob/inhands/zippo_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/zippo_righthand.dmi'
/obj/item/lighter/can_enter_storage(obj/item/storage/S, mob/user)
diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm
index 7738eeb1277..0270a3c5cc1 100644
--- a/code/game/objects/items/weapons/melee/misc.dm
+++ b/code/game/objects/items/weapons/melee/misc.dm
@@ -1,5 +1,7 @@
/obj/item/melee
- needs_permit = 1
+ needs_permit = TRUE
+ lefthand_file = 'icons/mob/inhands/melee_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/melee_righthand.dmi'
/obj/item/melee/proc/check_martial_counter(mob/living/carbon/human/target, mob/living/carbon/human/user)
var/message = "[target.name] blocks [src] and twists [user]'s arm behind [user.p_their()] back!"
@@ -183,7 +185,7 @@
name = "ice pick"
desc = "Used for chopping ice. Also excellent for mafia esque murders."
icon_state = "icepick"
- item_state = "icepick"
+ //item_state = "icepick"
force = 15
throwforce = 10
w_class = WEIGHT_CLASS_SMALL
diff --git a/code/game/objects/items/weapons/rpd.dm b/code/game/objects/items/weapons/rpd.dm
index 46879b9cea2..506d1cc5b43 100644
--- a/code/game/objects/items/weapons/rpd.dm
+++ b/code/game/objects/items/weapons/rpd.dm
@@ -14,6 +14,8 @@
desc = "This device can rapidly dispense atmospherics and disposals piping, manipulate loose piping, and recycle any detached pipes it is applied to."
icon = 'icons/obj/tools.dmi'
icon_state = "rpd"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
flags = CONDUCT
force = 10
throwforce = 10
diff --git a/code/game/objects/items/weapons/storage/bible.dm b/code/game/objects/items/weapons/storage/bible.dm
index 4c58e024474..04bc1014719 100644
--- a/code/game/objects/items/weapons/storage/bible.dm
+++ b/code/game/objects/items/weapons/storage/bible.dm
@@ -2,6 +2,8 @@
name = "bible"
desc = "Apply to head repeatedly."
icon_state ="bible"
+ lefthand_file = 'icons/mob/inhands/chaplain_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/chaplain_righthand.dmi'
throw_speed = 1
throw_range = 5
w_class = WEIGHT_CLASS_NORMAL
@@ -20,11 +22,11 @@
"Bible" = list("state" = "bible", "inhand" = "bible"),
"Koran" = list("state" = "koran", "inhand" = "koran"),
"Scrapbook" = list("state" = "scrapbook", "inhand" = "scrapbook"),
- "Creeper" = list("state" = "creeper", "inhand" = "syringe_kit"),
- "White Bible" = list("state" = "white", "inhand" = "syringe_kit"),
- "Holy Light" = list("state" = "holylight", "inhand" = "syringe_kit"),
- "PlainRed" = list("state" = "athiest", "inhand" = "syringe_kit"),
- "Tome" = list("state" = "tome", "inhand" = "syringe_kit"),
+ "Creeper" = list("state" = "creeper", "inhand" = "somebiblebook"),
+ "White Bible" = list("state" = "white", "inhand" = "somebiblebook"),
+ "Holy Light" = list("state" = "holylight", "inhand" = "somebiblebook"),
+ "PlainRed" = list("state" = "athiest", "inhand" = "somebiblebook"),
+ "Tome" = list("state" = "tome", "inhand" = "somebiblebook"),
"The King in Yellow" = list("state" = "kingyellow", "inhand" = "kingyellow"),
"Ithaqua" = list("state" = "ithaqua", "inhand" = "ithaqua"),
"Scientology" = list("state" = "scientology", "inhand" = "scientology"),
diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm
index 4de56355822..b14998668c1 100644
--- a/code/game/objects/items/weapons/storage/toolbox.dm
+++ b/code/game/objects/items/weapons/storage/toolbox.dm
@@ -3,6 +3,8 @@
desc = "Danger. Very robust."
icon = 'icons/obj/storage.dmi'
icon_state = "red"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "toolbox_red"
flags = CONDUCT
force = 10.0
diff --git a/code/game/objects/items/weapons/syndie_RCD.dm b/code/game/objects/items/weapons/syndie_RCD.dm
index 000db147e49..447b806f2c6 100644
--- a/code/game/objects/items/weapons/syndie_RCD.dm
+++ b/code/game/objects/items/weapons/syndie_RCD.dm
@@ -3,6 +3,8 @@
desc = "A device used to rapidly build and deconstruct walls, floors and airlocks. This one is made by syndicate"
icon = 'icons/obj/tools.dmi'
icon_state = "syndi_rcd"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "syndi_rcd"
materials = list(MAT_PLASMA = 10000, MAT_TITANIUM = 10000, MAT_METAL = 20000)
origin_tech = "engineering=4;materials=2;syndicate=4"
diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm
index 85a4c2e9fa4..c152c93ad2a 100644
--- a/code/game/objects/items/weapons/twohanded.dm
+++ b/code/game/objects/items/weapons/twohanded.dm
@@ -38,6 +38,9 @@
var/unwieldsound = FALSE
var/sharp_when_wielded = FALSE
+ lefthand_file = 'icons/mob/inhands/twohanded_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/twohanded_righthand.dmi'
+
/obj/item/twohanded/Initialize(mapload)
. = ..()
@@ -505,11 +508,6 @@
mounted_head = null
qdel(src)
-/obj/item/twohanded/spear/kidan
- icon_state = "kidanspear0"
- name = "Kidan spear"
- desc = "A spear brought over from the Kidan homeworld."
-
// DIY CHAINSAW
/obj/item/twohanded/required/chainsaw
diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm
index 2d9b7ef9f96..8ac86ccbf6e 100644
--- a/code/game/objects/items/weapons/weaponry.dm
+++ b/code/game/objects/items/weapons/weaponry.dm
@@ -45,7 +45,7 @@
"You try to impale yourself with [src], but it's USELESS...")
return SHAME
-/obj/item/claymore
+/obj/item/melee/claymore
name = "claymore"
desc = "What are you standing around staring at this for? Get to killing!"
icon_state = "claymore"
@@ -67,16 +67,16 @@
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
resistance_flags = FIRE_PROOF
-/obj/item/claymore/suicide_act(mob/user)
+/obj/item/melee/claymore/suicide_act(mob/user)
user.visible_message("[user] is falling on the [name]! It looks like [user.p_theyre()] trying to commit suicide.")
return BRUTELOSS
-/obj/item/claymore/ceremonial
+/obj/item/melee/claymore/ceremonial
name = "ceremonial claymore"
desc = "An engraved and fancy version of the claymore. It appears to be less sharp than it's more functional cousin."
force = 20
-/obj/item/katana
+/obj/item/melee/katana
name = "katana"
desc = "Woefully underpowered in D20"
icon_state = "katana"
@@ -97,14 +97,13 @@
max_integrity = 200
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
resistance_flags = FIRE_PROOF
- needs_permit = TRUE
-/obj/item/katana/suicide_act(mob/user)
+/obj/item/melee/katana/suicide_act(mob/user)
user.visible_message("[user] is slitting [user.p_their()] stomach open with [src]! It looks like [user.p_theyre()] trying to commit seppuku.")
return BRUTELOSS
-/obj/item/katana/basalt
+/obj/item/melee/katana/basalt
name = "basalt katana"
desc = "a katana made out of hardened basalt. Particularly damaging to lavaland fauna."
icon_state = "basalt_katana"
@@ -115,7 +114,7 @@
var/nemesis_factions = list("mining", "boss")
-/obj/item/katana/basalt/attack(mob/living/target, mob/living/user, params, def_zone, skip_attack_anim = FALSE)
+/obj/item/melee/katana/basalt/attack(mob/living/target, mob/living/user, params, def_zone, skip_attack_anim = FALSE)
var/nemesis_faction = FALSE
if(LAZYLEN(nemesis_factions))
for(var/faction in target.faction)
@@ -206,15 +205,6 @@
materials = list(MAT_METAL=500, MAT_GLASS=500)
resistance_flags = FIRE_PROOF
-/obj/item/spear/kidan
- icon_state = "kidanspear"
- name = "Kidan spear"
- desc = "A one-handed spear brought over from the Kidan homeworld."
- icon_state = "kidanspear"
- item_state = "kidanspear"
- force = 10
- throwforce = 15
-
/obj/item/melee/baseball_bat
name = "baseball bat"
desc = "There ain't a skull in the league that can withstand a swatter."
@@ -438,7 +428,7 @@
toggle(user)
-/obj/item/claymore/bone
+/obj/item/melee/claymore/bone
name = "bone sword"
desc = "Jagged pieces of bone are tied to what looks like a goliath's femur."
icon_state = "bone_sword"
diff --git a/code/game/objects/structures/lavaland/katana_grave.dm b/code/game/objects/structures/lavaland/katana_grave.dm
index d8e5f10d826..ed05b9458fa 100644
--- a/code/game/objects/structures/lavaland/katana_grave.dm
+++ b/code/game/objects/structures/lavaland/katana_grave.dm
@@ -23,5 +23,5 @@
qdel(src)
/obj/structure/katana_grave/basalt
- dropping_item = /obj/item/katana/basalt
+ dropping_item = /obj/item/melee/katana/basalt
icon_state = "grave_katana_basalt"
diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm
index 178e0de00fc..6b388152b28 100644
--- a/code/modules/admin/verbs/onlyone.dm
+++ b/code/modules/admin/verbs/onlyone.dm
@@ -36,7 +36,7 @@
H.equip_to_slot_or_del(new /obj/item/clothing/under/kilt(H), ITEM_SLOT_CLOTH_INNER)
H.equip_to_slot_or_del(new /obj/item/radio/headset/heads/captain(H), ITEM_SLOT_EAR_LEFT)
H.equip_to_slot_or_del(new /obj/item/clothing/head/beret(H), ITEM_SLOT_HEAD)
- H.equip_to_slot_or_del(new /obj/item/claymore/highlander(H), ITEM_SLOT_HAND_RIGHT)
+ H.equip_to_slot_or_del(new /obj/item/melee/claymore/highlander(H), ITEM_SLOT_HAND_RIGHT)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(H), ITEM_SLOT_FEET)
H.equip_to_slot_or_del(new /obj/item/pinpointer(H.loc), ITEM_SLOT_POCKET_LEFT)
diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm
index 4dcd10981ba..9618bb1cbc3 100644
--- a/code/modules/crafting/recipes.dm
+++ b/code/modules/crafting/recipes.dm
@@ -684,7 +684,7 @@
/datum/crafting_recipe/bonesword
name = "Bone Sword"
- result = /obj/item/claymore/bone
+ result = /obj/item/melee/claymore/bone
time = 4 SECONDS
reqs = list(/obj/item/stack/sheet/bone = 3,
/obj/item/stack/sheet/sinew = 2)
@@ -1551,7 +1551,7 @@
/obj/item/stack/sheet/mineral/diamond = 5
)
result = list(/obj/item/pickaxe/diamond)
-
+
/datum/crafting_recipe/drone
name = "Inactive Drone"
result = list(/obj/item/inactive_drone)
diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm
index cb5b6bf4768..02c046aa5f6 100644
--- a/code/modules/customitems/item_defines.dm
+++ b/code/modules/customitems/item_defines.dm
@@ -138,13 +138,13 @@
to_chat(user, "You use [src] on yourself.")
qdel(src)
-/obj/item/claymore/fluff // MrBarrelrolll: Maximus Greenwood
+/obj/item/melee/claymore/fluff // MrBarrelrolll: Maximus Greenwood
name = "Greenwood's Blade"
desc = "A replica claymore with strange markings scratched into the blade."
force = 5
sharp = 0
-/obj/item/claymore/fluff/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = ITEM_ATTACK)
+/obj/item/melee/claymore/fluff/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = ITEM_ATTACK)
return 0
/obj/item/fluff/rsik_katana //Xydonus: Rsik Ugsharki Atan
diff --git a/code/modules/mini_games/thunderdome/gamemodes/gamemode.dm b/code/modules/mini_games/thunderdome/gamemodes/gamemode.dm
index 12e097e4459..3d9c81211b5 100644
--- a/code/modules/mini_games/thunderdome/gamemodes/gamemode.dm
+++ b/code/modules/mini_games/thunderdome/gamemodes/gamemode.dm
@@ -60,7 +60,7 @@
/obj/item/twohanded/spear/bonespear/chitinspear = 1,
/obj/item/twohanded/garrote = 1,
/obj/item/melee/rapier/syndie = 1,
- /obj/item/claymore/bone = 1,
+ /obj/item/melee/claymore/bone = 1,
/obj/item/gun/magic/staff/spellblade = 1,
/obj/item/spellbook/oneuse/goliath_dash = 1,
)
@@ -225,7 +225,7 @@
/obj/item/twohanded/spear/bonespear/chitinspear = 1,
/obj/item/twohanded/garrote = 1,
/obj/item/melee/rapier/syndie = 1,
- /obj/item/claymore/bone = 1,
+ /obj/item/melee/claymore/bone = 1,
/obj/item/gun/magic/staff/spellblade = 1,
/obj/item/spellbook/oneuse/goliath_dash = 1,
/obj/item/spellbook/oneuse/forcewall = 1,
diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm
index 8d08d07bb8e..70070c1d37b 100644
--- a/code/modules/mining/abandonedcrates.dm
+++ b/code/modules/mining/abandonedcrates.dm
@@ -115,7 +115,7 @@
if(91)
new /obj/item/soulstone/anybody(src)
if(92)
- new /obj/item/katana(src)
+ new /obj/item/melee/katana(src)
if(93)
new /obj/item/dnainjector/xraymut(src)
if(94)
diff --git a/code/modules/mining/lavaland/loot/ashdragon_loot.dm b/code/modules/mining/lavaland/loot/ashdragon_loot.dm
index a36867067e5..f33eebb2084 100644
--- a/code/modules/mining/lavaland/loot/ashdragon_loot.dm
+++ b/code/modules/mining/lavaland/loot/ashdragon_loot.dm
@@ -185,6 +185,8 @@
name = "staff of lava"
desc = "The power of fire and rocks in your hands!"
icon_state = "lavastaff"
+ lefthand_file = 'icons/mob/inhands/staff_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/staff_righthand.dmi'
item_state = "lavastaff"
icon = 'icons/obj/weapons/magic.dmi'
slot_flags = ITEM_SLOT_BACK
diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm
index 04ed72018ef..9966f669e5f 100644
--- a/code/modules/mining/ores_coins.dm
+++ b/code/modules/mining/ores_coins.dm
@@ -237,7 +237,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
desc = "Extremely explosive if struck with mining equipment, Gibtonite is often used by miners to speed up their work by using it as a mining charge. This material is illegal to possess by unauthorized personnel under space law."
icon = 'icons/obj/mining.dmi'
icon_state = "Gibtonite ore"
- item_state = "Gibtonite ore"
+ item_state = "gibtonite"
w_class = WEIGHT_CLASS_BULKY
throw_range = 0
var/primed = FALSE
diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm
index c97076e5903..2485b596649 100644
--- a/code/modules/mob/living/silicon/robot/robot_modules.dm
+++ b/code/modules/mob/living/silicon/robot/robot_modules.dm
@@ -624,7 +624,7 @@
if(!istype(D, /obj/item/pickaxe/drill/cyborg/diamond))
qdel(D)
modules -= D // Remove it from this list so it doesn't get added in the rebuild.
-
+
modules += new /obj/item/pickaxe/drill/cyborg/diamond(src)
rebuild()
@@ -890,7 +890,7 @@
/obj/item/robot_module/hunter/New()
..()
- modules += new /obj/item/melee/energy/alien/claws(src)
+ modules += new /obj/item/melee/energy/alien_claws(src)
modules += new /obj/item/flash/cyborg/alien(src)
var/obj/item/reagent_containers/spray/alien/stun/S = new /obj/item/reagent_containers/spray/alien/stun(src)
S.reagents.add_reagent("cryogenic_liquid",250) //nerfed to sleeptoxin to make it less instant drop.
@@ -1144,7 +1144,7 @@
return TRUE
return TRUE
-
+
else
return FALSE
diff --git a/code/modules/pda/PDA.dm b/code/modules/pda/PDA.dm
index 5cf60cd6afc..b636cbc1aaa 100755
--- a/code/modules/pda/PDA.dm
+++ b/code/modules/pda/PDA.dm
@@ -12,6 +12,8 @@ GLOBAL_LIST_EMPTY(PDAs)
desc = "A portable microcomputer by Thinktronic Systems, LTD. Functionality determined by a preprogrammed ROM cartridge."
icon = 'icons/obj/pda.dmi'
icon_state = "pda"
+ lefthand_file = 'icons/mob/inhands/pda_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/pda_righthand.dmi'
w_class = WEIGHT_CLASS_TINY
item_flags = DENY_UI_BLOCKED
slot_flags = ITEM_SLOT_ID|ITEM_SLOT_PDA|ITEM_SLOT_BELT
diff --git a/code/modules/power/cable_coil.dm b/code/modules/power/cable_coil.dm
index c51cb95ab69..17b8bcd61a3 100644
--- a/code/modules/power/cable_coil.dm
+++ b/code/modules/power/cable_coil.dm
@@ -5,6 +5,8 @@
singular_name = "cable"
icon = 'icons/obj/engines_and_power/power.dmi'
icon_state = "coil"
+ righthand_file = 'icons/mob/inhands/tools_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/tools_lefthand.dmi'
item_state = "coil_red"
belt_icon = "cable_coil"
amount = MAXCOIL
@@ -20,11 +22,21 @@
materials = list(MAT_METAL=10, MAT_GLASS=5)
flags = CONDUCT
slot_flags = ITEM_SLOT_BELT
- item_state = "coil"
attack_verb = list("whipped", "lashed", "disciplined", "flogged")
usesound = 'sound/items/deconstruct.ogg'
toolspeed = 1
+ var/const/list/wire_colors = list(
+ WIRE_COLOR_BLUE = "blue",
+ WIRE_COLOR_CYAN = "cyan",
+ WIRE_COLOR_GREEN = "green",
+ WIRE_COLOR_ORANGE = "orange",
+ WIRE_COLOR_PINK = "pink",
+ WIRE_COLOR_RED = "red",
+ WIRE_COLOR_WHITE = "white",
+ WIRE_COLOR_YELLOW = "yellow"
+ )
+
/obj/item/stack/cable_coil/Initialize(mapload, new_amount, merge = TRUE, cable_color = null)
. = ..()
@@ -59,7 +71,7 @@
icon_state = "coil2"
else
icon_state = "coil"
-
+ item_state = wire_colors[color]
/obj/item/stack/cable_coil/update_weight()
if(amount == 1)
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index b6e4a1fb8f1..f0a5ce3190a 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -14,7 +14,7 @@
throw_range = 5
force = 5
origin_tech = "combat=1"
- needs_permit = 1
+ needs_permit = TRUE
attack_verb = list("struck", "hit", "bashed")
pickup_sound = 'sound/items/handling/gun_pickup.ogg'
drop_sound = 'sound/items/handling/gun_drop.ogg'
diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm
index fade0a3224b..a0ce4eaeabb 100644
--- a/code/modules/projectiles/guns/energy/laser.dm
+++ b/code/modules/projectiles/guns/energy/laser.dm
@@ -18,7 +18,7 @@
origin_tech = "combat=2;magnets=2"
ammo_type = list(/obj/item/ammo_casing/energy/laser/practice)
clumsy_check = 0
- needs_permit = 0
+ needs_permit = FALSE
/obj/item/gun/energy/laser/retro
name ="retro laser gun"
diff --git a/code/modules/projectiles/guns/magic.dm b/code/modules/projectiles/guns/magic.dm
index 5651a0815c9..0514260bd3b 100644
--- a/code/modules/projectiles/guns/magic.dm
+++ b/code/modules/projectiles/guns/magic.dm
@@ -21,8 +21,8 @@
clumsy_check = 0
trigger_guard = TRIGGER_GUARD_ALLOW_ALL // Has no trigger at all, uses magic instead
- lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' //not really a gun and some toys use these inhands
- righthand_file = 'icons/mob/inhands/items_righthand.dmi'
+ lefthand_file = 'icons/mob/inhands/staff_lefthand.dmi' //not really a gun and some toys use these inhands
+ righthand_file = 'icons/mob/inhands/staff_righthand.dmi'
/obj/item/gun/magic/afterattack(atom/target, mob/living/user, flag, params)
if(no_den_usage)
diff --git a/code/modules/projectiles/guns/magic/staff.dm b/code/modules/projectiles/guns/magic/staff.dm
index 8b6744f62ec..a3f0a957ff5 100644
--- a/code/modules/projectiles/guns/magic/staff.dm
+++ b/code/modules/projectiles/guns/magic/staff.dm
@@ -2,6 +2,8 @@
slot_flags = ITEM_SLOT_BACK
ammo_type = /obj/item/ammo_casing/magic
item_flags = NO_MAT_REDEMPTION
+ lefthand_file = 'icons/mob/inhands/staff_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/staff_righthand.dmi'
/obj/item/gun/magic/staff/change
name = "staff of change"
diff --git a/code/modules/reagents/reagent_containers/bottle.dm b/code/modules/reagents/reagent_containers/bottle.dm
index 1daf2b9acac..2b5025254e2 100644
--- a/code/modules/reagents/reagent_containers/bottle.dm
+++ b/code/modules/reagents/reagent_containers/bottle.dm
@@ -6,7 +6,7 @@
desc = "A small bottle."
icon = 'icons/obj/chemical.dmi'
icon_state = "round_bottle"
- item_state = "atoxinbottle"
+ item_state = "round_bottle"
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30)
container_type = OPENCONTAINER
diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm
index d639b945111..36a1be677b4 100644
--- a/code/modules/surgery/generic.dm
+++ b/code/modules/surgery/generic.dm
@@ -17,7 +17,7 @@
/obj/item/shard = 60,
/obj/item/scissors = 12,
/obj/item/twohanded/chainsaw = 1,
- /obj/item/claymore = 6,
+ /obj/item/melee/claymore = 6,
/obj/item/melee/energy = 6,
/obj/item/pen/edagger = 6,
)
diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm
index 77a40efd088..27f8b753b7a 100644
--- a/code/modules/surgery/organs_internal.dm
+++ b/code/modules/surgery/organs_internal.dm
@@ -853,7 +853,7 @@
/obj/item/shard = 60,
/obj/item/scissors = 12,
/obj/item/twohanded/chainsaw = 1,
- /obj/item/claymore = 6,
+ /obj/item/melee/claymore = 6,
/obj/item/melee/energy = 6,
/obj/item/pen/edagger = 6
)
diff --git a/icons/mob/inhands/chaplain_lefthand.dmi b/icons/mob/inhands/chaplain_lefthand.dmi
new file mode 100644
index 00000000000..448b4aac44b
Binary files /dev/null and b/icons/mob/inhands/chaplain_lefthand.dmi differ
diff --git a/icons/mob/inhands/chaplain_righthand.dmi b/icons/mob/inhands/chaplain_righthand.dmi
new file mode 100644
index 00000000000..120ee0bdee8
Binary files /dev/null and b/icons/mob/inhands/chaplain_righthand.dmi differ
diff --git a/icons/mob/inhands/fluff_lefthand.dmi b/icons/mob/inhands/fluff_lefthand.dmi
index daed1b89256..694c58776ce 100644
Binary files a/icons/mob/inhands/fluff_lefthand.dmi and b/icons/mob/inhands/fluff_lefthand.dmi differ
diff --git a/icons/mob/inhands/fluff_righthand.dmi b/icons/mob/inhands/fluff_righthand.dmi
index 83666d38747..2fdd42b0435 100644
Binary files a/icons/mob/inhands/fluff_righthand.dmi and b/icons/mob/inhands/fluff_righthand.dmi differ
diff --git a/icons/mob/inhands/foods_lefthand.dmi b/icons/mob/inhands/foods_lefthand.dmi
index d5a0c01b1d1..46107265e3d 100644
Binary files a/icons/mob/inhands/foods_lefthand.dmi and b/icons/mob/inhands/foods_lefthand.dmi differ
diff --git a/icons/mob/inhands/foods_righthand.dmi b/icons/mob/inhands/foods_righthand.dmi
index fff5fbee21d..e2a56894e56 100644
Binary files a/icons/mob/inhands/foods_righthand.dmi and b/icons/mob/inhands/foods_righthand.dmi differ
diff --git a/icons/mob/inhands/id_lefthand.dmi b/icons/mob/inhands/id_lefthand.dmi
new file mode 100644
index 00000000000..8d7f7871bd4
Binary files /dev/null and b/icons/mob/inhands/id_lefthand.dmi differ
diff --git a/icons/mob/inhands/id_righthand.dmi b/icons/mob/inhands/id_righthand.dmi
new file mode 100644
index 00000000000..9db0a696b49
Binary files /dev/null and b/icons/mob/inhands/id_righthand.dmi differ
diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi
index 96176eec0f5..1236b50c8fd 100755
Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ
diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi
index 6a85c0bdcc6..42e8d1823f4 100755
Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ
diff --git a/icons/mob/inhands/melee_lefthand.dmi b/icons/mob/inhands/melee_lefthand.dmi
new file mode 100644
index 00000000000..2adec08f235
Binary files /dev/null and b/icons/mob/inhands/melee_lefthand.dmi differ
diff --git a/icons/mob/inhands/melee_righthand.dmi b/icons/mob/inhands/melee_righthand.dmi
new file mode 100644
index 00000000000..19bd0038c6b
Binary files /dev/null and b/icons/mob/inhands/melee_righthand.dmi differ
diff --git a/icons/mob/inhands/pda_lefthand.dmi b/icons/mob/inhands/pda_lefthand.dmi
new file mode 100644
index 00000000000..9f875f6e2d6
Binary files /dev/null and b/icons/mob/inhands/pda_lefthand.dmi differ
diff --git a/icons/mob/inhands/pda_righthand.dmi b/icons/mob/inhands/pda_righthand.dmi
new file mode 100644
index 00000000000..adff23b47f6
Binary files /dev/null and b/icons/mob/inhands/pda_righthand.dmi differ
diff --git a/icons/mob/inhands/sheet_lefhand.dmi b/icons/mob/inhands/sheet_lefhand.dmi
new file mode 100644
index 00000000000..fb1e7df92c9
Binary files /dev/null and b/icons/mob/inhands/sheet_lefhand.dmi differ
diff --git a/icons/mob/inhands/sheet_righthand.dmi b/icons/mob/inhands/sheet_righthand.dmi
new file mode 100644
index 00000000000..16e01936de3
Binary files /dev/null and b/icons/mob/inhands/sheet_righthand.dmi differ
diff --git a/icons/mob/inhands/staff_lefthand.dmi b/icons/mob/inhands/staff_lefthand.dmi
new file mode 100644
index 00000000000..5f4cf88d0c3
Binary files /dev/null and b/icons/mob/inhands/staff_lefthand.dmi differ
diff --git a/icons/mob/inhands/staff_righthand.dmi b/icons/mob/inhands/staff_righthand.dmi
new file mode 100644
index 00000000000..378da59edad
Binary files /dev/null and b/icons/mob/inhands/staff_righthand.dmi differ
diff --git a/icons/mob/inhands/tools_lefthand.dmi b/icons/mob/inhands/tools_lefthand.dmi
new file mode 100644
index 00000000000..d2c95848c26
Binary files /dev/null and b/icons/mob/inhands/tools_lefthand.dmi differ
diff --git a/icons/mob/inhands/tools_righthand.dmi b/icons/mob/inhands/tools_righthand.dmi
new file mode 100644
index 00000000000..011c9e94a9c
Binary files /dev/null and b/icons/mob/inhands/tools_righthand.dmi differ
diff --git a/icons/mob/inhands/twohanded_lefthand.dmi b/icons/mob/inhands/twohanded_lefthand.dmi
new file mode 100644
index 00000000000..3743e7ffadc
Binary files /dev/null and b/icons/mob/inhands/twohanded_lefthand.dmi differ
diff --git a/icons/mob/inhands/twohanded_righthand.dmi b/icons/mob/inhands/twohanded_righthand.dmi
new file mode 100644
index 00000000000..cd84bcdcd69
Binary files /dev/null and b/icons/mob/inhands/twohanded_righthand.dmi differ
diff --git a/icons/mob/inhands/zippo_lefthand.dmi b/icons/mob/inhands/zippo_lefthand.dmi
new file mode 100644
index 00000000000..a12182b6226
Binary files /dev/null and b/icons/mob/inhands/zippo_lefthand.dmi differ
diff --git a/icons/mob/inhands/zippo_righthand.dmi b/icons/mob/inhands/zippo_righthand.dmi
new file mode 100644
index 00000000000..725e7f6015d
Binary files /dev/null and b/icons/mob/inhands/zippo_righthand.dmi differ