mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-28 22:48:38 +01:00
Size Standardization Bracelet
It makes you 100% size when worn. Similar to a bluespace jumpsuit, it only works when worn, but dis-similarly to bluespace jumpsuits, this has no control over what size you can be. You might say its one size fits all. I put this in the loadout and in the gadgets vendor, as I feel like the limitation to only changing your size to 100% and back doesn't offer the same utility as something that actually gives you full control over your size, like the bluespace jumpsuit and sizeguns. I think that this limitation, and somewhat expensive loadout cost, makes it not as likely to be abused for powergaming as the other size changing items would be.
This commit is contained in:
@@ -141,6 +141,11 @@
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(wheelchairs)
|
||||
|
||||
/datum/gear/utility/bs_bracelet
|
||||
display_name = "bluespace bracelet"
|
||||
path = /obj/item/clothing/gloves/bluespace
|
||||
cost = 5
|
||||
|
||||
/****************
|
||||
modular computers
|
||||
****************/
|
||||
|
||||
@@ -115,6 +115,44 @@
|
||||
original_size = null
|
||||
H.visible_message("<span class='warning'>The space around [H] distorts as they return to their original size!</span>","<span class='notice'>The space around you distorts as you return to your original size!</span>")
|
||||
|
||||
/obj/item/clothing/gloves/bluespace
|
||||
name = "size standardization bracelet"
|
||||
desc = "A somewhat bulky metal bracelet featuring a crystal, glowing blue. The outer side of the bracelet has an elongated case that one might imagine contains electronic components. This bracelet is used to standardize the size of crewmembers who may need a non-permanent size assist."
|
||||
icon = 'icons/inventory/accessory/item_vr.dmi'
|
||||
icon_state = "bs_bracelet"
|
||||
w_class = ITEMSIZE_TINY
|
||||
var/original_size
|
||||
var/last_activated
|
||||
|
||||
/obj/item/clothing/gloves/bluespace/mob_can_equip(mob/M, gloves, disable_warning = 0)
|
||||
. = ..()
|
||||
if(. && ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(!H.resizable)
|
||||
return
|
||||
if(H.size_multiplier != 1)
|
||||
if(!(world.time - last_activated > 10 SECONDS))
|
||||
to_chat(M, "<span class ='warning'>\The [src] flickers. It seems to be recharging.")
|
||||
return
|
||||
last_activated = world.time
|
||||
original_size = H.size_multiplier
|
||||
H.resize(1, ignore_prefs = FALSE) //In case someone else tries to put it on you.
|
||||
H.visible_message("<span class='warning'>The space around [H] distorts as they change size!</span>","<span class='notice'>The space around you distorts as you change size!</span>")
|
||||
log_admin("Admin [key_name(M)]'s size was altered by a bluespace bracelet.")
|
||||
|
||||
/obj/item/clothing/gloves/bluespace/mob_can_unequip(mob/M, gloves, disable_warning = 0)
|
||||
. = ..()
|
||||
if(. && ishuman(M) && original_size)
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(!H.resizable)
|
||||
return
|
||||
last_activated = world.time
|
||||
H.resize(original_size, ignore_prefs = FALSE)
|
||||
original_size = null
|
||||
H.visible_message("<span class='warning'>The space around [H] distorts as they return to their original size!</span>","<span class='notice'>The space around you distorts as you return to your original size!</span>")
|
||||
log_admin("Admin [key_name(M)]'s size was altered by a bluespace bracelet.")
|
||||
to_chat(M, "<span class ='warning'>\The [src] flickers. It is now recharging and will be ready again in thirty seconds.")
|
||||
|
||||
//Same as Nanotrasen Security Uniforms
|
||||
/obj/item/clothing/under/ert
|
||||
armor = list(melee = 5, bullet = 10, laser = 10, energy = 5, bomb = 5, bio = 0, rad = 0)
|
||||
|
||||
@@ -1043,7 +1043,8 @@
|
||||
/obj/item/device/walkpod = 5,
|
||||
/obj/item/device/juke_remote = 1,
|
||||
/obj/item/instrument/piano_synth/headphones = 2, // You're making a subsystem do work, I don't want it TOO busy
|
||||
/obj/item/instrument/piano_synth/headphones/spacepods = 2)
|
||||
/obj/item/instrument/piano_synth/headphones/spacepods = 2,
|
||||
/obj/item/clothing/gloves/bluespace = 5)
|
||||
prices = list(/obj/item/clothing/suit/circuitry = 100,
|
||||
/obj/item/clothing/head/circuitry = 100,
|
||||
/obj/item/clothing/shoes/circuitry = 100,
|
||||
@@ -1067,7 +1068,8 @@
|
||||
/obj/item/device/walkpod = 300,
|
||||
/obj/item/device/juke_remote = 1000,
|
||||
/obj/item/instrument/piano_synth/headphones = 200,
|
||||
/obj/item/instrument/piano_synth/headphones/spacepods = 600)
|
||||
/obj/item/instrument/piano_synth/headphones/spacepods = 600,
|
||||
/obj/item/clothing/gloves/bluespace = 500)
|
||||
premium = list(/obj/item/device/perfect_tele/one_beacon = 1)
|
||||
contraband = list(/obj/item/weapon/disk/nifsoft/compliance = 1)
|
||||
|
||||
|
||||
@@ -102,8 +102,12 @@
|
||||
/obj/item/projectile/beam/sizelaser/on_hit(var/atom/target)
|
||||
var/mob/living/M = target
|
||||
var/ignoring_prefs = (target == firer ? TRUE : FALSE) // Resizing yourself
|
||||
|
||||
if(istype(M))
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(istype(H.gloves, /obj/item/clothing/gloves/bluespace))
|
||||
M.visible_message("<span class='warning'>\The [H]'s bracelet flashes and absorbs the beam!</span>","<span class='notice'>Your bracelet flashes and absorbs the beam!</span>")
|
||||
return
|
||||
if(!M.resize(set_size, uncapped = M.has_large_resize_bounds(), ignore_prefs = ignoring_prefs))
|
||||
to_chat(M, "<font color='blue'>The beam fires into your body, changing your size!</font>")
|
||||
M.updateicon()
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Reference in New Issue
Block a user