[MIRROR] Ring/Watch Accessory Transfer (#9489)

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2024-11-19 19:14:32 +01:00
committed by GitHub
co-authored by Heroman3003 Kashargul
parent cc1e6f932e
commit f7e9f8d12b
105 changed files with 799 additions and 767 deletions
+33 -33
View File
@@ -3820,7 +3820,7 @@
},
/area/survivalpod)
"bfZ" = (
/obj/item/clothing/gloves/ring/fluff/basir,
/obj/item/clothing/accessory/ring/fluff/basir,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -10131,7 +10131,7 @@
},
/area/survivalpod)
"cXK" = (
/obj/item/clothing/gloves/ring/material/silver,
/obj/item/clothing/accessory/ring/material/silver,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -11223,7 +11223,7 @@
/turf/simulated/floor/atoll,
/area/survivalpod)
"dmX" = (
/obj/item/clothing/gloves/ring/seal/mason,
/obj/item/clothing/accessory/ring/seal/mason,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -11343,7 +11343,7 @@
},
/area/survivalpod)
"doW" = (
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -17062,7 +17062,7 @@
},
/area/survivalpod)
"eZW" = (
/obj/item/clothing/gloves/ring/wedding,
/obj/item/clothing/accessory/ring/wedding,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -24303,7 +24303,7 @@
},
/area/survivalpod)
"hfZ" = (
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -24397,7 +24397,7 @@
},
/area/survivalpod)
"hhR" = (
/obj/item/clothing/gloves/ring/seal/secgen,
/obj/item/clothing/accessory/ring/seal/secgen,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -26343,7 +26343,7 @@
/turf/simulated/floor/atoll,
/area/survivalpod)
"hKj" = (
/obj/item/clothing/gloves/ring/material,
/obj/item/clothing/accessory/ring/material,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -30722,7 +30722,7 @@
},
/area/survivalpod)
"iYT" = (
/obj/item/clothing/gloves/ring/reagent/sleepy,
/obj/item/clothing/accessory/ring/reagent/sleepy,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -31902,7 +31902,7 @@
},
/area/survivalpod)
"jqj" = (
/obj/item/clothing/gloves/ring/material/uranium,
/obj/item/clothing/accessory/ring/material/uranium,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -37214,7 +37214,7 @@
},
/area/survivalpod)
"kQl" = (
/obj/item/clothing/gloves/ring/seal,
/obj/item/clothing/accessory/ring/seal,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -42030,7 +42030,7 @@
},
/area/survivalpod)
"mnZ" = (
/obj/item/clothing/gloves/ring/material/plastic,
/obj/item/clothing/accessory/ring/material/plastic,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -44263,7 +44263,7 @@
},
/area/survivalpod)
"mVK" = (
/obj/item/clothing/gloves/ring/material/copper,
/obj/item/clothing/accessory/ring/material/copper,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -44431,7 +44431,7 @@
},
/area/survivalpod)
"mXF" = (
/obj/item/clothing/gloves/ring/material/bronze,
/obj/item/clothing/accessory/ring/material/bronze,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -51432,7 +51432,7 @@
},
/area/survivalpod)
"oXA" = (
/obj/item/clothing/gloves/ring/material/lead,
/obj/item/clothing/accessory/ring/material/lead,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -51831,7 +51831,7 @@
},
/area/survivalpod)
"pdx" = (
/obj/item/clothing/gloves/ring/seal/signet/fluff/phi,
/obj/item/clothing/accessory/ring/seal/signet/fluff/phi,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -51963,7 +51963,7 @@
},
/area/survivalpod)
"pfP" = (
/obj/item/clothing/gloves/ring/cti,
/obj/item/clothing/accessory/ring/cti,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -53061,7 +53061,7 @@
/turf/simulated/floor/atoll,
/area/survivalpod)
"pwN" = (
/obj/item/clothing/gloves/ring/buzzer,
/obj/item/clothing/accessory/ring/buzzer,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -59978,7 +59978,7 @@
},
/area/survivalpod)
"rCV" = (
/obj/item/clothing/gloves/ring/material/osmium,
/obj/item/clothing/accessory/ring/material/osmium,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -63394,7 +63394,7 @@
},
/area/survivalpod)
"sDH" = (
/obj/item/clothing/gloves/ring,
/obj/item/clothing/accessory/ring,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -64446,7 +64446,7 @@
/turf/simulated/floor/atoll,
/area/survivalpod)
"sUz" = (
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -65522,7 +65522,7 @@
},
/area/survivalpod)
"tke" = (
/obj/item/clothing/gloves/ring/material/wood,
/obj/item/clothing/accessory/ring/material/wood,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -67768,7 +67768,7 @@
},
/area/survivalpod)
"tTk" = (
/obj/item/clothing/gloves/ring/material/phoron,
/obj/item/clothing/accessory/ring/material/phoron,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -69121,7 +69121,7 @@
},
/area/survivalpod)
"uog" = (
/obj/item/clothing/gloves/ring/material/iron,
/obj/item/clothing/accessory/ring/material/iron,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -69379,7 +69379,7 @@
},
/area/survivalpod)
"usN" = (
/obj/item/clothing/gloves/ring/material/glass,
/obj/item/clothing/accessory/ring/material/glass,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -70344,7 +70344,7 @@
},
/area/survivalpod)
"uHm" = (
/obj/item/clothing/gloves/ring/seal/signet,
/obj/item/clothing/accessory/ring/seal/signet,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -71100,7 +71100,7 @@
},
/area/survivalpod)
"uSd" = (
/obj/item/clothing/gloves/ring/mariner,
/obj/item/clothing/accessory/ring/mariner,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -71124,7 +71124,7 @@
},
/area/survivalpod)
"uSE" = (
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -72343,7 +72343,7 @@
},
/area/survivalpod)
"vjZ" = (
/obj/item/clothing/gloves/ring/material/steel,
/obj/item/clothing/accessory/ring/material/steel,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -74713,7 +74713,7 @@
},
/area/survivalpod)
"vTI" = (
/obj/item/clothing/gloves/ring/material/tin,
/obj/item/clothing/accessory/ring/material/tin,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -75953,7 +75953,7 @@
},
/area/survivalpod)
"wlP" = (
/obj/item/clothing/gloves/ring/wedding/silver,
/obj/item/clothing/accessory/ring/wedding/silver,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -77797,7 +77797,7 @@
},
/area/survivalpod)
"wNz" = (
/obj/item/clothing/gloves/ring/material/platinum,
/obj/item/clothing/accessory/ring/material/platinum,
/turf/simulated/fitness{
icon_state = "vault"
},
@@ -82230,7 +82230,7 @@
},
/area/survivalpod)
"yan" = (
/obj/item/clothing/gloves/ring/material/titanium,
/obj/item/clothing/accessory/ring/material/titanium,
/turf/simulated/fitness{
icon_state = "vault"
},
+2 -2
View File
@@ -8031,7 +8031,7 @@
/area/template_noop)
"fGT" = (
/obj/item/reagent_containers/glass/rag,
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/obj/structure/table/wooden_reinforced,
/turf/simulated/floor/wood,
/area/survivalpod/superpose/LoneHome)
@@ -25622,7 +25622,7 @@
/turf/simulated/floor/tiled/techmaint,
/area/template_noop)
"qFp" = (
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/obj/item/clothing/ears/earring/stud/gold,
/obj/item/gun/projectile/deagle/gold{
pixel_x = -11;
+1 -1
View File
@@ -24635,7 +24635,7 @@
/area/space)
"pXp" = (
/obj/item/reagent_containers/glass/rag,
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/obj/structure/table/wooden_reinforced,
/turf/simulated/floor/wood,
/area/space)
+3
View File
@@ -40,6 +40,9 @@
#define ACCESSORY_SLOT_ARMOR_M 0x8000
#define ACCESSORY_SLOT_HELM_C 0x10000 //24 bit - higher than 0x80000 will overflow
#define ACCESSORY_SLOT_RING 0x20000 //rings, knuckledusters
#define ACCESSORY_SLOT_WRIST 0x40000 //wristwatches, wrist PDA maybe?
// Bitmasks for the /obj/item/var/flags_inv variable. These determine when a piece of clothing hides another, i.e. a helmet hiding glasses.
// WARNING: The following flags apply only to the external suit!
#define HIDEGLOVES 0x1
+1 -1
View File
@@ -445,7 +445,7 @@
/datum/category_item/autolathe/arms/knuckledusters
name = "knuckle dusters"
path =/obj/item/clothing/gloves/knuckledusters
path =/obj/item/clothing/accessory/knuckledusters
hidden = 1
/datum/category_item/autolathe/arms/tacknife
+1 -1
View File
@@ -59,7 +59,7 @@
/datum/category_item/autolathe/arms/knuckledusters
name = "knuckle dusters"
path =/obj/item/clothing/gloves/knuckledusters
path =/obj/item/clothing/accessory/knuckledusters
hidden = 1
/datum/category_item/autolathe/arms/tacknife
+3 -3
View File
@@ -176,7 +176,7 @@
/obj/item/material/knife/tacknife/survival,
/obj/item/material/knife/machete,
/obj/item/clothing/accessory/holster/machete,
/obj/item/clothing/gloves/watch/survival
/obj/item/clothing/accessory/watch/survival
)
cost=25
containertype = /obj/structure/closet/crate/secure/xion
@@ -202,7 +202,7 @@
/obj/item/clothing/head/pilot_vr,
/obj/item/clothing/under/rank/pilot1,
/obj/item/gun/energy/gun/protector/pilotgun/locked,
/obj/item/clothing/gloves/watch/survival
/obj/item/clothing/accessory/watch/survival
)
cost=20
containertype = /obj/structure/closet/crate/secure/xion
@@ -238,7 +238,7 @@
/obj/item/clothing/accessory/holster/machete,
/obj/item/storage/box/explorerkeys,
/obj/item/mapping_unit,
/obj/item/clothing/gloves/watch/survival
/obj/item/clothing/accessory/watch/survival
)
cost = 75
containertype = /obj/structure/closet/crate/secure/xion
-6
View File
@@ -58,12 +58,6 @@
item_cost = 20
path = /obj/item/pen/blade/fountain
/datum/uplink_item/item/stealthy_weapons/angrybuzzer
name = "Morphium Shock Ring"
desc = "An enigmatic ring used to create powerful electric shocks when punching. Can be used as a brute-force method of defibrillation."
item_cost = 40
path = /obj/item/clothing/gloves/ring/buzzer
/datum/uplink_item/item/stealthy_weapons/huntingtrap
name = "Camonetted Beartraps"
desc = "A box of unique beartraps which will partially cloak when deployed, allowing for more effective hunting."
+2 -2
View File
@@ -22,7 +22,7 @@
/obj/item/toy/redbutton = 2,
/obj/item/toy/gnome = 2,
/obj/item/toy/AI = 2,
/obj/item/clothing/gloves/ring/buzzer/toy = 2,
/obj/item/clothing/gloves/ring/buzzer/toy = 2, // CHOMPAdd
/obj/item/storage/box/handcuffs/fake = 2,
/obj/item/toy/nuke = 2,
/obj/item/toy/minigibber = 2,
@@ -33,4 +33,4 @@
/obj/item/toy/chainsaw = 1,
/obj/random/miniature = 1,
/obj/item/toy/snake_popper = 1
)
)
+29
View File
@@ -89,3 +89,32 @@
playsound(user, teppi_noise, 10, 0)
src.visible_message(span_notice("Gyooooooooh!"))
return ..()
/*
* Hand buzzer
*/
/obj/item/clothing/gloves/ring/buzzer/toy
name = "steel ring"
desc = "Torus shaped finger decoration. It has a small piece of metal on the palm-side."
icon_state = "seal-signet"
drop_sound = 'sound/items/drop/ring.ogg'
/obj/item/clothing/gloves/ring/buzzer/toy/Touch(var/atom/A, var/proximity)
if(proximity && istype(usr, /mob/living/carbon/human))
return zap(usr, A, proximity)
return 0
/obj/item/clothing/gloves/ring/buzzer/toy/zap(var/mob/living/carbon/human/user, var/atom/movable/target, var/proximity)
. = FALSE
if(user.a_intent == I_HELP && battery.percent() >= 50)
if(isliving(target))
var/mob/living/L = target
to_chat(L, span_warning("You feel a powerful shock!"))
if(!.)
playsound(L, 'sound/effects/sparks7.ogg', 40, 1)
L.electrocute_act(battery.percent() * 0, src)
return .
return 0
-29
View File
@@ -563,35 +563,6 @@
/obj/item/toy/AI/proc/cooldownreset()
cooldown = 0
/*
* Hand buzzer
*/
/obj/item/clothing/gloves/ring/buzzer/toy
name = "steel ring"
desc = "Torus shaped finger decoration. It has a small piece of metal on the palm-side."
icon_state = "seal-signet"
drop_sound = 'sound/items/drop/ring.ogg'
/obj/item/clothing/gloves/ring/buzzer/toy/Touch(var/atom/A, var/proximity)
if(proximity && istype(usr, /mob/living/carbon/human))
return zap(usr, A, proximity)
return 0
/obj/item/clothing/gloves/ring/buzzer/toy/zap(var/mob/living/carbon/human/user, var/atom/movable/target, var/proximity)
. = FALSE
if(user.a_intent == I_HELP && battery.percent() >= 50)
if(isliving(target))
var/mob/living/L = target
to_chat(L, span_warning("You feel a powerful shock!"))
if(!.)
playsound(L, 'sound/effects/sparks7.ogg', 40, 1)
L.electrocute_act(battery.percent() * 0, src)
return .
return 0
/*
* Toy cuffs
*/
@@ -65,8 +65,7 @@
var/light_glove_d = rand(2, 4)
var/no_glove_d = rand(4, 6)
var/list/forbidden_gloves = list(
/obj/item/clothing/gloves/sterile,
/obj/item/clothing/gloves/knuckledusters
/obj/item/clothing/gloves/sterile
)
if(src == user.l_hand)
@@ -797,7 +797,7 @@
var/open = 0
storage_slots = 1
can_hold = list(
/obj/item/clothing/gloves/ring,
/obj/item/clothing/accessory/ring,
/obj/item/coin,
/obj/item/clothing/accessory/medal
)
@@ -811,7 +811,7 @@
if(contents.len >= 1)
var/contained_image = null
if(istype(contents[1], /obj/item/clothing/gloves/ring))
if(istype(contents[1], /obj/item/clothing/accessory/ring))
contained_image = "ring_trinket"
else if(istype(contents[1], /obj/item/coin))
contained_image = "coin_trinket"
+1 -1
View File
@@ -264,7 +264,7 @@
prob(6);/obj/item/material/butterflyblade,
prob(6);/obj/item/material/butterflyhandle,
prob(2);/obj/item/material/butterfly/switchblade,
prob(2);/obj/item/clothing/gloves/knuckledusters,
prob(2);/obj/item/clothing/accessory/knuckledusters,
prob(1);/obj/item/material/knife/tacknife,
prob(1);/obj/item/clothing/suit/storage/vest/heavy/merc,
prob(1);/obj/item/beartrap,
+1 -1
View File
@@ -156,7 +156,7 @@
prob(4);/obj/item/storage/pill_bottle/zoom,
prob(4);/obj/item/material/butterfly,
prob(2);/obj/item/material/butterfly/switchblade,
prob(2);/obj/item/clothing/gloves/knuckledusters,
prob(2);/obj/item/clothing/accessory/knuckledusters,
prob(2);/obj/item/reagent_containers/syringe/drugs,
prob(1);/obj/item/material/knife/tacknife,
prob(1);/obj/item/clothing/suit/storage/vest/heavy/merc,
@@ -217,7 +217,7 @@
/obj/item/gps/explorer,
/obj/item/cataloguer/compact, //CHOMP edit
// /obj/item/gun/energy/gun/protector/pilotgun/locked, //CHOMP Removed
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/clothing/accessory/storage/webbing/pilot1,
/obj/item/clothing/accessory/storage/webbing/pilot2,
/obj/item/emergency_beacon
@@ -303,7 +303,7 @@
prob(3);/obj/item/cracker,
prob(3);/obj/item/material/butterfly,
prob(3);/obj/item/material/butterfly/switchblade,
prob(3);/obj/item/clothing/gloves/knuckledusters,
prob(3);/obj/item/clothing/accessory/knuckledusters,
prob(3);/obj/item/clothing/gloves/heavy_engineer,
prob(3);/obj/item/reagent_containers/syringe/drugs,
prob(2);/obj/item/implanter/sizecontrol,
@@ -360,18 +360,18 @@
/datum/gear/accessory/wristband_collection
display_name = "wristbands (selection)"
path = /obj/item/clothing/accessory/wristbandcollection
path = /obj/item/clothing/accessory/wristband/collection
/datum/gear/accessory/wristband_collection/New()
..()
var/list/wristband_lists = list(
"Green, Blue and Yellow" = /obj/item/clothing/accessory/wristbandcollection,
"Pink, Black and Red" = /obj/item/clothing/accessory/wristbandcollection/pink,
"Red and Orange" = /obj/item/clothing/accessory/wristbandcollection/les,
"White, Pink and Blue" = /obj/item/clothing/accessory/wristbandcollection/trans,
"Blue, Purple and Pink" = /obj/item/clothing/accessory/wristbandcollection/bi,
"Black, White and Grey" = /obj/item/clothing/accessory/wristbandcollection/ace,
"Spiked" = /obj/item/clothing/accessory/wristband_spiked
"Green, Blue and Yellow" = /obj/item/clothing/accessory/wristband/collection,
"Pink, Black and Red" = /obj/item/clothing/accessory/wristband/collection/pink,
"Red and Orange" = /obj/item/clothing/accessory/wristband/collection/les,
"White, Pink and Blue" = /obj/item/clothing/accessory/wristband/collection/trans,
"Blue, Purple and Pink" = /obj/item/clothing/accessory/wristband/collection/bi,
"Black, White and Grey" = /obj/item/clothing/accessory/wristband/collection/ace,
"Spiked" = /obj/item/clothing/accessory/wristband/spiked
)
gear_tweaks += new/datum/gear_tweak/path(wristband_lists)
@@ -246,7 +246,7 @@
// C CKEYS
/datum/gear/fluff/cappy_watch
path = /obj/item/clothing/accessory/watch
path = /obj/item/clothing/accessory/watch/custom
display_name = "Cappy's Pocket Watch"
ckeywhitelist = list("cappycat")
character_name = list("Cappy Fuzzlyfeathers")
@@ -491,7 +491,7 @@
character_name = list("Elizabeth Bayou")
/datum/gear/fluff/mercury_vopal_ring
path = /obj/item/clothing/gloves/ring/material/void_opal/fluff/mercury
path = /obj/item/clothing/accessory/ring/material/void_opal/fluff/mercury
display_name = "Mercury's Mate Ring"
ckeywhitelist = list("haloren")
character_name = list("Mercury")
@@ -880,7 +880,7 @@
//roguenoob
//Basir Fahim
/datum/gear/fluff/basir_1
path = /obj/item/clothing/gloves/ring/fluff/basir
path = /obj/item/clothing/accessory/ring/fluff/basir
display_name = "Sundancer Engagement Ring"
description = "This ring is stylized to have an ornate sun, with a sample of phoron swirling around inside. Keep away from Fire! Inscribed along the band is a sentence in Siik; \"Always yours, my little frost-fire. With love. -Sheri\""
ckeywhitelist = list("roguenoob")
@@ -56,7 +56,7 @@
toytype["Big Red Button"] = /obj/item/toy/redbutton
toytype["Garden gnome"] = /obj/item/toy/gnome
toytype["Toy AI"] = /obj/item/toy/AI
toytype["Hand buzzer"] = /obj/item/clothing/gloves/ring/buzzer/toy
toytype["Hand buzzer"] = /obj/item/clothing/gloves/ring/buzzer/toy // CHOMPAdd
toytype["Toy nuke"] = /obj/item/toy/nuke
toytype["Toy gibber"] = /obj/item/toy/minigibber
toytype["Toy xeno"] = /obj/item/toy/toy_xeno
@@ -74,27 +74,27 @@
/datum/gear/gloves/ring
display_name = "ring selection"
description = "Choose from a number of rings."
path = /obj/item/clothing/gloves/ring
path = /obj/item/clothing/accessory/ring
cost = 1
/datum/gear/gloves/ring/New()
..()
var/ringtype = list()
ringtype["CTI ring"] = /obj/item/clothing/gloves/ring/cti
ringtype["Mariner University ring"] = /obj/item/clothing/gloves/ring/mariner
ringtype["engagement ring"] = /obj/item/clothing/gloves/ring/engagement
ringtype["signet ring"] = /obj/item/clothing/gloves/ring/seal/signet
ringtype["masonic ring"] = /obj/item/clothing/gloves/ring/seal/mason
ringtype["ring, glass"] = /obj/item/clothing/gloves/ring/material/glass
ringtype["ring, wood"] = /obj/item/clothing/gloves/ring/material/wood
ringtype["ring, plastic"] = /obj/item/clothing/gloves/ring/material/plastic
ringtype["ring, iron"] = /obj/item/clothing/gloves/ring/material/iron
ringtype["ring, bronze"] = /obj/item/clothing/gloves/ring/material/bronze
ringtype["ring, steel"] = /obj/item/clothing/gloves/ring/material/steel
ringtype["ring, copper"] = /obj/item/clothing/gloves/ring/material/copper
ringtype["ring, silver"] = /obj/item/clothing/gloves/ring/material/silver
ringtype["ring, gold"] = /obj/item/clothing/gloves/ring/material/gold
ringtype["ring, platinum"] = /obj/item/clothing/gloves/ring/material/platinum
ringtype["CTI ring"] = /obj/item/clothing/accessory/ring/cti
ringtype["Mariner University ring"] = /obj/item/clothing/accessory/ring/mariner
ringtype["engagement ring"] = /obj/item/clothing/accessory/ring/engagement
ringtype["signet ring"] = /obj/item/clothing/accessory/ring/seal/signet
ringtype["masonic ring"] = /obj/item/clothing/accessory/ring/seal/mason
ringtype["ring, glass"] = /obj/item/clothing/accessory/ring/material/glass
ringtype["ring, wood"] = /obj/item/clothing/accessory/ring/material/wood
ringtype["ring, plastic"] = /obj/item/clothing/accessory/ring/material/plastic
ringtype["ring, iron"] = /obj/item/clothing/accessory/ring/material/iron
ringtype["ring, bronze"] = /obj/item/clothing/accessory/ring/material/bronze
ringtype["ring, steel"] = /obj/item/clothing/accessory/ring/material/steel
ringtype["ring, copper"] = /obj/item/clothing/accessory/ring/material/copper
ringtype["ring, silver"] = /obj/item/clothing/accessory/ring/material/silver
ringtype["ring, gold"] = /obj/item/clothing/accessory/ring/material/gold
ringtype["ring, platinum"] = /obj/item/clothing/accessory/ring/material/platinum
gear_tweaks += new/datum/gear_tweak/path(ringtype)
@@ -105,14 +105,14 @@
/datum/gear/gloves/watch
display_name = "wristwatch selector"
description = "Pick from a range of wristwatches."
path = /obj/item/clothing/gloves/watch
path = /obj/item/clothing/accessory/watch
/datum/gear/gloves/watch/New()
..()
var/list/selector_watches = list(
"plain plastic"=/obj/item/clothing/gloves/watch,
"silver"=/obj/item/clothing/gloves/watch/silver,
"gold"=/obj/item/clothing/gloves/watch/gold,
"survival"=/obj/item/clothing/gloves/watch/survival
"plain plastic"=/obj/item/clothing/accessory/watch,
"silver"=/obj/item/clothing/accessory/watch/silver,
"gold"=/obj/item/clothing/accessory/watch/gold,
"survival"=/obj/item/clothing/accessory/watch/survival
)
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_watches))
@@ -1,10 +1,10 @@
/datum/gear/gloves/goldring
display_name = "wedding ring, gold"
path = /obj/item/clothing/gloves/ring/wedding
path = /obj/item/clothing/accessory/ring/wedding
/datum/gear/gloves/silverring
display_name = "wedding ring, silver"
path = /obj/item/clothing/gloves/ring/wedding/silver
path = /obj/item/clothing/accessory/ring/wedding/silver
/datum/gear/gloves/colored
display_name = "gloves, colorable"
@@ -12,6 +12,8 @@
var/image/inv_overlay = null // Overlay used when attached to clothing.
var/image/mob_overlay = null
var/overlay_state = null
var/punch_force = 0 // added melee damage
var/punch_damtype = BRUTE // added melee damage type
var/concealed_holster = 0
var/mob/living/carbon/human/wearer = null // To check if the wearer changes, so species spritesheets change properly.
var/list/on_rolled = list() // Used when jumpsuit sleevels are rolled ("rolled" entry) or it's rolled down ("down"). Set to "none" to hide in those states.
@@ -82,6 +84,11 @@
src.forceMove(S)
has_suit.add_overlay(get_inv_overlay())
has_suit.force += force
if(istype(S,/obj/item/clothing/gloves))
var/obj/item/clothing/gloves/has_gloves = S
has_gloves.punch_force = has_gloves.punch_force + punch_force
if(user)
to_chat(user, span_notice("You attach \the [src] to \the [has_suit]."))
add_fingerprint(user)
@@ -90,6 +97,10 @@
if(!has_suit)
return
has_suit.cut_overlay(get_inv_overlay())
has_suit.force = initial(has_suit.force)
if(istype(has_suit,/obj/item/clothing/gloves))
var/obj/item/clothing/gloves/has_gloves = has_suit
has_gloves.punch_force = initial(has_gloves.punch_force)
has_suit = null
if(user)
usr.put_in_hands(src)
@@ -396,85 +407,6 @@
icon_state = "tesh_neckscarf"
species_restricted = list(SPECIES_TESHARI)
//bracelets
/obj/item/clothing/accessory/bracelet
name = "bracelet"
desc = "A simple silver bracelet with a clasp."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "bracelet"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/bracelet/friendship
name = "friendship bracelet"
desc = "A beautiful friendship bracelet in all the colors of the rainbow."
icon_state = "friendbracelet"
/obj/item/clothing/accessory/bracelet/friendship/verb/dedicate_bracelet()
set name = "Dedicate Bracelet"
set category = "Object"
set desc = "Dedicate your friendship bracelet to a special someone."
var/mob/M = usr
if(!M.mind)
return 0
var/input = sanitizeSafe(input(usr, "Who do you want to dedicate the bracelet to?", ,""), MAX_NAME_LEN)
if(src && input && !M.stat && in_range(M,src))
desc = "A beautiful friendship bracelet in all the colors of the rainbow. It's dedicated to [input]."
to_chat(M, "You dedicate the bracelet to [input], remembering the times you've had together.")
return 1
/obj/item/clothing/accessory/bracelet/material
icon_state = "materialbracelet"
/obj/item/clothing/accessory/bracelet/material/New(var/newloc, var/new_material)
..(newloc)
if(!new_material)
new_material = MAT_STEEL
material = get_material_by_name(new_material)
if(!istype(material))
qdel(src)
return
name = "[material.display_name] bracelet"
desc = "A bracelet made from [material.display_name]."
color = material.icon_colour
/obj/item/clothing/accessory/bracelet/material/get_material()
return material
/obj/item/clothing/accessory/bracelet/material/wood/New(var/newloc)
..(newloc, "wood")
/obj/item/clothing/accessory/bracelet/material/plastic/New(var/newloc)
..(newloc, "plastic")
/obj/item/clothing/accessory/bracelet/material/iron/New(var/newloc)
..(newloc, "iron")
/obj/item/clothing/accessory/bracelet/material/steel/New(var/newloc)
..(newloc, "steel")
/obj/item/clothing/accessory/bracelet/material/silver/New(var/newloc)
..(newloc, "silver")
/obj/item/clothing/accessory/bracelet/material/gold/New(var/newloc)
..(newloc, "gold")
/obj/item/clothing/accessory/bracelet/material/platinum/New(var/newloc)
..(newloc, "platinum")
/obj/item/clothing/accessory/bracelet/material/phoron/New(var/newloc)
..(newloc, "phoron")
/obj/item/clothing/accessory/bracelet/material/glass/New(var/newloc)
..(newloc, "glass")
..()
/obj/item/clothing/accessory/halfcape
name = "half cape"
desc = "A tasteful half-cape, suitible for European nobles and retro anime protagonists."
@@ -493,78 +425,6 @@
icon_state = "sash"
slot = ACCESSORY_SLOT_OVER
/obj/item/clothing/accessory/wristband
name = "wristband"
desc = "A simple plastic wristband."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristbandcollection
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_collection"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristbandcollection/pink
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_collection2"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristbandcollection/les
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_collection3"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristbandcollection/trans
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_collection4"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristbandcollection/bi
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_collection5"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristbandcollection/ace
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_collection6"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
/obj/item/clothing/accessory/wristband_spiked
name = "wristband (spiked)"
desc = "A black wristband with short spikes around it."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband_spiked"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_TIE
slot = ACCESSORY_SLOT_DECOR
//Gaiter scarves
/obj/item/clothing/accessory/gaiter
name = "red neck gaiter"
+141
View File
@@ -0,0 +1,141 @@
/obj/item/clothing/accessory/knuckledusters
name = "knuckle dusters"
desc = "A pair of brass knuckles. Generally used to enhance the user's punches."
icon_state = "knuckledusters"
slot = ACCESSORY_SLOT_RING
slot_flags = SLOT_GLOVES
matter = list(MAT_STEEL = 500)
attack_verb = list("punched", "beaten", "struck")
siemens_coefficient = 1
force = 10 //base punch strength is 5
punch_force = 5 //added to base punch strength when added as a glove accessory
icon = 'icons/inventory/hands/item.dmi'
item_icons = list(
slot_l_hand_str = 'icons/mob/items/lefthand_gloves.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_gloves.dmi',
)
drop_sound = 'sound/items/drop/metalboots.ogg'
pickup_sound = 'sound/items/pickup/toolbox.ogg'
//bracelets
/obj/item/clothing/accessory/bracelet
name = "bracelet"
desc = "A simple silver bracelet with a clasp."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "bracelet"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_GLOVES
slot = ACCESSORY_SLOT_WRIST
/obj/item/clothing/accessory/bracelet/friendship
name = "friendship bracelet"
desc = "A beautiful friendship bracelet in all the colors of the rainbow."
icon_state = "friendbracelet"
/obj/item/clothing/accessory/bracelet/friendship/verb/dedicate_bracelet()
set name = "Dedicate Bracelet"
set category = "Object"
set desc = "Dedicate your friendship bracelet to a special someone."
var/mob/M = usr
if(!M.mind)
return 0
var/input = sanitizeSafe(input(usr, "Who do you want to dedicate the bracelet to?", ,""), MAX_NAME_LEN)
if(src && input && !M.stat && in_range(M,src))
desc = "A beautiful friendship bracelet in all the colors of the rainbow. It's dedicated to [input]."
to_chat(M, "You dedicate the bracelet to [input], remembering the times you've had together.")
return 1
/obj/item/clothing/accessory/bracelet/material
icon_state = "materialbracelet"
/obj/item/clothing/accessory/bracelet/material/New(var/newloc, var/new_material)
..(newloc)
if(!new_material)
new_material = MAT_STEEL
material = get_material_by_name(new_material)
if(!istype(material))
qdel(src)
return
name = "[material.display_name] bracelet"
desc = "A bracelet made from [material.display_name]."
color = material.icon_colour
/obj/item/clothing/accessory/bracelet/material/get_material()
return material
/obj/item/clothing/accessory/bracelet/material/wood/New(var/newloc)
..(newloc, "wood")
/obj/item/clothing/accessory/bracelet/material/plastic/New(var/newloc)
..(newloc, "plastic")
/obj/item/clothing/accessory/bracelet/material/iron/New(var/newloc)
..(newloc, "iron")
/obj/item/clothing/accessory/bracelet/material/steel/New(var/newloc)
..(newloc, "steel")
/obj/item/clothing/accessory/bracelet/material/silver/New(var/newloc)
..(newloc, "silver")
/obj/item/clothing/accessory/bracelet/material/gold/New(var/newloc)
..(newloc, "gold")
/obj/item/clothing/accessory/bracelet/material/platinum/New(var/newloc)
..(newloc, "platinum")
/obj/item/clothing/accessory/bracelet/material/phoron/New(var/newloc)
..(newloc, "phoron")
/obj/item/clothing/accessory/bracelet/material/glass/New(var/newloc)
..(newloc, "glass")
//wristbands
/obj/item/clothing/accessory/wristband
name = "wristband"
desc = "A simple plastic wristband."
icon = 'icons/inventory/accessory/item.dmi'
icon_state = "wristband"
w_class = ITEMSIZE_TINY
slot_flags = SLOT_GLOVES
slot = ACCESSORY_SLOT_WRIST
/obj/item/clothing/accessory/wristband/spiked
name = "wristband (spiked)"
desc = "A black wristband with short spikes around it."
icon_state = "wristband_spiked"
/obj/item/clothing/accessory/wristband/collection
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon_state = "wristband_collection"
/obj/item/clothing/accessory/wristband/collection/pink
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon_state = "wristband_collection2"
/obj/item/clothing/accessory/wristband/collection/les
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon_state = "wristband_collection3"
/obj/item/clothing/accessory/wristband/collection/trans
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon_state = "wristband_collection4"
/obj/item/clothing/accessory/wristband/collection/bi
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon_state = "wristband_collection5"
/obj/item/clothing/accessory/wristband/collection/ace
name = "wristband collection"
desc = "A mix of colourable plastic wristbands."
icon_state = "wristband_collection6"
+204
View File
@@ -0,0 +1,204 @@
//Generic Ring
/obj/item/clothing/accessory/ring
name = "generic ring"
desc = "Torus shaped finger decoration."
icon_state = "material"
drop_sound = 'sound/items/drop/ring.ogg'
slot = ACCESSORY_SLOT_RING
slot_flags = SLOT_GLOVES
item_icons = list(
slot_l_hand_str = 'icons/mob/items/lefthand_gloves.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_gloves.dmi',
)
gender = PLURAL
w_class = ITEMSIZE_SMALL
icon = 'icons/inventory/hands/item.dmi'
drop_sound = 'sound/items/drop/ring.ogg'
pickup_sound = 'sound/items/pickup/ring.ogg'
force = 7 //base punch strength is 5
punch_force = 2 //added to base punch strength when added as a glove accessory
siemens_coefficient = 1
/////////////////////////////////////////
//Standard Rings
/obj/item/clothing/accessory/ring/engagement
name = "engagement ring"
desc = "An engagement ring. It certainly looks expensive."
icon_state = "diamond"
/obj/item/clothing/accessory/ring/engagement/attack_self(mob/user)
user.visible_message(span_warning("\The [user] gets down on one knee, presenting \the [src]."),span_warning("You get down on one knee, presenting \the [src]."))
/obj/item/clothing/accessory/ring/cti
name = "CTI ring"
desc = "A ring commemorating graduation from CTI."
icon_state = "cti-grad"
/obj/item/clothing/accessory/ring/mariner
name = "Mariner University ring"
desc = "A ring commemorating graduation from Mariner University."
icon_state = "mariner-grad"
/////////////////////////////////////////
//Reagent Rings
/obj/item/clothing/accessory/ring/reagent
flags = OPENCONTAINER
origin_tech = list(TECH_MATERIAL = 2, TECH_ILLEGAL = 4)
/obj/item/clothing/accessory/ring/reagent/Initialize()
. = ..()
create_reagents(15)
/obj/item/clothing/accessory/ring/reagent/equipped(var/mob/living/carbon/human/H)
..()
if(istype(H) && H.gloves==src)
if(reagents.total_volume)
to_chat(H, span_danger("You feel a prick as you slip on \the [src]."))
if(H.reagents)
var/contained = reagents.get_reagents()
var/trans = reagents.trans_to_mob(H, 15, CHEM_BLOOD)
add_attack_logs(usr, H, "Injected with [name] containing [contained] transferred [trans] units")
return
//Sleepy Ring
/obj/item/clothing/accessory/ring/reagent/sleepy
name = "silver ring"
desc = "A ring made from what appears to be silver."
icon_state = "material"
origin_tech = list(TECH_MATERIAL = 2, TECH_ILLEGAL = 5)
/obj/item/clothing/accessory/ring/reagent/sleepy/Initialize()
. = ..()
reagents.add_reagent("chloralhydrate", 15) // Less than a sleepy-pen, but still enough to knock someone out
/////////////////////////////////////////
//Seals and Signet Rings
/obj/item/clothing/accessory/ring/seal
var/stamptext = null
/obj/item/clothing/accessory/ring/seal/secgen
name = "Secretary-General's official seal"
desc = "The official seal of the Secretary-General of the Sol Central Government, featured prominently on a silver ring."
icon_state = "seal-secgen"
/obj/item/clothing/accessory/ring/seal/mason
name = "\improper Masonic ring"
desc = "The Square and Compasses feature prominently on this Masonic ring."
icon_state = "seal-masonic"
/obj/item/clothing/accessory/ring/seal/signet
name = "signet ring"
desc = "A signet ring, for when you're too sophisticated to sign letters."
icon_state = "seal-signet"
var/nameset = FALSE
/obj/item/clothing/accessory/ring/seal/signet/attack_self(mob/user)
if(nameset)
to_chat(user, span_notice("The [src] has already been claimed!"))
return
to_chat(user, span_notice("You claim the [src] as your own!"))
change_name(user)
nameset = TRUE
/obj/item/clothing/accessory/ring/seal/signet/proc/change_name(var/signet_name = "Unknown")
name = "[signet_name]'s signet ring"
desc = "A signet ring belonging to [signet_name], for when you're too sophisticated to sign letters."
/obj/item/clothing/accessory/ring/wedding
name = "golden wedding ring"
desc = "For showing your devotion to another person. It has a golden glimmer to it."
icon = 'icons/inventory/hands/item_vr.dmi'
icon_state = "wedring_g"
item_state = "wedring_g"
var/partnername = ""
/obj/item/clothing/accessory/ring/wedding/attack_self(mob/user)
partnername = copytext(sanitize(input(user, "Would you like to change the holoengraving on the ring?", "Name your spouse", "Bae") as null|text),1,MAX_NAME_LEN)
name = "[initial(name)] - [partnername]"
/obj/item/clothing/accessory/ring/wedding/silver
name = "silver wedding ring"
desc = "For showing your devotion to another person. It has a silver glimmer to it."
icon_state = "wedring_s"
item_state = "wedring_s"
/////////////////////////////////////////
//Material Rings
/obj/item/clothing/accessory/ring/material
icon = 'icons/inventory/hands/item.dmi'
icon_state = "material"
/obj/item/clothing/accessory/ring/material/New(var/newloc, var/new_material)
..(newloc)
if(!new_material)
new_material = MAT_STEEL
material = get_material_by_name(new_material)
if(!istype(material))
qdel(src)
return
name = "[material.display_name] ring"
desc = "A ring made from [material.display_name]."
color = material.icon_colour
/obj/item/clothing/accessory/ring/material/get_material()
return material
/obj/item/clothing/accessory/ring/material/wood/New(var/newloc)
..(newloc, MAT_WOOD)
/obj/item/clothing/accessory/ring/material/plastic/New(var/newloc)
..(newloc, MAT_PLASTIC)
/obj/item/clothing/accessory/ring/material/iron/New(var/newloc)
..(newloc, MAT_IRON)
/obj/item/clothing/accessory/ring/material/glass/New(var/newloc)
..(newloc, MAT_GLASS)
/obj/item/clothing/accessory/ring/material/steel/New(var/newloc)
..(newloc, MAT_STEEL)
/obj/item/clothing/accessory/ring/material/silver/New(var/newloc)
..(newloc, MAT_SILVER)
/obj/item/clothing/accessory/ring/material/gold/New(var/newloc)
..(newloc, MAT_GOLD)
/obj/item/clothing/accessory/ring/material/platinum/New(var/newloc)
..(newloc, MAT_PLATINUM)
/obj/item/clothing/accessory/ring/material/phoron/New(var/newloc)
..(newloc, MAT_PHORON)
/obj/item/clothing/accessory/ring/material/titanium/New(var/newloc)
..(newloc, MAT_TITANIUM)
/obj/item/clothing/accessory/ring/material/copper/New(var/newloc)
..(newloc, MAT_COPPER)
/obj/item/clothing/accessory/ring/material/bronze/New(var/newloc)
..(newloc, MAT_BRONZE)
/obj/item/clothing/accessory/ring/material/uranium/New(var/newloc)
..(newloc, MAT_URANIUM)
/obj/item/clothing/accessory/ring/material/osmium/New(var/newloc)
..(newloc, MAT_OSMIUM)
/obj/item/clothing/accessory/ring/material/lead/New(var/newloc)
..(newloc, MAT_LEAD)
/obj/item/clothing/accessory/ring/material/diamond/New(var/newloc)
..(newloc, MAT_DIAMOND)
/obj/item/clothing/accessory/ring/material/tin/New(var/newloc)
..(newloc, MAT_TIN)
/obj/item/clothing/accessory/ring/material/void_opal/New(var/newloc)
..(newloc, MAT_VOPAL)
@@ -0,0 +1,72 @@
/obj/item/clothing/accessory/watch
name = "wristwatch"
desc = "A cheap plastic quartz-based wristwatch. Painfully archaic by modern standards, but there's something charming about it all the same."
icon_state = "wristwatch_basic"
siemens_coefficient = 1
gender = "neuter"
slot = ACCESSORY_SLOT_WRIST
slot_flags = SLOT_GLOVES
icon = 'icons/inventory/hands/item.dmi'
item_icons = list(
slot_l_hand_str = 'icons/mob/items/lefthand_gloves.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_gloves.dmi',
)
sprite_sheets = list(
SPECIES_TESHARI = 'icons/inventory/hands/mob_teshari.dmi',
SPECIES_VOX = 'icons/inventory/hands/mob_vox.dmi'
)
/obj/item/clothing/accessory/watch/examine(mob/user)
. = ..()
if(Adjacent(user))
. += span_notice("The current station time is [stationtime2text()].")
/obj/item/clothing/accessory/watch/silver
name = "silver wristwatch"
desc = "A humble silver (or maybe chrome) plated wristwatch. It's quite archaic, but nonetheless classy in its own way."
icon_state = "wristwatch_silver"
/obj/item/clothing/accessory/watch/gold
name = "gold wristwatch"
desc = "A very fancy gold-plated wristwatch. For when you want to casually show off just how wealthy you are. It even tells the time!"
icon_state = "wristwatch_gold"
/obj/item/clothing/accessory/watch/survival
name = "survival watch"
desc = "An overengineered wristwatch that purports to be both space and water proof, and includes a compass, micro GPS beacon, and temperature and pressure sensors. The beacon is off by default, and can only transmit its location: it cannot scan for other signals."
description_fluff = "Hold ALT whilst left-clicking on the survival watch to toggle the status of its micro-beacon."
icon_state = "wristwatch_survival"
var/obj/item/gps/gps = null
/obj/item/clothing/accessory/watch/survival/examine(mob/user)
. = ..()
if(Adjacent(user))
. += span_notice("You are currently facing [dir2text(user.dir)]. The micro beacon is [gps.tracking ? "on" : "off"].")
var/TB = user.loc
if(istype(TB, /turf/)) //no point returning light level if we're not on a turf (might be *in* someone!)
var/turf/TL = TB
var/light_level = TL.get_lumcount()
if(light_level)
. += span_notice("Light Level: [TL.get_lumcount()]")
else
. += span_notice("It's too dark to see the light level!")
if(istype(TB, /turf/simulated)) //no point returning atmospheric data from unsimulated tiles (they don't track pressure anyway, only temperature)
var/turf/simulated/T = TB
var/datum/gas_mixture/env = T.return_air()
. += span_notice("Pressure: [env.return_pressure()]kPa / Temperature: [env.temperature]K ")
/obj/item/clothing/accessory/watch/survival/New()
gps = new/obj/item/gps/watch(src)
/obj/item/gps/watch
gps_tag = "SRV-WTCH"
/obj/item/clothing/accessory/watch/survival/AltClick(mob/user)
. = ..()
if(Adjacent(user))
gps.tracking = !gps.tracking
to_chat(user,span_notice("You turn the micro beacon [gps.tracking ? "on" : "off"]."))
+7 -2
View File
@@ -326,6 +326,13 @@
drop_sound = 'sound/items/drop/gloves.ogg'
pickup_sound = 'sound/items/pickup/gloves.ogg'
valid_accessory_slots = (\
ACCESSORY_SLOT_RING\
|ACCESSORY_SLOT_WRIST)
restricted_accessory_slots = (\
ACCESSORY_SLOT_RING\
|ACCESSORY_SLOT_WRIST)
/obj/item/clothing/proc/set_clothing_index()
return
@@ -422,8 +429,6 @@
if(special_attack_type && ispath(special_attack_type))
special_attack = new special_attack_type
/////////////////////////////////////////////////////////////////////
//Rings
@@ -88,70 +88,3 @@
if(proximity && istype(usr, /mob/living/carbon/human) && do_after(usr, 1 SECOND, A))
return pickpocket(usr, A, proximity)
return 0
// Buzzer Ring - Traitor, Merc.
/obj/item/clothing/gloves/ring/buzzer
name = "ring"
desc = "A plain metal band."
description_antag = "This morphium-alloy ring continually generates an electric field, capable of electrocuting a target while not injuring the wearer.\
The device is also capable of 'frankenstein'-ing a corpse, long after normal technology would be able to save them. The body will still be tied to the\
normal damage limits for survival, however, so care must be taken."
icon_state = "material"
var/battery_type = /obj/item/cell/device/weapon/recharge
var/obj/item/cell/battery = null
/obj/item/clothing/gloves/ring/buzzer/get_cell()
return battery
/obj/item/clothing/gloves/ring/buzzer/Initialize()
. = ..()
if(!battery)
battery = new battery_type(src)
/obj/item/clothing/gloves/ring/buzzer/Touch(var/atom/A, var/proximity)
if(proximity && istype(usr, /mob/living/carbon/human))
return zap(usr, A, proximity)
return 0
/obj/item/clothing/gloves/ring/buzzer/proc/zap(var/mob/living/carbon/human/user, var/atom/movable/target, var/proximity)
. = FALSE
if(user.a_intent == I_HURT && battery.percent() >= 50)
if(isliving(target))
var/mob/living/L = target
if(ishuman(L) && battery.percent() >= 90) // Silent text-wise, for maximum potential for gimmicks.
var/mob/living/carbon/human/H = L
if(H.stat == DEAD)
. = TRUE
do_defib(H)
to_chat(L, span_warning("You feel a powerful shock!"))
if(!.)
playsound(L, 'sound/effects/sparks7.ogg', 40, 1)
L.electrocute_act(battery.percent() * 0.25, src)
battery.emp_act(2)
return .
return 0
/obj/item/clothing/gloves/ring/buzzer/proc/do_defib(var/mob/living/carbon/human/H = null)
if(!istype(H))
return 0
dead_mob_list.Remove(H)
if((H in living_mob_list) || (H in dead_mob_list))
WARNING("Mob [H] was ring-defibbed but already in the living or dead list still!")
living_mob_list += H
H.timeofdeath = 0
H.set_stat(UNCONSCIOUS)
H.failed_last_breath = 0
H.reload_fullscreen()
H.emote("gasp")
H.Weaken(rand(10,25))
H.updatehealth()
battery.emp_act(1)
@@ -129,21 +129,6 @@
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE
/obj/item/clothing/gloves/knuckledusters
name = "knuckle dusters"
desc = "A pair of brass knuckles. Generally used to enhance the user's punches."
icon_state = "knuckledusters"
matter = list(MAT_STEEL = 500)
attack_verb = list("punched", "beaten", "struck")
flags = THICKMATERIAL // Stops rings from increasing hit strength
siemens_coefficient = 1
fingerprint_chance = 100
overgloves = 1
force = 5
punch_force = 5
drop_sound = 'sound/items/drop/metalboots.ogg'
pickup_sound = 'sound/items/pickup/toolbox.ogg'
/obj/item/clothing/gloves/ranger
var/glovecolor = "white"
name = "ranger gloves"
@@ -180,65 +165,3 @@
name = "water wings"
desc = "Swim aids designed to help a wearer float in water and learn to swim."
icon_state = "waterwings"
/obj/item/clothing/gloves/watch
name = "wristwatch"
desc = "A cheap plastic quartz-based wristwatch. Painfully archaic by modern standards, but there's something charming about it all the same."
icon_state = "wristwatch_basic"
siemens_coefficient = 1
gender = "neuter"
/obj/item/clothing/gloves/watch/examine(mob/user)
. = ..()
if(Adjacent(user))
. += span_notice("The current station time is [stationtime2text()].")
/obj/item/clothing/gloves/watch/silver
name = "silver wristwatch"
desc = "A humble silver (or maybe chrome) plated wristwatch. It's quite archaic, but nonetheless classy in its own way."
icon_state = "wristwatch_silver"
/obj/item/clothing/gloves/watch/gold
name = "gold wristwatch"
desc = "A very fancy gold-plated wristwatch. For when you want to casually show off just how wealthy you are. It even tells the time!"
icon_state = "wristwatch_gold"
/obj/item/clothing/gloves/watch/survival
name = "survival watch"
desc = "An overengineered wristwatch that purports to be both space and water proof, and includes a compass, micro GPS beacon, and temperature and pressure sensors. The beacon is off by default, and can only transmit its location: it cannot scan for other signals."
description_fluff = "Hold ALT whilst left-clicking on the survival watch to toggle the status of its micro-beacon."
icon_state = "wristwatch_survival"
var/obj/item/gps/gps = null
/obj/item/clothing/gloves/watch/survival/examine(mob/user)
. = ..()
if(Adjacent(user) && src.loc == user)
. += span_notice("You are currently facing [dir2text(user.dir)]. The micro beacon is [gps.tracking ? "on" : "off"].")
var/TB = src.loc.loc
if(istype(TB, /turf/)) //no point returning light level if we're not on a turf (might be *in* someone!)
var/turf/TL = TB
var/light_level = TL.get_lumcount()
if(light_level)
. += span_notice("Light Level: [TL.get_lumcount()]")
else
. += span_notice("It's too dark to see the light level!")
if(istype(TB, /turf/simulated)) //no point returning atmospheric data from unsimulated tiles (they don't track pressure anyway, only temperature)
var/turf/simulated/T = TB
var/datum/gas_mixture/env = T.return_air()
. += span_notice("Pressure: [env.return_pressure()]kPa / Temperature: [env.temperature]K ")
/obj/item/clothing/gloves/watch/survival/New()
gps = new/obj/item/gps/watch(src)
/obj/item/gps/watch
gps_tag = "SRV-WTCH"
/obj/item/clothing/gloves/watch/survival/AltClick(mob/user)
. = ..()
if(Adjacent(user))
gps.tracking = !gps.tracking
to_chat(user,span_notice("You turn the micro beacon [gps.tracking ? "on" : "off"]."))
-74
View File
@@ -1,74 +0,0 @@
/////////////////////////////////////////
//Material Rings
/obj/item/clothing/gloves/ring/material
icon = 'icons/inventory/hands/item.dmi'
icon_state = "material"
/obj/item/clothing/gloves/ring/material/New(var/newloc, var/new_material)
..(newloc)
if(!new_material)
new_material = MAT_STEEL
material = get_material_by_name(new_material)
if(!istype(material))
qdel(src)
return
name = "[material.display_name] ring"
desc = "A ring made from [material.display_name]."
color = material.icon_colour
/obj/item/clothing/gloves/ring/material/get_material()
return material
/obj/item/clothing/gloves/ring/material/wood/New(var/newloc)
..(newloc, MAT_WOOD)
/obj/item/clothing/gloves/ring/material/plastic/New(var/newloc)
..(newloc, MAT_PLASTIC)
/obj/item/clothing/gloves/ring/material/iron/New(var/newloc)
..(newloc, MAT_IRON)
/obj/item/clothing/gloves/ring/material/glass/New(var/newloc)
..(newloc, MAT_GLASS)
/obj/item/clothing/gloves/ring/material/steel/New(var/newloc)
..(newloc, MAT_STEEL)
/obj/item/clothing/gloves/ring/material/silver/New(var/newloc)
..(newloc, MAT_SILVER)
/obj/item/clothing/gloves/ring/material/gold/New(var/newloc)
..(newloc, MAT_GOLD)
/obj/item/clothing/gloves/ring/material/platinum/New(var/newloc)
..(newloc, MAT_PLATINUM)
/obj/item/clothing/gloves/ring/material/phoron/New(var/newloc)
..(newloc, MAT_PHORON)
/obj/item/clothing/gloves/ring/material/titanium/New(var/newloc)
..(newloc, MAT_TITANIUM)
/obj/item/clothing/gloves/ring/material/copper/New(var/newloc)
..(newloc, MAT_COPPER)
/obj/item/clothing/gloves/ring/material/bronze/New(var/newloc)
..(newloc, MAT_BRONZE)
/obj/item/clothing/gloves/ring/material/uranium/New(var/newloc)
..(newloc, MAT_URANIUM)
/obj/item/clothing/gloves/ring/material/osmium/New(var/newloc)
..(newloc, MAT_OSMIUM)
/obj/item/clothing/gloves/ring/material/lead/New(var/newloc)
..(newloc, MAT_LEAD)
/obj/item/clothing/gloves/ring/material/diamond/New(var/newloc)
..(newloc, MAT_DIAMOND)
/obj/item/clothing/gloves/ring/material/tin/New(var/newloc)
..(newloc, MAT_TIN)
/obj/item/clothing/gloves/ring/material/void_opal/New(var/newloc)
..(newloc, MAT_VOPAL)
-96
View File
@@ -1,96 +0,0 @@
//Generic Ring
/obj/item/clothing/gloves/ring
name = "generic ring"
desc = "Torus shaped finger decoration."
icon_state = "material"
drop_sound = 'sound/items/drop/ring.ogg'
/////////////////////////////////////////
//Standard Rings
/obj/item/clothing/gloves/ring/engagement
name = "engagement ring"
desc = "An engagement ring. It certainly looks expensive."
icon_state = "diamond"
/obj/item/clothing/gloves/ring/engagement/attack_self(mob/user)
user.visible_message(span_warning("\The [user] gets down on one knee, presenting \the [src]."),span_warning("You get down on one knee, presenting \the [src]."))
/obj/item/clothing/gloves/ring/cti
name = "CTI ring"
desc = "A ring commemorating graduation from CTI."
icon_state = "cti-grad"
/obj/item/clothing/gloves/ring/mariner
name = "Mariner University ring"
desc = "A ring commemorating graduation from Mariner University."
icon_state = "mariner-grad"
/////////////////////////////////////////
//Reagent Rings
/obj/item/clothing/gloves/ring/reagent
flags = OPENCONTAINER
origin_tech = list(TECH_MATERIAL = 2, TECH_ILLEGAL = 4)
/obj/item/clothing/gloves/ring/reagent/New()
..()
create_reagents(15)
/obj/item/clothing/gloves/ring/reagent/equipped(var/mob/living/carbon/human/H)
..()
if(istype(H) && H.gloves==src)
if(reagents.total_volume)
to_chat(H, span_danger("You feel a prick as you slip on \the [src]."))
if(H.reagents)
var/contained = reagents.get_reagents()
var/trans = reagents.trans_to_mob(H, 15, CHEM_BLOOD)
add_attack_logs(usr, H, "Injected with [name] containing [contained] transferred [trans] units")
return
//Sleepy Ring
/obj/item/clothing/gloves/ring/reagent/sleepy
name = "silver ring"
desc = "A ring made from what appears to be silver."
icon_state = "material"
origin_tech = list(TECH_MATERIAL = 2, TECH_ILLEGAL = 5)
/obj/item/clothing/gloves/ring/reagent/sleepy/New()
..()
reagents.add_reagent("chloralhydrate", 15) // Less than a sleepy-pen, but still enough to knock someone out
/////////////////////////////////////////
//Seals and Signet Rings
/obj/item/clothing/gloves/ring/seal
var/stamptext = null
/obj/item/clothing/gloves/ring/seal/secgen
name = "Secretary-General's official seal"
desc = "The official seal of the Secretary-General of the Sol Central Government, featured prominently on a silver ring."
icon_state = "seal-secgen"
/obj/item/clothing/gloves/ring/seal/mason
name = "\improper Masonic ring"
desc = "The Square and Compasses feature prominently on this Masonic ring."
icon_state = "seal-masonic"
/obj/item/clothing/gloves/ring/seal/signet
name = "signet ring"
desc = "A signet ring, for when you're too sophisticated to sign letters."
icon_state = "seal-signet"
var/nameset = FALSE
/obj/item/clothing/gloves/ring/seal/signet/attack_self(mob/user)
if(nameset)
to_chat(user, span_notice("The [src] has already been claimed!"))
return
to_chat(user, span_notice("You claim the [src] as your own!"))
change_name(user)
nameset = TRUE
/obj/item/clothing/gloves/ring/seal/signet/proc/change_name(var/signet_name = "Unknown")
name = "[signet_name]'s signet ring"
desc = "A signet ring belonging to [signet_name], for when you're too sophisticated to sign letters."
-17
View File
@@ -1,17 +0,0 @@
/obj/item/clothing/gloves/ring/wedding
name = "golden wedding ring"
desc = "For showing your devotion to another person. It has a golden glimmer to it."
icon = 'icons/inventory/hands/item_vr.dmi'
icon_state = "wedring_g"
item_state = "wedring_g"
var/partnername = ""
/obj/item/clothing/gloves/ring/wedding/attack_self(mob/user)
partnername = copytext(sanitize(input(user, "Would you like to change the holoengraving on the ring?", "Name your spouse", "Bae") as null|text),1,MAX_NAME_LEN)
name = "[initial(name)] - [partnername]"
/obj/item/clothing/gloves/ring/wedding/silver
name = "silver wedding ring"
desc = "For showing your devotion to another person. It has a silver glimmer to it."
icon_state = "wedring_s"
item_state = "wedring_s"
+42 -42
View File
@@ -481,7 +481,7 @@
/obj/item/clothing/under/color/yellow = 5,
/obj/item/clothing/shoes/black = 20,
/obj/item/clothing/shoes/white = 20,
/obj/item/clothing/gloves/watch = 20
/obj/item/clothing/accessory/watch = 20
)
prices = list()
@@ -577,13 +577,13 @@
/obj/item/clothing/accessory/wcoat/swvest/blue = 5,
/obj/item/clothing/accessory/wcoat/swvest/red = 5,
/obj/item/clothing/accessory/wristband = 5,
/obj/item/clothing/accessory/wristbandcollection = 5,
/obj/item/clothing/accessory/wristbandcollection/pink = 5,
/obj/item/clothing/accessory/wristbandcollection/les = 5,
/obj/item/clothing/accessory/wristbandcollection/bi = 5,
/obj/item/clothing/accessory/wristbandcollection/trans = 5,
/obj/item/clothing/accessory/wristbandcollection/ace = 5,
/obj/item/clothing/accessory/wristband_spiked = 5,
/obj/item/clothing/accessory/wristband/collection = 5,
/obj/item/clothing/accessory/wristband/collection/pink = 5,
/obj/item/clothing/accessory/wristband/collection/les = 5,
/obj/item/clothing/accessory/wristband/collection/bi = 5,
/obj/item/clothing/accessory/wristband/collection/trans = 5,
/obj/item/clothing/accessory/wristband/collection/ace = 5,
/obj/item/clothing/accessory/wristband/spiked = 5,
/obj/item/clothing/accessory/belt = 5,
/obj/item/clothing/accessory/belt/thick = 5,
/obj/item/clothing/accessory/belt/strap = 5,
@@ -599,13 +599,13 @@
/obj/item/clothing/ears/earmuffs/headphones = 5,
/obj/item/clothing/ears/earring/stud = 5,
/obj/item/clothing/ears/earring/dangle = 5,
/obj/item/clothing/gloves/ring/mariner = 5,
/obj/item/clothing/gloves/ring/engagement = 5,
/obj/item/clothing/gloves/ring/seal/signet = 5,
/obj/item/clothing/gloves/ring/seal/mason = 5,
/obj/item/clothing/gloves/ring/material/plastic = 5,
/obj/item/clothing/gloves/ring/material/steel = 5,
/obj/item/clothing/gloves/ring/material/gold = 5,
/obj/item/clothing/accessory/ring/mariner = 5,
/obj/item/clothing/accessory/ring/engagement = 5,
/obj/item/clothing/accessory/ring/seal/signet = 5,
/obj/item/clothing/accessory/ring/seal/mason = 5,
/obj/item/clothing/accessory/ring/material/plastic = 5,
/obj/item/clothing/accessory/ring/material/steel = 5,
/obj/item/clothing/accessory/ring/material/gold = 5,
/obj/item/clothing/glasses/eyepatch = 5,
/obj/item/clothing/glasses/gglasses = 5,
/obj/item/clothing/glasses/regular/hipster = 5,
@@ -633,9 +633,9 @@
/obj/item/clothing/accessory/pride/lesbian = 5,
/obj/item/clothing/accessory/pride/intersex = 5,
/obj/item/clothing/accessory/pride/vore = 5,
/obj/item/clothing/gloves/watch = 5,
/obj/item/clothing/gloves/watch/silver = 5,
/obj/item/clothing/gloves/watch/gold = 5
/obj/item/clothing/accessory/watch = 5,
/obj/item/clothing/accessory/watch/silver = 5,
/obj/item/clothing/accessory/watch/gold = 5
)
prices = list(/obj/item/clothing/accessory = 50,
/obj/item/clothing/accessory/armband/med/color = 50,
@@ -722,13 +722,13 @@
/obj/item/clothing/accessory/wcoat/swvest/blue = 50,
/obj/item/clothing/accessory/wcoat/swvest/red = 50,
/obj/item/clothing/accessory/wristband = 10,
/obj/item/clothing/accessory/wristbandcollection = 30,
/obj/item/clothing/accessory/wristbandcollection/pink = 30,
/obj/item/clothing/accessory/wristbandcollection/les = 30,
/obj/item/clothing/accessory/wristbandcollection/bi = 30,
/obj/item/clothing/accessory/wristbandcollection/trans = 30,
/obj/item/clothing/accessory/wristbandcollection/ace = 30,
/obj/item/clothing/accessory/wristband_spiked = 20,
/obj/item/clothing/accessory/wristband/collection = 30,
/obj/item/clothing/accessory/wristband/collection/pink = 30,
/obj/item/clothing/accessory/wristband/collection/les = 30,
/obj/item/clothing/accessory/wristband/collection/bi = 30,
/obj/item/clothing/accessory/wristband/collection/trans = 30,
/obj/item/clothing/accessory/wristband/collection/ace = 30,
/obj/item/clothing/accessory/wristband/spiked = 20,
/obj/item/clothing/accessory/belt = 50,
/obj/item/clothing/accessory/belt/thick = 50,
/obj/item/clothing/accessory/belt/strap = 50,
@@ -744,13 +744,13 @@
/obj/item/clothing/ears/earmuffs/headphones = 50,
/obj/item/clothing/ears/earring/stud = 50,
/obj/item/clothing/ears/earring/dangle = 50,
/obj/item/clothing/gloves/ring/mariner = 50,
/obj/item/clothing/gloves/ring/engagement = 50,
/obj/item/clothing/gloves/ring/seal/signet = 50,
/obj/item/clothing/gloves/ring/seal/mason = 50,
/obj/item/clothing/gloves/ring/material/plastic = 50,
/obj/item/clothing/gloves/ring/material/steel = 50,
/obj/item/clothing/gloves/ring/material/gold = 100,
/obj/item/clothing/accessory/ring/mariner = 50,
/obj/item/clothing/accessory/ring/engagement = 50,
/obj/item/clothing/accessory/ring/seal/signet = 50,
/obj/item/clothing/accessory/ring/seal/mason = 50,
/obj/item/clothing/accessory/ring/material/plastic = 50,
/obj/item/clothing/accessory/ring/material/steel = 50,
/obj/item/clothing/accessory/ring/material/gold = 100,
/obj/item/clothing/glasses/eyepatch = 50,
/obj/item/clothing/glasses/gglasses = 50,
/obj/item/clothing/glasses/regular/hipster = 50,
@@ -774,9 +774,9 @@
/obj/item/clothing/accessory/pride/lesbian = 50,
/obj/item/clothing/accessory/pride/intersex = 50,
/obj/item/clothing/accessory/pride/vore = 50,
/obj/item/clothing/gloves/watch = 50,
/obj/item/clothing/gloves/watch/silver = 100,
/obj/item/clothing/gloves/watch/gold = 200
/obj/item/clothing/accessory/watch = 50,
/obj/item/clothing/accessory/watch/silver = 100,
/obj/item/clothing/accessory/watch/gold = 200
)
premium = list(/obj/item/bedsheet/rainbow = 1)
contraband = list(/obj/item/clothing/mask/gas/clown_hat = 1,
@@ -2057,13 +2057,13 @@
/obj/item/clothing/ears/earmuffs/headphones = 5,
/obj/item/clothing/ears/earring/stud = 5,
/obj/item/clothing/ears/earring/dangle = 5,
/obj/item/clothing/gloves/ring/mariner = 5,
/obj/item/clothing/gloves/ring/engagement = 5,
/obj/item/clothing/gloves/ring/seal/signet = 5,
/obj/item/clothing/gloves/ring/seal/mason = 5,
/obj/item/clothing/gloves/ring/material/plastic = 5,
/obj/item/clothing/gloves/ring/material/steel = 5,
/obj/item/clothing/gloves/ring/material/gold = 5,
/obj/item/clothing/accessory/ring/mariner = 5,
/obj/item/clothing/accessory/ring/engagement = 5,
/obj/item/clothing/accessory/ring/seal/signet = 5,
/obj/item/clothing/accessory/ring/seal/mason = 5,
/obj/item/clothing/accessory/ring/material/plastic = 5,
/obj/item/clothing/accessory/ring/material/steel = 5,
/obj/item/clothing/accessory/ring/material/gold = 5,
/obj/item/clothing/glasses/eyepatch = 5,
/obj/item/clothing/glasses/gglasses = 5,
/obj/item/clothing/glasses/regular/hipster = 5,
@@ -361,7 +361,7 @@ var/list/name_to_material
new /datum/stack_recipe("[display_name] armor plate", /obj/item/material/armor_plating, 1, time = 20, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] armor plate insert", /obj/item/material/armor_plating/insert, 2, time = 40, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] grave marker", /obj/item/material/gravemarker, 5, time = 50, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] ring", /obj/item/clothing/gloves/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] ring", /obj/item/clothing/accessory/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] bracelet", /obj/item/clothing/accessory/bracelet/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
)
@@ -33,7 +33,7 @@
new /datum/stack_recipe("pouch, melee", /obj/item/storage/pouch/baton, 10, time = 20 SECONDS, pass_stack_color = FALSE, recycle_material = "[name]"), //vorestation Add
new /datum/stack_recipe("crude [display_name] bandage", /obj/item/stack/medical/crude_pack, 1, time = 2 SECONDS, pass_stack_color = TRUE, recycle_material = "[name]"),
new /datum/stack_recipe("[display_name] net", /obj/item/material/fishing_net, 10, time = 5 SECONDS, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] ring", /obj/item/clothing/gloves/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] ring", /obj/item/clothing/accessory/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] bracelet", /obj/item/clothing/accessory/bracelet/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("[display_name] armor plate", /obj/item/material/armor_plating, 1, time = 20, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE),
new /datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]"),
@@ -22,7 +22,7 @@
var/to_wear_r_radio = null
var/to_wear_uniform = /obj/item/clothing/under/color/grey
var/to_wear_suit = /obj/item/clothing/suit/armor/material/makeshift/glass
var/to_wear_gloves = /obj/item/clothing/gloves/ring/material/platinum
var/to_wear_gloves = /obj/item/clothing/accessory/ring/material/platinum
var/to_wear_shoes = /obj/item/clothing/shoes/galoshes
var/to_wear_belt = /obj/item/storage/belt/utility/full
var/to_wear_l_pocket = /obj/item/soap
@@ -107,12 +107,10 @@
if(w_uniform && !(skip_gear & EXAMINE_SKIPJUMPSUIT) && w_uniform.show_examine)
//Ties
var/tie_msg
var/tie_msg_warn
if(istype(w_uniform,/obj/item/clothing/under) && !(skip_gear & EXAMINE_SKIPTIE))
var/obj/item/clothing/under/U = w_uniform
if(LAZYLEN(U.accessories))
tie_msg += ". Attached to it is"
tie_msg_warn += "! Attached to it is"
var/list/accessory_descs = list()
if(skip_gear & EXAMINE_SKIPHOLSTER)
for(var/obj/item/clothing/accessory/A in U.accessories)
@@ -139,12 +137,10 @@
//suit/armour
if(wear_suit)
var/tie_msg
var/tie_msg_warn
if(istype(wear_suit,/obj/item/clothing/suit))
var/obj/item/clothing/suit/U = wear_suit
if(LAZYLEN(U.accessories))
tie_msg += ". Attached to it is"
tie_msg_warn += "! Attached to it is"
var/list/accessory_descs = list()
for(var/accessory in U.accessories)
accessory_descs += "<a href='?src=\ref[src];lookitem_desc_only=\ref[accessory]'>\a [accessory]</a>"
@@ -185,10 +181,21 @@
//gloves
if(gloves && !(skip_gear & EXAMINE_SKIPGLOVES) && gloves.show_examine)
var/gloves_acc_msg
if(istype(gloves,/obj/item/clothing/gloves))
var/obj/item/clothing/gloves/G = gloves
if(LAZYLEN(G.accessories))
gloves_acc_msg += ". Attached to it is"
var/list/accessory_descs = list()
for(var/obj/item/clothing/accessory/A in G.accessories)
accessory_descs += "<a href='?src=\ref[src];lookitem_desc_only=\ref[A]'>\a [A]</a>"
gloves_acc_msg += " [lowertext(english_list(accessory_descs))]."
if(gloves.blood_DNA)
msg += span_warning("[T.He] [T.has] [icon2html(gloves,user.client)] [gloves.gender==PLURAL?"some":"a"] [(gloves.blood_color != "#030303") ? "blood" : "oil"]-stained <a href='?src=\ref[src];lookitem_desc_only=\ref[gloves]'>[gloves.name]</a> on [T.his] hands!")
msg += span_warning("[T.He] [T.has] [icon2html(gloves,user.client)] [gloves.gender==PLURAL?"some":"a"] [(gloves.blood_color != "#030303") ? "blood" : "oil"]-stained <a href='?src=\ref[src];lookitem_desc_only=\ref[gloves]'>[gloves.name]</a> on [T.his] hands![gloves_acc_msg]")
else
msg += "[T.He] [T.has] [icon2html(gloves,user.client)] <a href='?src=\ref[src];lookitem_desc_only=\ref[gloves]'>\a [gloves]</a> on [T.his] hands."
msg += "[T.He] [T.has] [icon2html(gloves,user.client)] <a href='?src=\ref[src];lookitem_desc_only=\ref[gloves]'>\a [gloves]</a> on [T.his] hands.[gloves_acc_msg]"
else if(blood_DNA && !(skip_body & EXAMINE_SKIPHANDS))
msg += span_warning("[T.He] [T.has] [(hand_blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained hands!")
@@ -272,8 +272,12 @@
var/obj/item/clothing/gloves/G = H.gloves
real_damage += G.punch_force
hit_dam_type = G.punch_damtype
if(H.pulling_punches && !attack.sharp && !attack.edge) //SO IT IS DECREED: PULLING PUNCHES WILL PREVENT THE ACTUAL DAMAGE FROM RINGS AND KNUCKLES, BUT NOT THE ADDED PAIN, BUT YOU CAN'T "PULL" A KNIFE
hit_dam_type = AGONY
else if(istype(H.gloves, /obj/item/clothing/accessory))
var/obj/item/clothing/accessory/G = H.gloves
real_damage += G.punch_force
hit_dam_type = G.punch_damtype
if(H.pulling_punches && !attack.sharp && !attack.edge) //SO IT IS DECREED: PULLING PUNCHES WILL PREVENT THE ACTUAL DAMAGE FROM RINGS AND KNUCKLES, BUT NOT THE ADDED PAIN, BUT YOU CAN'T "PULL" A KNIFE
hit_dam_type = AGONY
real_damage *= damage_multiplier
rand_damage *= damage_multiplier
if(HULK in H.mutations)
+2 -2
View File
@@ -622,7 +622,7 @@
user << browse("<HTML><HEAD><TITLE>[name]</TITLE></HEAD><BODY>[info_links][stamps]</BODY></HTML>", "window=[name]")
return
else if(istype(P, /obj/item/stamp) || istype(P, /obj/item/clothing/gloves/ring/seal))
else if(istype(P, /obj/item/stamp) || istype(P, /obj/item/clothing/accessory/ring/seal))
if(istype(P, /obj/item/stamp))
var/obj/item/stamp/the_stamp = P
if(the_stamp.stamptext)
@@ -630,7 +630,7 @@
else
stamps += (stamps=="" ? "<HR>" : "<BR>") + span_italics("This paper has been stamped with the [the_stamp.name].")
else
var/obj/item/clothing/gloves/ring/seal/the_stamp = P
var/obj/item/clothing/accessory/ring/seal/the_stamp = P
if(the_stamp.stamptext)
stamps += (stamps=="" ? "<HR>" : "<BR>") + span_italics("[the_stamp.stamptext]")
else
@@ -198,7 +198,7 @@
name = "Phi's Personal Items"
has_items = list(
/obj/item/clothing/accessory/medal/bronze_heart,
/obj/item/clothing/gloves/ring/seal/signet/fluff/phi)
/obj/item/clothing/accessory/ring/seal/signet/fluff/phi)
// Tabiranth: Ascian
/obj/item/grenade/spawnergrenade/spirit
@@ -1689,14 +1689,14 @@ Departamental Swimsuits, for general use
item_state = "kilanosuit_p_mob"
//Mewchild: Phi Vietsi
/obj/item/clothing/gloves/ring/seal/signet/fluff/phi
/obj/item/clothing/accessory/ring/seal/signet/fluff/phi
name = "Phi's Bone Signet Ring"
desc = "A signet ring belonging to Phi, carved from the bones of something long extinct, as a ward against bad luck."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "phi_ring"
/obj/item/clothing/gloves/ring/seal/signet/fluff/phi/change_name(var/signet_name = "Unknown")
/obj/item/clothing/accessory/ring/seal/signet/fluff/phi/change_name(var/signet_name = "Unknown")
name = "[signet_name]'s Bone Signet Ring"
desc = "A signet ring belonging to [signet_name], carved from the bones of something long extinct, as a ward against bad luck."
@@ -1953,12 +1953,13 @@ Departamental Swimsuits, for general use
icon_override = 'icons/vore/custom_clothes_vr.dmi'
//CappyCat:Cappy Fuzzlyfeathers
/obj/item/clothing/accessory/watch
/obj/item/clothing/accessory/watch/custom
name = "silver pocket watch"
desc = "A fancy silver-plated digital pocket watch. Looks expensive."
icon = 'icons/obj/deadringer.dmi'
icon_state = "deadringer"
w_class = ITEMSIZE_SMALL
slot = ACCESSORY_SLOT_INSIGNIA
slot_flags = SLOT_ID | SLOT_BELT | SLOT_TIE
//Pimientopyro:Zaku Fyodorovna
@@ -2676,7 +2677,8 @@ End CHOMP Removal*/
//Halored: Mercury
/* /obj/item/clothing/gloves/ring/material/void_opal/fluff/mercury //Chomp REMOVE Start
/* Chomp REMOVE Start
/obj/item/clothing/accessory/ring/material/void_opal/fluff/mercury
name = "Mercury's Mate Ring"
desc = "A band of void opal, given to Mercury by Lumen"
@@ -1289,7 +1289,7 @@
//Basir Fahim
/obj/item/clothing/gloves/ring/fluff/basir
/obj/item/clothing/accessory/ring/fluff/basir
name = "Sundancer Engagement Ring"
desc = "This ring is stylized to have an ornate sun, with a sample of phoron swirling around inside. Keep away from Fire! Inscribed along the band is a sentence in Siik; \"Always yours, my little frost-fire. With love. -Sheri\""
icon = 'icons/vore/custom_clothes_yw.dmi'
@@ -352,7 +352,7 @@
var/list/created_items = list()
var/list/tgui_vore_selection = list()
var/list/viable_items = list(
/obj/item/clothing/gloves/ring,
/obj/item/clothing/accessory/ring,
/obj/item/clothing/gloves/evening,
/obj/item/clothing/gloves/black,
/obj/item/clothing/under/swimsuit/black,
@@ -577,7 +577,7 @@
apply_image_decorations = TRUE
if(prob(25))
apply_material_decorations = FALSE
new_item = new /obj/item/clothing/gloves/ring/material(src.loc)
new_item = new /obj/item/clothing/accessory/ring/material(src.loc)
item_type = new_item.name
if(ARCHAEO_CLUB)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 KiB

After

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

+4 -4
View File
@@ -1425,10 +1425,10 @@
/obj/item/binoculars,
/obj/item/binoculars,
/obj/item/binoculars,
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/mapping_unit/ert,
/obj/item/holomap_beacon/ert,
/obj/item/holomap_beacon/ert,
+2 -2
View File
@@ -9083,7 +9083,7 @@
/turf/simulated/floor/tiled/white,
/area/redgate/city/supermarket)
"lXc" = (
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/turf/simulated/floor/wood/alt/tile,
/area/redgate/city/fightclub)
"lXi" = (
@@ -9484,7 +9484,7 @@
/obj/structure/closet/wardrobe,
/obj/random/maintenance/cargo,
/obj/item/clothing/glasses/goggles,
/obj/item/clothing/gloves/ring/material/plastic,
/obj/item/clothing/accessory/ring/material/plastic,
/obj/item/clothing/under/cuttop/red,
/turf/simulated/floor/wood,
/area/redgate/city/apartments)
+9 -9
View File
@@ -550,7 +550,7 @@
/area/redgate/fantasy/butcher)
"dw" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/silver,
/obj/item/clothing/accessory/ring/material/silver,
/obj/structure/window/basic{
dir = 4
},
@@ -2067,7 +2067,7 @@
/area/redgate/fantasy/redgate)
"mW" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/obj/structure/window/basic{
dir = 4
},
@@ -2507,7 +2507,7 @@
/area/redgate/fantasy/grocery)
"pq" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/obj/structure/window/basic{
dir = 4
},
@@ -2906,7 +2906,7 @@
/area/redgate/fantasy/church)
"rO" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/wood,
/obj/item/clothing/accessory/ring/material/wood,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/jewler)
"rP" = (
@@ -3465,7 +3465,7 @@
/area/redgate/fantasy/butcher)
"vl" = (
/obj/structure/table/rack/shelf/wood,
/obj/item/clothing/gloves/ring/material/silver,
/obj/item/clothing/accessory/ring/material/silver,
/obj/machinery/light/small/torch{
dir = 8
},
@@ -3489,7 +3489,7 @@
/area/redgate/fantasy/castle)
"vp" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/void_opal,
/obj/item/clothing/accessory/ring/material/void_opal,
/obj/structure/window/basic{
dir = 4
},
@@ -5126,7 +5126,7 @@
/area/redgate/fantasy/house)
"FQ" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/house)
"FS" = (
@@ -7836,7 +7836,7 @@
/area/redgate/fantasy/butcher)
"WW" = (
/obj/structure/table/rack/shelf/wood,
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/jewler)
"WZ" = (
@@ -8255,7 +8255,7 @@
/area/redgate/fantasy/bard)
"ZP" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/iron,
/obj/item/clothing/accessory/ring/material/iron,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/jewler)
"ZS" = (
+1 -1
View File
@@ -209,7 +209,7 @@
/turf/simulated/floor/concrete,
/area/redgate/fantasy/castle)
"ez" = (
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/turf/simulated/mineral/floor/ignore_cavegen/cave,
/area/redgate/fantasy/caves)
"eP" = (
+1 -1
View File
@@ -1209,7 +1209,7 @@
/obj/random/mouseray,
/obj/random/cash/huge,
/obj/item/clothing/ears/earring/dangle/diamond,
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/obj/structure/closet/grave/dirthole,
/obj/random/coin,
/turf/simulated/floor/outdoors/dirt{
+1 -1
View File
@@ -848,7 +848,7 @@
/turf/simulated/floor/water/underwater/sand,
/area/redgate/islands/ruins)
"qY" = (
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/turf/simulated/floor/water/underwater/sand,
/area/redgate/islands/ruins)
"rk" = (
+2 -2
View File
@@ -3121,8 +3121,8 @@
/obj/structure/closet/cabinet,
/obj/item/clothing/under/suit_jacket,
/obj/item/clothing/shoes/dress,
/obj/item/clothing/gloves/ring/wedding,
/obj/item/clothing/gloves/ring/wedding,
/obj/item/clothing/accessory/ring/wedding,
/obj/item/clothing/accessory/ring/wedding,
/obj/item/clothing/accessory/bowtie/black,
/turf/simulated/floor/wood,
/area/redgate/train/dorm6)
+2 -2
View File
@@ -9996,8 +9996,8 @@
/obj/machinery/recharger/wallcharger{
pixel_y = 20
},
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/item/flash,
/obj/item/flash,
/obj/item/laser_pointer/upgraded,
+5 -5
View File
@@ -2463,11 +2463,11 @@
},
/area/antag/antag_base)
"dM" = (
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/structure/table/steel,
/obj/effect/floor_decal/borderfloorblack{
dir = 6
+1 -1
View File
@@ -53,7 +53,7 @@
/obj/item/storage/firstaid/toxin,
/obj/item/storage/firstaid/o2,
/obj/item/storage/box/survival/space,
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/emergency_beacon,
/obj/item/healthanalyzer,
/obj/item/storage/pill_bottle/dice_nerd,
+1 -1
View File
@@ -74,7 +74,7 @@
starts_with = list(/obj/item/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/flashlight/glowstick,/obj/item/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/tank/emergency/oxygen/engi)
},
/obj/item/storage/box/survival/space,
/obj/item/clothing/gloves/watch/survival,
/obj/item/clothing/accessory/watch/survival,
/obj/item/emergency_beacon,
/obj/item/extinguisher/mini,
/obj/item/radio{
@@ -41,7 +41,7 @@
/obj/structure/flora/grass/green{
pixel_x = -8
},
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/obj/item/clothing/ears/earring/stud/gold,
/obj/item/gun/projectile/deagle/gold{
pixel_x = -11;
@@ -32,7 +32,7 @@
"kT" = (/obj/machinery/light/small{dir = 1},/obj/structure/bed/padded,/obj/item/book/custom_library/fiction/truelovehathmyheart,/obj/item/bedsheet/clown,/turf/simulated/floor/wood,/area/submap/lonehome)
"kU" = (/obj/item/chainsaw,/obj/item/storage/box/lights/mixed,/obj/item/extinguisher,/obj/item/storage/toolbox/mechanical,/obj/structure/table/rack,/turf/simulated/floor,/area/submap/lonehome)
"ld" = (/obj/machinery/power/port_gen/pacman,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor,/area/submap/lonehome)
"lz" = (/obj/item/reagent_containers/glass/rag,/obj/item/clothing/gloves/ring/engagement,/obj/structure/table/wooden_reinforced,/turf/simulated/floor/wood,/area/submap/lonehome)
"lz" = (/obj/item/reagent_containers/glass/rag,/obj/item/clothing/accessory/ring/engagement,/obj/structure/table/wooden_reinforced,/turf/simulated/floor/wood,/area/submap/lonehome)
"lB" = (/obj/machinery/button/windowtint{id = "h_kitchen"},/obj/item/trash/plate,/obj/structure/table/sifwooden_reinforced,/obj/structure/window/reinforced/polarized{dir = 4; id = "h_kitchen"},/turf/simulated/floor/wood,/area/submap/lonehome)
"lJ" = (/obj/item/tape,/obj/structure/table/wooden_reinforced,/turf/simulated/floor/wood,/area/submap/lonehome)
"lS" = (/obj/item/organ/internal/liver,/obj/random/trash,/turf/simulated/floor,/area/submap/lonehome)
@@ -554,7 +554,7 @@
/area/submap/lonehome)
"bG" = (
/obj/item/reagent_containers/glass/rag,
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/obj/structure/table/wooden_reinforced,
/turf/simulated/floor/wood/virgo3b,
/area/submap/lonehome)
@@ -41,7 +41,7 @@
/obj/structure/flora/grass/green{
pixel_x = -8
},
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/obj/item/clothing/ears/earring/stud/gold,
/obj/item/gun/projectile/deagle/gold{
pixel_x = -11;
@@ -0,0 +1,5 @@
/datum/uplink_item/item/stealthy_weapons/angrybuzzer
name = "Morphium Shock Ring"
desc = "An enigmatic ring used to create powerful electric shocks when punching. Can be used as a brute-force method of defibrillation."
item_cost = 40
path = /obj/item/clothing/gloves/ring/buzzer
@@ -9,10 +9,10 @@
/datum/gear/gloves/ringworld1
display_name = "world gem ring"
path = /obj/item/clothing/gloves/ring/ringworld1
path = /obj/item/clothing/accessory/ring/ringworld1
cost = 1
/datum/gear/gloves/ringworld2
display_name = "world ring"
path = /obj/item/clothing/gloves/ring/ringworld2
path = /obj/item/clothing/accessory/ring/ringworld2
cost = 1
@@ -27,4 +27,4 @@
icon_state = "casinoslave_owned"
item_state = "casinoslave_owned"
overlay_state = "casinoslave_owned"
sprite_sheets = list(SPECIES_TESHARI = 'icons/inventory/accessory/mob_ch_teshari.dmi')
sprite_sheets = list(SPECIES_TESHARI = 'icons/inventory/accessory/mob_ch_teshari.dmi')
@@ -1,12 +1,11 @@
/obj/item/clothing/gloves/ring/ringworld1
/obj/item/clothing/accessory/ring/ringworld1
name = "world gem ring"
desc = "A ring that has a tiny world inside its glassy gem. You can even see clouds moving."
icon = 'modular_chomp/icons/inventory/hands/item_ch.dmi'
icon_state = "ringworld1"
drop_sound = 'sound/items/drop/ring.ogg'
/obj/item/clothing/gloves/ring/ringworld2
/obj/item/clothing/accessory/ring/ringworld2
name = "world ring"
desc = "A ring that has a tiny landscape all around its exterior. You can even see clouds moving."
icon = 'modular_chomp/icons/inventory/hands/item_ch.dmi'
@@ -0,0 +1,66 @@
// Buzzer Ring - Traitor, Merc.
/obj/item/clothing/gloves/ring/buzzer
name = "ring"
desc = "A plain metal band."
description_antag = "This morphium-alloy ring continually generates an electric field, capable of electrocuting a target while not injuring the wearer.\
The device is also capable of 'frankenstein'-ing a corpse, long after normal technology would be able to save them. The body will still be tied to the\
normal damage limits for survival, however, so care must be taken."
icon_state = "material"
var/battery_type = /obj/item/cell/device/weapon/recharge
var/obj/item/cell/battery = null
/obj/item/clothing/gloves/ring/buzzer/get_cell()
return battery
/obj/item/clothing/gloves/ring/buzzer/Initialize()
. = ..()
if(!battery)
battery = new battery_type(src)
/obj/item/clothing/gloves/ring/buzzer/Touch(var/atom/A, var/proximity)
if(proximity && istype(usr, /mob/living/carbon/human))
return zap(usr, A, proximity)
return 0
/obj/item/clothing/gloves/ring/buzzer/proc/zap(var/mob/living/carbon/human/user, var/atom/movable/target, var/proximity)
. = FALSE
if(user.a_intent == I_HURT && battery.percent() >= 50)
if(isliving(target))
var/mob/living/L = target
if(ishuman(L) && battery.percent() >= 90) // Silent text-wise, for maximum potential for gimmicks.
var/mob/living/carbon/human/H = L
if(H.stat == DEAD)
. = TRUE
do_defib(H)
to_chat(L, span_warning("You feel a powerful shock!"))
if(!.)
playsound(L, 'sound/effects/sparks7.ogg', 40, 1)
L.electrocute_act(battery.percent() * 0.25, src)
battery.emp_act(2)
return .
return 0
/obj/item/clothing/gloves/ring/buzzer/proc/do_defib(var/mob/living/carbon/human/H = null)
if(!istype(H))
return 0
dead_mob_list.Remove(H)
if((H in living_mob_list) || (H in dead_mob_list))
WARNING("Mob [H] was ring-defibbed but already in the living or dead list still!")
living_mob_list += H
H.timeofdeath = 0
H.set_stat(UNCONSCIOUS)
H.failed_last_breath = 0
H.reload_fullscreen()
H.emote("gasp")
H.Weaken(rand(10,25))
H.updatehealth()
battery.emp_act(1)
@@ -3887,7 +3887,7 @@
},
/obj/structure/table/rack/shelf/steel,
/obj/item/clothing/ears/earring/dangle/gold,
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/obj/item/instrument/violin/golden,
/turf/simulated/floor/tiled,
/area/awaymission/darkrp/ghettobank)
@@ -13498,7 +13498,7 @@
},
/obj/structure/table/rack/shelf/steel,
/obj/item/clothing/ears/earring/stud/gold,
/obj/item/clothing/gloves/ring/material/glass,
/obj/item/clothing/accessory/ring/material/glass,
/obj/item/toy/plushie/carp/gold,
/obj/item/stack/material/diamond{
amount = 15
@@ -9079,7 +9079,7 @@
/turf/simulated/floor/tiled/white,
/area/redgate/city/supermarket)
"lXc" = (
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/turf/simulated/floor/wood/alt/tile,
/area/redgate/city/fightclub)
"lXi" = (
@@ -9480,7 +9480,7 @@
/obj/structure/closet/wardrobe,
/obj/random/maintenance/cargo,
/obj/item/clothing/glasses/goggles,
/obj/item/clothing/gloves/ring/material/plastic,
/obj/item/clothing/accessory/ring/material/plastic,
/obj/item/clothing/under/cuttop/red,
/turf/simulated/floor/wood,
/area/redgate/city/apartments)
@@ -550,7 +550,7 @@
/area/redgate/fantasy/butcher)
"dw" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/silver,
/obj/item/clothing/accessory/ring/material/silver,
/obj/structure/window/basic{
dir = 4
},
@@ -2067,7 +2067,7 @@
/area/redgate/fantasy/redgate)
"mW" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/obj/structure/window/basic{
dir = 4
},
@@ -2507,7 +2507,7 @@
/area/redgate/fantasy/grocery)
"pq" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/obj/structure/window/basic{
dir = 4
},
@@ -2906,7 +2906,7 @@
/area/redgate/fantasy/church)
"rO" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/wood,
/obj/item/clothing/accessory/ring/material/wood,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/jewler)
"rP" = (
@@ -3465,7 +3465,7 @@
/area/redgate/fantasy/butcher)
"vl" = (
/obj/structure/table/rack/shelf/wood,
/obj/item/clothing/gloves/ring/material/silver,
/obj/item/clothing/accessory/ring/material/silver,
/obj/machinery/light/small/torch{
dir = 8
},
@@ -3489,7 +3489,7 @@
/area/redgate/fantasy/castle)
"vp" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/void_opal,
/obj/item/clothing/accessory/ring/material/void_opal,
/obj/structure/window/basic{
dir = 4
},
@@ -5122,7 +5122,7 @@
/area/redgate/fantasy/house)
"FQ" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/house)
"FS" = (
@@ -7832,7 +7832,7 @@
/area/redgate/fantasy/butcher)
"WW" = (
/obj/structure/table/rack/shelf/wood,
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/jewler)
"WZ" = (
@@ -8251,7 +8251,7 @@
/area/redgate/fantasy/bard)
"ZP" = (
/obj/structure/table/woodentable,
/obj/item/clothing/gloves/ring/material/iron,
/obj/item/clothing/accessory/ring/material/iron,
/turf/simulated/floor/wood/alt,
/area/redgate/fantasy/jewler)
"ZS" = (
@@ -209,7 +209,7 @@
/turf/simulated/floor/concrete,
/area/redgate/fantasy/castle)
"ez" = (
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/turf/simulated/mineral/floor/ignore_cavegen/cave,
/area/redgate/fantasy/caves)
"eP" = (
@@ -53,7 +53,7 @@
/obj/random/mouseray,
/obj/random/cash/huge,
/obj/item/clothing/ears/earring/dangle/diamond,
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/obj/structure/closet/grave/dirthole,
/obj/random/coin,
/turf/simulated/floor/outdoors/dirt{
@@ -3887,7 +3887,7 @@
},
/obj/structure/table/rack/shelf/steel,
/obj/item/clothing/ears/earring/dangle/gold,
/obj/item/clothing/gloves/ring/material/diamond,
/obj/item/clothing/accessory/ring/material/diamond,
/obj/item/instrument/violin/golden,
/turf/simulated/floor/tiled,
/area/awaymission/darkrp/ghettobank)
@@ -13493,7 +13493,7 @@
},
/obj/structure/table/rack/shelf/steel,
/obj/item/clothing/ears/earring/stud/gold,
/obj/item/clothing/gloves/ring/material/glass,
/obj/item/clothing/accessory/ring/material/glass,
/obj/item/toy/plushie/carp/gold,
/obj/item/stack/material/diamond{
amount = 15
@@ -3495,7 +3495,7 @@
"dgr" = (
/obj/structure/catwalk,
/obj/structure/table/steel_reinforced,
/obj/item/clothing/gloves/knuckledusters,
/obj/item/clothing/accessory/knuckledusters,
/obj/machinery/light/small{
dir = 8
},
@@ -381,7 +381,7 @@
/turf/template_noop,
/area/template_noop)
"Ph" = (
/obj/item/clothing/gloves/ring/material/gold,
/obj/item/clothing/accessory/ring/material/gold,
/obj/item/clothing/ears/earring/stud/gold,
/obj/item/gun/projectile/deagle/gold{
pixel_x = -11;
@@ -679,7 +679,7 @@
/area/survivalpod/superpose/LoneHome)
"bG" = (
/obj/item/reagent_containers/glass/rag,
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/obj/structure/table/wooden_reinforced,
/turf/simulated/floor/wood,
/area/survivalpod/superpose/LoneHome)
@@ -455,7 +455,7 @@
/area/survivalpod/superpose/LoneHomeclean)
"bG" = (
/obj/item/reagent_containers/glass/rag,
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/obj/structure/table/wooden_reinforced,
/turf/simulated/floor/wood,
/area/survivalpod/superpose/LoneHomeclean)
@@ -554,7 +554,7 @@
/area/submap/lonehome)
"bG" = (
/obj/item/reagent_containers/glass/rag,
/obj/item/clothing/gloves/ring/engagement,
/obj/item/clothing/accessory/ring/engagement,
/obj/structure/table/wooden_reinforced,
/turf/simulated/floor/wood/virgo3b,
/area/submap/lonehome)

Some files were not shown because too many files have changed in this diff Show More