mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-18 02:25:06 +01:00
@@ -50,12 +50,12 @@ would spawn and follow the beaker, even if it is carried or thrown.
|
||||
// to something, like a smoking beaker, so then you can just call start() and the steam
|
||||
// will always spawn at the items location, even if it's moved.
|
||||
|
||||
/* Example:
|
||||
var/datum/effect/system/steam_spread/steam = new /datum/effect/system/steam_spread() -- creates new system
|
||||
steam.set_up(5, 0, mob.loc) -- sets up variables
|
||||
OPTIONAL: steam.attach(mob)
|
||||
steam.start() -- spawns the effect
|
||||
*/
|
||||
/** Example:
|
||||
* var/datum/effect/system/steam_spread/steam = new /datum/effect/system/steam_spread() -- creates new system
|
||||
* steam.set_up(5, 0, mob.loc) -- sets up variables
|
||||
* OPTIONAL: steam.attach(mob)
|
||||
* steam.start() -- spawns the effect
|
||||
**/
|
||||
/////////////////////////////////////////////
|
||||
/obj/effect/effect/steam
|
||||
name = "steam"
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
/*****************Marker Beacons**************************/
|
||||
var/list/marker_beacon_colors = list(
|
||||
"Burgundy" = LIGHT_COLOR_FLARE,
|
||||
"Bronze" = LIGHT_COLOR_ORANGE,
|
||||
"Yellow" = LIGHT_COLOR_YELLOW,
|
||||
"Lime" = LIGHT_COLOR_SLIME_LAMP,
|
||||
"Olive" = LIGHT_COLOR_GREEN,
|
||||
"Jade" = LIGHT_COLOR_BLUEGREEN,
|
||||
"Teal" = LIGHT_COLOR_LIGHT_CYAN,
|
||||
"Cerulean" = LIGHT_COLOR_BLUE,
|
||||
"Indigo" = LIGHT_COLOR_DARK_BLUE,
|
||||
"Purple" = LIGHT_COLOR_PURPLE,
|
||||
"Violet" = LIGHT_COLOR_LAVENDER,
|
||||
"Fuchsia" = LIGHT_COLOR_PINK
|
||||
)
|
||||
GLOBAL_LIST_INIT(marker_beacon_colors, list(
|
||||
"Burgundy" = LIGHT_COLOR_FLARE,
|
||||
"Bronze" = LIGHT_COLOR_ORANGE,
|
||||
"Yellow" = LIGHT_COLOR_YELLOW,
|
||||
"Lime" = LIGHT_COLOR_SLIME_LAMP,
|
||||
"Olive" = LIGHT_COLOR_GREEN,
|
||||
"Jade" = LIGHT_COLOR_BLUEGREEN,
|
||||
"Teal" = LIGHT_COLOR_LIGHT_CYAN,
|
||||
"Cerulean" = LIGHT_COLOR_BLUE,
|
||||
"Indigo" = LIGHT_COLOR_DARK_BLUE,
|
||||
"Purple" = LIGHT_COLOR_PURPLE,
|
||||
"Violet" = LIGHT_COLOR_LAVENDER,
|
||||
"Fuchsia" = LIGHT_COLOR_PINK
|
||||
))
|
||||
|
||||
/obj/item/stack/marker_beacon
|
||||
name = "marker beacons"
|
||||
@@ -73,7 +73,7 @@ var/list/marker_beacon_colors = list(
|
||||
if(!in_range(src, user))
|
||||
return
|
||||
|
||||
var/options = marker_beacon_colors.Copy()
|
||||
var/options = GLOB.marker_beacon_colors.Copy()
|
||||
options += list("Random" = FALSE) //not a true color, will pick a random color
|
||||
var/input_color = tgui_input_list(user, "Choose a color.", "Beacon Color", options)
|
||||
if(user.incapacitated() || !istype(user) || !in_range(src, user))
|
||||
@@ -111,10 +111,10 @@ var/list/marker_beacon_colors = list(
|
||||
. += span_notice("Alt-click to select a color. Current color is [picked_color].")
|
||||
|
||||
/obj/structure/marker_beacon/update_icon()
|
||||
if(!picked_color || !marker_beacon_colors[picked_color])
|
||||
picked_color = pick(marker_beacon_colors)
|
||||
if(!picked_color || !GLOB.marker_beacon_colors[picked_color])
|
||||
picked_color = pick(GLOB.marker_beacon_colors)
|
||||
icon_state = "[icon_base][lowertext(picked_color)]-on"
|
||||
set_light(light_range, light_power, marker_beacon_colors[picked_color])
|
||||
set_light(light_range, light_power, GLOB.marker_beacon_colors[picked_color])
|
||||
|
||||
/obj/structure/marker_beacon/attack_hand(mob/living/user)
|
||||
if(perma)
|
||||
@@ -152,7 +152,7 @@ var/list/marker_beacon_colors = list(
|
||||
if(!in_range(src, user))
|
||||
return
|
||||
|
||||
var/options = marker_beacon_colors.Copy()
|
||||
var/options = GLOB.marker_beacon_colors.Copy()
|
||||
options += list("Random" = FALSE) //not a true color, will pick a random color
|
||||
var/input_color = tgui_input_list(user, "Choose a color.", "Beacon Color", options)
|
||||
if(user.incapacitated() || !istype(user) || !in_range(src, user))
|
||||
|
||||
@@ -117,7 +117,6 @@
|
||||
user.drop_l_hand()
|
||||
user.stop_pulling()
|
||||
|
||||
var/last_chew = 0
|
||||
/mob/living/carbon/human/RestrainedClickOn(var/atom/A)
|
||||
if (A != src) return ..()
|
||||
if (last_chew + 26 > world.time) return
|
||||
|
||||
@@ -26,8 +26,13 @@
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
|
||||
var/list/image/hazard_overlays
|
||||
var/list/tape_roll_applications = list()
|
||||
GLOBAL_LIST_INIT_TYPED(hazard_overlays, /image, list(
|
||||
"[NORTH]" = new/image('icons/effects/warning_stripes.dmi', icon_state = "N"),
|
||||
"[EAST]" = new/image('icons/effects/warning_stripes.dmi', icon_state = "E"),
|
||||
"[SOUTH]" = new/image('icons/effects/warning_stripes.dmi', icon_state = "S"),
|
||||
"[WEST]" = new/image('icons/effects/warning_stripes.dmi', icon_state = "W")
|
||||
))
|
||||
GLOBAL_LIST_EMPTY(tape_roll_applications)
|
||||
|
||||
/obj/item/tape
|
||||
name = "tape"
|
||||
@@ -55,12 +60,6 @@ var/list/tape_roll_applications = list()
|
||||
|
||||
/obj/item/tape/Initialize(mapload)
|
||||
. = ..()
|
||||
if(!hazard_overlays)
|
||||
hazard_overlays = list()
|
||||
hazard_overlays["[NORTH]"] = new/image('icons/effects/warning_stripes.dmi', icon_state = "N")
|
||||
hazard_overlays["[EAST]"] = new/image('icons/effects/warning_stripes.dmi', icon_state = "E")
|
||||
hazard_overlays["[SOUTH]"] = new/image('icons/effects/warning_stripes.dmi', icon_state = "S")
|
||||
hazard_overlays["[WEST]"] = new/image('icons/effects/warning_stripes.dmi', icon_state = "W")
|
||||
update_icon()
|
||||
|
||||
/obj/item/taperoll/medical
|
||||
@@ -301,18 +300,18 @@ var/list/tape_roll_applications = list()
|
||||
if (istype(A, /turf/simulated/floor) ||istype(A, /turf/unsimulated/floor))
|
||||
var/turf/F = A
|
||||
var/direction = user.loc == F ? user.dir : turn(user.dir, 180)
|
||||
var/icon/hazard_overlay = hazard_overlays["[direction]"]
|
||||
if(tape_roll_applications[F] == null)
|
||||
tape_roll_applications[F] = 0
|
||||
var/icon/hazard_overlay = GLOB.hazard_overlays["[direction]"]
|
||||
if(GLOB.tape_roll_applications[F] == null)
|
||||
GLOB.tape_roll_applications[F] = 0
|
||||
|
||||
if(tape_roll_applications[F] & direction) // hazard_overlay in F.overlays wouldn't work.
|
||||
if(GLOB.tape_roll_applications[F] & direction) // hazard_overlay in F.overlays wouldn't work.
|
||||
user.visible_message("\The [user] uses the adhesive of \the [src] to remove area markings from \the [F].", "You use the adhesive of \the [src] to remove area markings from \the [F].")
|
||||
F.cut_overlay(hazard_overlay)
|
||||
tape_roll_applications[F] &= ~direction
|
||||
GLOB.tape_roll_applications[F] &= ~direction
|
||||
else
|
||||
user.visible_message("\The [user] applied \the [src] on \the [F] to create area markings.", "You apply \the [src] on \the [F] to create area markings.")
|
||||
F.add_overlay(hazard_overlay)
|
||||
tape_roll_applications[F] |= direction
|
||||
GLOB.tape_roll_applications[F] |= direction
|
||||
return
|
||||
|
||||
/obj/item/tape/proc/crumple()
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
// Multi Point Spawn
|
||||
// Selects one spawn point out of a group of points with the same ID and asks it to generate its items
|
||||
*/
|
||||
var/list/multi_point_spawns
|
||||
GLOBAL_LIST_EMPTY(multi_point_spawns)
|
||||
|
||||
/obj/random_multi
|
||||
name = "random object spawn point"
|
||||
@@ -114,19 +114,17 @@ var/list/multi_point_spawns
|
||||
. = ..()
|
||||
weight = max(1, round(weight))
|
||||
|
||||
if(!multi_point_spawns)
|
||||
multi_point_spawns = list()
|
||||
var/list/spawnpoints = multi_point_spawns[id]
|
||||
var/list/spawnpoints = GLOB.multi_point_spawns[id]
|
||||
if(!spawnpoints)
|
||||
spawnpoints = list()
|
||||
multi_point_spawns[id] = spawnpoints
|
||||
GLOB.multi_point_spawns[id] = spawnpoints
|
||||
spawnpoints[src] = weight
|
||||
|
||||
/obj/random_multi/Destroy()
|
||||
var/list/spawnpoints = multi_point_spawns[id]
|
||||
var/list/spawnpoints = GLOB.multi_point_spawns[id]
|
||||
spawnpoints -= src
|
||||
if(!spawnpoints.len)
|
||||
multi_point_spawns -= id
|
||||
if(!length(spawnpoints))
|
||||
GLOB.multi_point_spawns -= id
|
||||
. = ..()
|
||||
|
||||
/obj/random_multi/proc/generate_items()
|
||||
|
||||
Reference in New Issue
Block a user