mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-25 04:57:12 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into bundles
# Conflicts: # code/modules/clothing/glasses/glasses.dm # code/modules/customitems/item_defines.dm
This commit is contained in:
@@ -174,14 +174,10 @@
|
||||
var/list/SPECIALS = list(
|
||||
/area/shuttle,
|
||||
/area/admin,
|
||||
/area/arrival,
|
||||
/area/centcom,
|
||||
/area/asteroid,
|
||||
/area/tdome,
|
||||
/area/syndicate_station,
|
||||
/area/wizard_station,
|
||||
/area/prison
|
||||
// /area/derelict //commented out, all hail derelict-rebuilders!
|
||||
/area/wizard_station
|
||||
)
|
||||
for(var/type in SPECIALS)
|
||||
if( istype(A,type) )
|
||||
@@ -211,23 +207,21 @@
|
||||
return
|
||||
var/area/A = new
|
||||
A.name = str
|
||||
//var/ma
|
||||
//ma = A.master ? "[A.master]" : "(null)"
|
||||
// to_chat(world, "DEBUG: create_area: <br>A.name=[A.name]<br>A.tag=[A.tag]<br>A.master=[ma]")
|
||||
A.power_equip = 0
|
||||
A.power_light = 0
|
||||
A.power_environ = 0
|
||||
A.always_unpowered = 0
|
||||
move_turfs_to_area(turfs, A)
|
||||
A.power_equip = FALSE
|
||||
A.power_light = FALSE
|
||||
A.power_environ = FALSE
|
||||
A.always_unpowered = FALSE
|
||||
A.set_dynamic_lighting()
|
||||
|
||||
for(var/i in 1 to turfs.len)
|
||||
var/turf/thing = turfs[i]
|
||||
var/area/old_area = thing.loc
|
||||
A.contents += thing
|
||||
thing.change_area(old_area, A)
|
||||
|
||||
interact()
|
||||
return
|
||||
|
||||
|
||||
/obj/item/areaeditor/proc/move_turfs_to_area(var/list/turf/turfs, var/area/A)
|
||||
A.contents.Add(turfs)
|
||||
|
||||
|
||||
/obj/item/areaeditor/proc/edit_area()
|
||||
var/area/A = get_area()
|
||||
var/prevname = "[sanitize(A.name)]"
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
visible_message("<span class='notice'>[src] swells up!</span>")
|
||||
|
||||
// Animation
|
||||
icon = 'icons/mob/animal.dmi'
|
||||
icon = 'icons/mob/carp.dmi'
|
||||
flick("carp_swell", src)
|
||||
// Wait for animation to end
|
||||
sleep(6)
|
||||
|
||||
@@ -155,14 +155,14 @@
|
||||
|
||||
/obj/item/flash/proc/terrible_conversion_proc(mob/M, mob/user)
|
||||
if(ishuman(M) && ishuman(user) && M.stat != DEAD)
|
||||
if(user.mind && (user.mind in ticker.mode.head_revolutionaries))
|
||||
if(user.mind && (user.mind in SSticker.mode.head_revolutionaries))
|
||||
if(M.client)
|
||||
if(M.stat == CONSCIOUS)
|
||||
M.mind_initialize() //give them a mind datum if they don't have one.
|
||||
var/resisted
|
||||
if(!ismindshielded(M))
|
||||
if(user.mind in ticker.mode.head_revolutionaries)
|
||||
if(ticker.mode.add_revolutionary(M.mind))
|
||||
if(user.mind in SSticker.mode.head_revolutionaries)
|
||||
if(SSticker.mode.add_revolutionary(M.mind))
|
||||
times_used -- //Flashes less likely to burn out for headrevs when used for conversion
|
||||
else
|
||||
resisted = 1
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
if(((CLUMSY in user.mutations) || user.getBrainLoss() >= 60) && prob(50)) //too dumb to use flashlight properly
|
||||
return ..() //just hit them in the head
|
||||
|
||||
if(!(istype(user, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey") //don't have dexterity
|
||||
if(!(istype(user, /mob/living/carbon/human) || SSticker) && SSticker.mode.name != "monkey") //don't have dexterity
|
||||
to_chat(user, "<span class='notice'>You don't have the dexterity to do this!</span>")
|
||||
return
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
var/obj/item/organ/internal/eyes/eyes = H.get_int_organ(/obj/item/organ/internal/eyes)
|
||||
if(M.stat == DEAD || !eyes || M.disabilities & BLIND) //mob is dead or fully blind
|
||||
to_chat(user, "<span class='notice'>[M]'s pupils are unresponsive to the light!</span>")
|
||||
else if((XRAY in M.mutations) || eyes.get_dark_view() >= 8) //The mob's either got the X-RAY vision or has a tapetum lucidum (extreme nightvision, i.e. Vulp/Tajara with COLOURBLIND & their monkey forms).
|
||||
else if((XRAY in M.mutations) || eyes.see_in_dark >= 8) //The mob's either got the X-RAY vision or has a tapetum lucidum (extreme nightvision, i.e. Vulp/Tajara with COLOURBLIND & their monkey forms).
|
||||
to_chat(user, "<span class='notice'>[M]'s pupils glow eerily!</span>")
|
||||
else //they're okay!
|
||||
if(M.flash_eyes(visual = 1))
|
||||
|
||||
@@ -31,8 +31,8 @@ var/list/world_uplinks = list()
|
||||
|
||||
/obj/item/uplink/New()
|
||||
..()
|
||||
welcome = ticker.mode.uplink_welcome
|
||||
uses = ticker.mode.uplink_uses
|
||||
welcome = SSticker.mode.uplink_welcome
|
||||
uses = SSticker.mode.uplink_uses
|
||||
uplink_items = get_uplink_items()
|
||||
|
||||
world_uplinks += src
|
||||
|
||||
@@ -245,7 +245,7 @@
|
||||
to_chat(user, "<span class='warning'>Sticking a dead [M] into the frame would sort of defeat the purpose.</span>")
|
||||
return
|
||||
|
||||
if(M.brainmob.mind in ticker.mode.head_revolutionaries)
|
||||
if(M.brainmob.mind in SSticker.mode.head_revolutionaries)
|
||||
to_chat(user, "<span class='warning'>The frame's firmware lets out a shrill sound, and flashes 'Abnormal Memory Engram'. It refuses to accept the [M].</span>")
|
||||
return
|
||||
|
||||
@@ -306,7 +306,6 @@
|
||||
O.Namepick()
|
||||
|
||||
feedback_inc("cyborg_birth",1)
|
||||
callHook("borgify", list(O))
|
||||
|
||||
forceMove(O)
|
||||
O.robot_suit = src
|
||||
|
||||
@@ -240,6 +240,7 @@ var/global/list/datum/stack_recipe/cloth_recipes = list ( \
|
||||
var/global/list/datum/stack_recipe/cardboard_recipes = list (
|
||||
new /datum/stack_recipe("box", /obj/item/storage/box),
|
||||
new /datum/stack_recipe("large box", /obj/item/storage/box/large, 4),
|
||||
new /datum/stack_recipe("patch pack", /obj/item/storage/pill_bottle/patch_pack, 2),
|
||||
new /datum/stack_recipe("light tubes", /obj/item/storage/box/lights/tubes),
|
||||
new /datum/stack_recipe("light bulbs", /obj/item/storage/box/lights/bulbs),
|
||||
new /datum/stack_recipe("mouse traps", /obj/item/storage/box/mousetraps),
|
||||
|
||||
@@ -1066,6 +1066,32 @@ obj/item/toy/cards/deck/syndicate/black
|
||||
name = "tuxedo cat plushie"
|
||||
icon_state = "tuxedocat"
|
||||
|
||||
//New generation TG plushies
|
||||
|
||||
/obj/item/toy/plushie/lizardplushie
|
||||
name = "lizard plushie"
|
||||
desc = "An adorable stuffed toy that resembles a lizardperson."
|
||||
icon_state = "plushie_lizard"
|
||||
item_state = "plushie_lizard"
|
||||
|
||||
/obj/item/toy/plushie/snakeplushie
|
||||
name = "snake plushie"
|
||||
desc = "An adorable stuffed toy that resembles a snake. Not to be mistaken for the real thing."
|
||||
icon_state = "plushie_snake"
|
||||
item_state = "plushie_snake"
|
||||
|
||||
/obj/item/toy/plushie/nukeplushie
|
||||
name = "operative plushie"
|
||||
desc = "An stuffed toy that resembles a syndicate nuclear operative. The tag claims operatives to be purely fictitious."
|
||||
icon_state = "plushie_nuke"
|
||||
item_state = "plushie_nuke"
|
||||
|
||||
/obj/item/toy/plushie/slimeplushie
|
||||
name = "slime plushie"
|
||||
desc = "An adorable stuffed toy that resembles a slime. It is practically just a hacky sack."
|
||||
icon_state = "plushie_slime"
|
||||
item_state = "plushie_slime"
|
||||
|
||||
/*
|
||||
* Foam Armblade
|
||||
*/
|
||||
|
||||
@@ -443,15 +443,15 @@
|
||||
return ..()
|
||||
|
||||
if(!user.mind || !user.mind.isholy)
|
||||
to_chat(user, "<span class='notice'>You are not close enough with [ticker.Bible_deity_name] to use [src].</span>")
|
||||
to_chat(user, "<span class='notice'>You are not close enough with [SSticker.Bible_deity_name] to use [src].</span>")
|
||||
return
|
||||
|
||||
if(praying)
|
||||
to_chat(user, "<span class='notice'>You are already using [src].</span>")
|
||||
return
|
||||
|
||||
user.visible_message("<span class='info'>[user] kneels[M == user ? null : " next to [M]"] and begins to utter a prayer to [ticker.Bible_deity_name].</span>", \
|
||||
"<span class='info'>You kneel[M == user ? null : " next to [M]"] and begin a prayer to [ticker.Bible_deity_name].</span>")
|
||||
user.visible_message("<span class='info'>[user] kneels[M == user ? null : " next to [M]"] and begins to utter a prayer to [SSticker.Bible_deity_name].</span>", \
|
||||
"<span class='info'>You kneel[M == user ? null : " next to [M]"] and begin a prayer to [SSticker.Bible_deity_name].</span>")
|
||||
|
||||
praying = 1
|
||||
if(do_after(user, 150, target = M))
|
||||
@@ -460,18 +460,18 @@
|
||||
|
||||
if(target.mind)
|
||||
if(iscultist(target))
|
||||
ticker.mode.remove_cultist(target.mind) // This proc will handle message generation.
|
||||
SSticker.mode.remove_cultist(target.mind) // This proc will handle message generation.
|
||||
praying = 0
|
||||
return
|
||||
|
||||
if(target.mind.vampire && !target.mind.vampire.get_ability(/datum/vampire_passive/full)) // Getting a full prayer off on a vampire will interrupt their powers for a large duration.
|
||||
target.mind.vampire.nullified = max(120, target.mind.vampire.nullified + 120)
|
||||
to_chat(target, "<span class='userdanger'>[user]'s prayer to [ticker.Bible_deity_name] has interfered with your power!</span>")
|
||||
to_chat(target, "<span class='userdanger'>[user]'s prayer to [SSticker.Bible_deity_name] has interfered with your power!</span>")
|
||||
praying = 0
|
||||
return
|
||||
|
||||
if(prob(25))
|
||||
to_chat(target, "<span class='notice'>[user]'s prayer to [ticker.Bible_deity_name] has eased your pain!</span>")
|
||||
to_chat(target, "<span class='notice'>[user]'s prayer to [SSticker.Bible_deity_name] has eased your pain!</span>")
|
||||
target.adjustToxLoss(-5)
|
||||
target.adjustOxyLoss(-5)
|
||||
target.adjustBruteLoss(-5)
|
||||
@@ -480,7 +480,7 @@
|
||||
praying = 0
|
||||
|
||||
else
|
||||
to_chat(user, "<span class='notice'>Your prayer to [ticker.Bible_deity_name] was interrupted.</span>")
|
||||
to_chat(user, "<span class='notice'>Your prayer to [SSticker.Bible_deity_name] was interrupted.</span>")
|
||||
praying = 0
|
||||
|
||||
/obj/item/nullrod/rosary/process()
|
||||
@@ -506,13 +506,13 @@
|
||||
/obj/item/nullrod/salt/attack_self(mob/user)
|
||||
|
||||
if(!user.mind || !user.mind.isholy)
|
||||
to_chat(user, "<span class='notice'>You are not close enough with [ticker.Bible_deity_name] to use [src].</span>")
|
||||
to_chat(user, "<span class='notice'>You are not close enough with [SSticker.Bible_deity_name] to use [src].</span>")
|
||||
return
|
||||
|
||||
if(!(ghostcall_CD > world.time))
|
||||
ghostcall_CD = world.time + 3000 //deciseconds..5 minutes
|
||||
user.visible_message("<span class='info'>[user] kneels and begins to utter a prayer to [ticker.Bible_deity_name] while drawing a circle with salt!</span>", \
|
||||
"<span class='info'>You kneel and begin a prayer to [ticker.Bible_deity_name] while drawing a circle!</span>")
|
||||
user.visible_message("<span class='info'>[user] kneels and begins to utter a prayer to [SSticker.Bible_deity_name] while drawing a circle with salt!</span>", \
|
||||
"<span class='info'>You kneel and begin a prayer to [SSticker.Bible_deity_name] while drawing a circle!</span>")
|
||||
notify_ghosts("The Chaplain is calling ghosts to [get_area(src)] with [name]!", source = src)
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You need to wait before using [src] again.</span>")
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "An alarm which monitors host vital signs and transmits a radio message upon death."
|
||||
var/mobname = "Will Robinson"
|
||||
activated = 0
|
||||
var/static/list/stealth_areas = typecacheof(list(/area/syndicate_station, /area/syndicate_mothership, /area/shuttle/syndicate_elite))
|
||||
var/static/list/stealth_areas = typecacheof(list(/area/syndicate_mothership, /area/shuttle/syndicate_elite))
|
||||
|
||||
/obj/item/implant/death_alarm/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
|
||||
@@ -19,14 +19,14 @@
|
||||
|
||||
/obj/item/implant/mindshield/implant(mob/target)
|
||||
if(..())
|
||||
if(target.mind in ticker.mode.head_revolutionaries || is_shadow_or_thrall(target))
|
||||
if(target.mind in SSticker.mode.head_revolutionaries || is_shadow_or_thrall(target))
|
||||
target.visible_message("<span class='warning'>[target] seems to resist the implant!</span>", "<span class='warning'>You feel the corporate tendrils of Nanotrasen try to invade your mind!</span>")
|
||||
removed(target, 1)
|
||||
qdel(src)
|
||||
return -1
|
||||
if(target.mind in ticker.mode.revolutionaries)
|
||||
ticker.mode.remove_revolutionary(target.mind)
|
||||
if(target.mind in ticker.mode.cult)
|
||||
if(target.mind in SSticker.mode.revolutionaries)
|
||||
SSticker.mode.remove_revolutionary(target.mind)
|
||||
if(target.mind in SSticker.mode.cult)
|
||||
to_chat(target, "<span class='warning'>You feel the corporate tendrils of Nanotrasen try to invade your mind!</span>")
|
||||
else
|
||||
to_chat(target, "<span class='notice'>Your mind feels hardened - more resistant to brainwashing.</span>")
|
||||
|
||||
@@ -45,15 +45,15 @@
|
||||
return -1
|
||||
H.implanting = 1
|
||||
to_chat(H, "<span class='notice'>You feel completely loyal to [user.name].</span>")
|
||||
if(!(user.mind in ticker.mode.implanter))
|
||||
ticker.mode.implanter[ref] = list()
|
||||
implanters = ticker.mode.implanter[ref]
|
||||
if(!(user.mind in SSticker.mode.implanter))
|
||||
SSticker.mode.implanter[ref] = list()
|
||||
implanters = SSticker.mode.implanter[ref]
|
||||
implanters.Add(H.mind)
|
||||
ticker.mode.implanted.Add(H.mind)
|
||||
ticker.mode.implanted[H.mind] = user.mind
|
||||
//ticker.mode.implanter[user.mind] += H.mind
|
||||
ticker.mode.implanter[ref] = implanters
|
||||
ticker.mode.traitors += H.mind
|
||||
SSticker.mode.implanted.Add(H.mind)
|
||||
SSticker.mode.implanted[H.mind] = user.mind
|
||||
//SSticker.mode.implanter[user.mind] += H.mind
|
||||
SSticker.mode.implanter[ref] = implanters
|
||||
SSticker.mode.traitors += H.mind
|
||||
H.mind.special_role = SPECIAL_ROLE_TRAITOR
|
||||
to_chat(H, "<span class='warning'><B>You're now completely loyal to [user.name]!</B> You now must lay down your life to protect [user.p_them()] and assist in [user.p_their()] goals at any cost.</span>")
|
||||
var/datum/objective/protect/mindslave/MS = new
|
||||
@@ -64,8 +64,8 @@
|
||||
for(var/datum/objective/objective in H.mind.objectives)
|
||||
to_chat(H, "<B>Objective #1</B>: [objective.explanation_text]")
|
||||
|
||||
ticker.mode.update_traitor_icons_added(user.mind)
|
||||
ticker.mode.update_traitor_icons_added(H.mind)//handles datahuds/observerhuds
|
||||
SSticker.mode.update_traitor_icons_added(user.mind)
|
||||
SSticker.mode.update_traitor_icons_added(H.mind)//handles datahuds/observerhuds
|
||||
|
||||
if(user.mind.som)//do not add if not a traitor..and you just picked up an implanter in the hall...
|
||||
var/datum/mindslaves/slaved = user.mind.som
|
||||
@@ -77,12 +77,12 @@
|
||||
log_admin("[key_name(user)] has mind-slaved [key_name(H)].")
|
||||
activated = 1
|
||||
if(jobban_isbanned(M, ROLE_SYNDICATE))
|
||||
ticker.mode.replace_jobbanned_player(M, ROLE_SYNDICATE)
|
||||
SSticker.mode.replace_jobbanned_player(M, ROLE_SYNDICATE)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/implant/traitor/removed(mob/target)
|
||||
if(..())
|
||||
ticker.mode.remove_traitor_mind(target.mind)
|
||||
SSticker.mode.remove_traitor_mind(target.mind)
|
||||
return 1
|
||||
return 0
|
||||
@@ -27,7 +27,7 @@
|
||||
if(user)
|
||||
user.update_inv_l_hand()
|
||||
user.update_inv_r_hand()
|
||||
if(user.mind in ticker.mode.wizards)
|
||||
if(user.mind in SSticker.mode.wizards)
|
||||
user.flying = wielded ? 1 : 0
|
||||
if(wielded)
|
||||
to_chat(user, "<span class='notice'>You hold \the [src] between your legs.</span>")
|
||||
|
||||
@@ -4,23 +4,22 @@
|
||||
icon = 'icons/obj/clothing/belts.dmi'
|
||||
icon_state = "utilitybelt"
|
||||
item_state = "utility"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/belt_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/belt_righthand.dmi'
|
||||
slot_flags = SLOT_BELT
|
||||
attack_verb = list("whipped", "lashed", "disciplined")
|
||||
var/use_item_overlays = 0 // Do we have overlays for items held inside the belt?
|
||||
|
||||
|
||||
/obj/item/storage/belt/update_icon()
|
||||
if(use_item_overlays)
|
||||
overlays.Cut()
|
||||
for(var/obj/item/I in contents)
|
||||
overlays += "[I.name]"
|
||||
|
||||
..()
|
||||
|
||||
/obj/item/storage/belt/proc/can_use()
|
||||
return is_equipped()
|
||||
|
||||
|
||||
/obj/item/storage/belt/MouseDrop(obj/over_object as obj, src_location, over_location)
|
||||
var/mob/M = usr
|
||||
if(!istype(over_object, /obj/screen))
|
||||
@@ -68,7 +67,7 @@
|
||||
new /obj/item/weldingtool(src)
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/stack/cable_coil(src, 30, pick(COLOR_RED, COLOR_YELLOW, COLOR_ORANGE))
|
||||
new /obj/item/stack/cable_coil/random(src, 30)
|
||||
update_icon()
|
||||
|
||||
/obj/item/storage/belt/utility/full/multitool/New()
|
||||
@@ -99,7 +98,7 @@
|
||||
new /obj/item/crowbar/power(src)
|
||||
new /obj/item/weldingtool/experimental(src)//This can be changed if this is too much
|
||||
new /obj/item/multitool(src)
|
||||
new /obj/item/stack/cable_coil(src, 30, pick(COLOR_RED, COLOR_YELLOW, COLOR_ORANGE))
|
||||
new /obj/item/stack/cable_coil/random(src, 30)
|
||||
new /obj/item/extinguisher/mini(src)
|
||||
new /obj/item/analyzer(src)
|
||||
update_icon()
|
||||
@@ -184,7 +183,6 @@
|
||||
new /obj/item/reagent_containers/food/pill/salicylic(src)
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/storage/belt/botany
|
||||
name = "botanist belt"
|
||||
desc = "Can hold various botanical supplies."
|
||||
@@ -207,7 +205,6 @@
|
||||
/obj/item/wrench,
|
||||
)
|
||||
|
||||
|
||||
/obj/item/storage/belt/security
|
||||
name = "security belt"
|
||||
desc = "Can hold security gear like handcuffs and flashes."
|
||||
@@ -472,7 +469,6 @@
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/storage/belt/holster
|
||||
name = "shoulder holster"
|
||||
desc = "A holster to conceal a carried handgun. WARNING: Badasses only."
|
||||
@@ -510,7 +506,6 @@
|
||||
W.charges = W.max_charges
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/storage/belt/fannypack
|
||||
name = "fannypack"
|
||||
desc = "A dorky fannypack for keeping small items in."
|
||||
@@ -599,7 +594,6 @@
|
||||
// Bluespace Belt
|
||||
// -------------------------------------
|
||||
|
||||
|
||||
/obj/item/storage/belt/bluespace
|
||||
name = "Belt of Holding"
|
||||
desc = "The greatest in pants-supporting technology."
|
||||
@@ -632,8 +626,6 @@
|
||||
var/bolacount = 0
|
||||
var/cooldown = 0
|
||||
|
||||
|
||||
|
||||
/obj/item/storage/belt/bluespace/owlman/New()
|
||||
..()
|
||||
new /obj/item/grenade/smokebomb(src)
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
else
|
||||
M.LAssailant = user
|
||||
|
||||
if(!(istype(user, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey")
|
||||
if(!(istype(user, /mob/living/carbon/human) || SSticker) && SSticker.mode.name != "monkey")
|
||||
to_chat(user, "<span class='warning'>You don't have the dexterity to do this!</span>")
|
||||
return
|
||||
if(!user.mind || !user.mind.isholy)
|
||||
|
||||
@@ -151,8 +151,8 @@
|
||||
src.boxes.screen_loc = "[tx]:,[ty] to [mx],[my]"
|
||||
for(var/obj/O in src.contents)
|
||||
O.screen_loc = "[cx],[cy]"
|
||||
O.layer = 20
|
||||
O.plane = HUD_PLANE
|
||||
O.layer = ABOVE_HUD_LAYER
|
||||
O.plane = ABOVE_HUD_PLANE
|
||||
cx++
|
||||
if(cx > mx)
|
||||
cx = tx
|
||||
@@ -171,8 +171,8 @@
|
||||
ND.sample_object.mouse_opacity = MOUSE_OPACITY_OPAQUE
|
||||
ND.sample_object.screen_loc = "[cx]:16,[cy]:16"
|
||||
ND.sample_object.maptext = "<font color='white'>[(ND.number > 1)? "[ND.number]" : ""]</font>"
|
||||
ND.sample_object.layer = 20
|
||||
ND.sample_object.plane = HUD_PLANE
|
||||
ND.sample_object.layer = ABOVE_HUD_LAYER
|
||||
ND.sample_object.plane = ABOVE_HUD_PLANE
|
||||
cx++
|
||||
if(cx > (4+cols))
|
||||
cx = 4
|
||||
@@ -182,8 +182,8 @@
|
||||
O.mouse_opacity = MOUSE_OPACITY_OPAQUE //This is here so storage items that spawn with contents correctly have the "click around item to equip"
|
||||
O.screen_loc = "[cx]:16,[cy]:16"
|
||||
O.maptext = ""
|
||||
O.layer = 20
|
||||
O.plane = HUD_PLANE
|
||||
O.layer = ABOVE_HUD_LAYER
|
||||
O.plane = ABOVE_HUD_PLANE
|
||||
cx++
|
||||
if(cx > (4+cols))
|
||||
cx = 4
|
||||
@@ -312,6 +312,7 @@
|
||||
if(usr.s_active)
|
||||
usr.s_active.show_to(usr)
|
||||
W.mouse_opacity = MOUSE_OPACITY_OPAQUE //So you can click on the area around the item to equip it, instead of having to pixel hunt
|
||||
W.in_inventory = TRUE
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
@@ -332,8 +333,8 @@
|
||||
if(ismob(loc))
|
||||
W.dropped(usr)
|
||||
if(ismob(new_location))
|
||||
W.layer = 20
|
||||
W.plane = HUD_PLANE
|
||||
W.layer = ABOVE_HUD_LAYER
|
||||
W.plane = ABOVE_HUD_PLANE
|
||||
else
|
||||
W.layer = initial(W.layer)
|
||||
W.plane = initial(W.plane)
|
||||
@@ -447,17 +448,18 @@
|
||||
else
|
||||
verbs -= /obj/item/storage/verb/toggle_gathering_mode
|
||||
|
||||
src.boxes = new /obj/screen/storage( )
|
||||
src.boxes.name = "storage"
|
||||
src.boxes.master = src
|
||||
src.boxes.icon_state = "block"
|
||||
src.boxes.screen_loc = "7,7 to 10,8"
|
||||
src.boxes.layer = 19
|
||||
src.closer = new /obj/screen/close( )
|
||||
src.closer.master = src
|
||||
src.closer.icon_state = "x"
|
||||
src.closer.layer = 20
|
||||
src.closer.plane = HUD_PLANE
|
||||
boxes = new /obj/screen/storage( )
|
||||
boxes.name = "storage"
|
||||
boxes.master = src
|
||||
boxes.icon_state = "block"
|
||||
boxes.screen_loc = "7,7 to 10,8"
|
||||
boxes.layer = HUD_LAYER
|
||||
boxes.plane = HUD_PLANE
|
||||
closer = new /obj/screen/close( )
|
||||
closer.master = src
|
||||
closer.icon_state = "x"
|
||||
closer.layer = ABOVE_HUD_LAYER
|
||||
closer.plane = ABOVE_HUD_PLANE
|
||||
orient2hud()
|
||||
|
||||
/obj/item/storage/Destroy()
|
||||
@@ -469,7 +471,7 @@
|
||||
return ..()
|
||||
|
||||
/obj/item/storage/emp_act(severity)
|
||||
if(!istype(src.loc, /mob/living))
|
||||
if(!istype(loc, /mob/living))
|
||||
for(var/obj/O in contents)
|
||||
O.emp_act(severity)
|
||||
..()
|
||||
|
||||
Reference in New Issue
Block a user