bunch of global vars (#19091)

* bunch of global vars

* .
This commit is contained in:
Kashargul
2026-01-25 22:18:03 +01:00
committed by GitHub
parent 2f810d0f3e
commit de17517e42
92 changed files with 328 additions and 438 deletions
+19 -19
View File
@@ -1,5 +1,5 @@
//admin verb groups - They can overlap if you so wish. Only one of each verb will exist in the verbs list regardless
var/list/admin_verbs_admin = list(
GLOBAL_LIST_INIT(admin_verbs_admin, list(
/client/proc/toggle_vantag_hud,
/datum/admins/proc/set_tcrystals,
/datum/admins/proc/add_tcrystals,
@@ -87,17 +87,17 @@ var/list/admin_verbs_admin = list(
/client/proc/toggle_spawning_with_recolour,
/client/proc/start_vote,
/client/proc/hide_motion_tracker_feedback
)
))
var/list/admin_verbs_sounds = list(
GLOBAL_LIST_INIT(admin_verbs_sounds, list(
/client/proc/play_local_sound,
/client/proc/play_sound,
/client/proc/play_server_sound,
/client/proc/play_web_sound,
/client/proc/play_z_sound
)
))
var/list/admin_verbs_fun = list(
GLOBAL_LIST_INIT(admin_verbs_fun, list(
/client/proc/object_talk,
/datum/admins/proc/cmd_admin_dress,
/client/proc/drop_bomb,
@@ -119,10 +119,9 @@ var/list/admin_verbs_fun = list(
/client/proc/getPlayerStatus,
/client/proc/manage_event_triggers,
/client/proc/fake_pdaconvos
))
)
var/list/admin_verbs_spawn = list(
GLOBAL_LIST_INIT(admin_verbs_spawn, list(
/datum/admins/proc/spawn_fruit,
/datum/admins/proc/spawn_custom_item,
/datum/admins/proc/check_custom_items,
@@ -143,9 +142,9 @@ var/list/admin_verbs_spawn = list(
/client/proc/AdminCreateVirus,
/client/proc/ReleaseVirus,
/client/proc/spawn_reagent
)
))
var/list/admin_verbs_server = list(
GLOBAL_LIST_INIT(admin_verbs_server, list(
/datum/admins/proc/capture_map,
/client/proc/Set_Holiday,
/client/proc/ToRban,
@@ -170,9 +169,9 @@ var/list/admin_verbs_server = list(
/client/proc/panicbunker,
/client/proc/paranoia_logging,
/client/proc/ip_reputation
)
))
var/list/admin_verbs_debug = list(
GLOBAL_LIST_INIT(admin_verbs_debug, list(
/client/proc/cmd_admin_list_open_jobs,
/client/proc/Debug2,
/client/proc/kill_air,
@@ -219,10 +218,10 @@ var/list/admin_verbs_debug = list(
/datum/admins/proc/view_feedback,
/client/proc/stop_sounds,
/client/proc/spawn_reagent
)
))
//verbs which can be hidden - needs work
var/list/admin_verbs_hideable = list(
GLOBAL_LIST_INIT(admin_verbs_hideable, list(
// /client/proc/deadchat,
/datum/admins/proc/show_traitor_panel,
/datum/admins/proc/toggleenter,
@@ -285,8 +284,9 @@ var/list/admin_verbs_hideable = list(
/datum/admins/proc/set_uplink,
/datum/admins/proc/set_tcrystals,
/client/proc/stop_sounds
)
var/list/admin_verbs_mod = list(
))
GLOBAL_LIST_INIT(admin_verbs_mod, list(
/client/proc/cmd_admin_pm_context, //right-click adminPM interface,
/client/proc/cmd_admin_pm_panel, //admin-pm list,
/datum/admins/proc/PlayerNotes,
@@ -309,9 +309,9 @@ var/list/admin_verbs_mod = list(
/datum/admins/proc/sendFax,
/datum/admins/proc/view_persistent_data,
/client/proc/start_vote
)
))
var/list/admin_verbs_event_manager = list(
GLOBAL_LIST_INIT(admin_verbs_event_manager, list(
/client/proc/toggle_vantag_hud,
/client/proc/cmd_admin_pm_context,
/client/proc/cmd_admin_pm_panel,
@@ -440,4 +440,4 @@ var/list/admin_verbs_event_manager = list(
/client/proc/hide_motion_tracker_feedback,
/client/proc/modify_event_collector,
/client/proc/induce_malfunction
)
))
+16 -16
View File
@@ -3,14 +3,14 @@
var/rights = holder.rank_flags()
if(rights & R_HOLDER)
if(rights & R_BUILDMODE) add_verb(src, /client/proc/togglebuildmodeself)
if(rights & R_ADMIN) add_verb(src, admin_verbs_admin)
if(rights & R_FUN) add_verb(src, admin_verbs_fun)
if(rights & R_SERVER) add_verb(src, admin_verbs_server)
if(rights & R_DEBUG) add_verb(src, admin_verbs_debug)
if(rights & R_SOUNDS) add_verb(src, admin_verbs_sounds)
if(rights & R_SPAWN) add_verb(src, admin_verbs_spawn)
if(rights & R_MOD) add_verb(src, admin_verbs_mod)
if(rights & R_EVENT) add_verb(src, admin_verbs_event_manager)
if(rights & R_ADMIN) add_verb(src, GLOB.admin_verbs_admin)
if(rights & R_FUN) add_verb(src, GLOB.admin_verbs_fun)
if(rights & R_SERVER) add_verb(src, GLOB.admin_verbs_server)
if(rights & R_DEBUG) add_verb(src, GLOB.admin_verbs_debug)
if(rights & R_SOUNDS) add_verb(src, GLOB.admin_verbs_sounds)
if(rights & R_SPAWN) add_verb(src, GLOB.admin_verbs_spawn)
if(rights & R_MOD) add_verb(src, GLOB.admin_verbs_mod)
if(rights & R_EVENT) add_verb(src, GLOB.admin_verbs_event_manager)
// NEW ADMIN VERBS SYSTEM
SSadmin_verbs.assosciate_admin(src)
@@ -19,13 +19,13 @@
// OLD ADMIN VERB SYSTEM
remove_verb(src, list(
/client/proc/togglebuildmodeself,
admin_verbs_admin,
admin_verbs_fun,
admin_verbs_server,
admin_verbs_debug,
admin_verbs_sounds,
admin_verbs_spawn,
debug_verbs
GLOB.admin_verbs_admin,
GLOB.admin_verbs_fun,
GLOB.admin_verbs_server,
GLOB.admin_verbs_debug,
GLOB.admin_verbs_sounds,
GLOB.admin_verbs_spawn,
GLOB.debug_verbs
))
// NEW ADMIN VERBS SYSTEM
@@ -35,7 +35,7 @@
set name = "Adminverbs - Hide Most"
set category = "Admin.Misc"
remove_verb(src, list(/client/proc/hide_most_verbs, admin_verbs_hideable))
remove_verb(src, list(/client/proc/hide_most_verbs, GLOB.admin_verbs_hideable))
add_verb(src, /client/proc/show_verbs)
to_chat(src, span_filter_system(span_interface("Most of your adminverbs have been hidden.")))
+4 -4
View File
@@ -128,7 +128,7 @@ GLOBAL_LIST_BOILERPLATE(all_debugging_effects, /obj/effect/debugging)
qdel(F)
feedback_add_details("admin_verb","mIRD") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
var/list/debug_verbs = list (
GLOBAL_LIST_INIT(debug_verbs, list(
/client/proc/do_not_use_these
,/client/proc/camera_view
,/client/proc/sec_camera_report
@@ -159,7 +159,7 @@ var/list/debug_verbs = list (
,/client/proc/atmos_toggle_debug
,/client/proc/spawn_tanktransferbomb
,/client/proc/take_picture
)
))
/client/proc/enable_debug_verbs()
@@ -168,7 +168,7 @@ var/list/debug_verbs = list (
if(!check_rights(R_DEBUG)) return
add_verb(src, debug_verbs)
add_verb(src, GLOB.debug_verbs)
feedback_add_details("admin_verb","mDV") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -178,7 +178,7 @@ var/list/debug_verbs = list (
if(!check_rights(R_DEBUG)) return
remove_verb(src, debug_verbs)
remove_verb(src, GLOB.debug_verbs)
feedback_add_details("admin_verb","hDV") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
+2 -2
View File
@@ -154,10 +154,10 @@ ADMIN_VERB(secrets, R_HOLDER, "Secrets", "Abuse harder than you ever have before
SSnightshift.update_nightshift(active = FALSE, announce = TRUE, forced = TRUE)
if("trigger_xenomorph_infestation")
xenomorphs.attempt_random_spawn()
GLOB.xenomorphs.attempt_random_spawn()
if("trigger_cortical_borer_infestation")
borers.attempt_random_spawn()
GLOB.borers.attempt_random_spawn()
if("jump_shuttle")
var/shuttle_tag = tgui_input_list(holder, "Which shuttle do you want to jump?", "Shuttle Choice", SSshuttles.shuttles)
+4 -4
View File
@@ -24,9 +24,9 @@
switch(choice)
if("Heavy Asset Protection")
team = deathsquad
team = GLOB.deathsquad
if("Mercenaries")
team = commandos
team = GLOB.commandos
else
return
@@ -111,10 +111,10 @@ GLOBAL_VAR_INIT(silent_ert, 0)
if(jobban_isbanned(usr, JOB_SYNDICATE) || jobban_isbanned(usr, JOB_EMERGENCY_RESPONSE_TEAM) || jobban_isbanned(usr, JOB_SECURITY_OFFICER))
to_chat(usr, span_danger("You are jobbanned from the emergency reponse team!"))
return
if(ert.current_antagonists.len >= ert.hard_cap)
if(GLOB.ert.current_antagonists.len >= GLOB.ert.hard_cap)
to_chat(usr, "The emergency response team is already full!")
return
ert.create_default(usr)
GLOB.ert.create_default(usr)
else
to_chat(usr, "You need to be an observer or new player to use this.")
+2 -2
View File
@@ -46,10 +46,10 @@ GLOBAL_VAR_INIT(can_call_traders, 1)
if(!GLOB.send_beruang)
to_chat(usr, "The Beruang is not currently heading to the station.")
return
if(traders.current_antagonists.len >= traders.hard_cap)
if(GLOB.traders.current_antagonists.len >= GLOB.traders.hard_cap)
to_chat(usr, "The number of trader slots is already full!")
return
traders.create_default(usr)
GLOB.traders.create_default(usr)
else
to_chat(usr, "You need to be an observer or new player to use this.")
+1 -1
View File
@@ -34,7 +34,7 @@
// Step 1, find out what we can see.
/datum/ai_holder/proc/list_targets()
. = ohearers(vision_range, holder)
. -= dview_mob // Not the dview mob!
. -= GLOB.dview_mob // Not the dview mob!
var/static/hostile_machines = typecacheof(list(/obj/machinery/porta_turret, /obj/mecha, /obj/structure/blob))
+4 -4
View File
@@ -223,12 +223,12 @@
if(tmr.timing)
to_chat(usr, span_notice("Clock is ticking already."))
else
var/ntime = tgui_input_number(usr, "Enter desired time in seconds", "Time", "5", 1000, 0)
if (ntime>0 && ntime<1000)
var/ntime = tgui_input_number(usr, "Enter desired time in seconds", "Time", 5, 1000, 0)
if (ntime > 0 && ntime < 1000)
tmr.time = ntime
name = initial(name) + "([tmr.time] secs)"
to_chat(usr, span_notice("Timer set to [tmr.time] seconds."))
else
to_chat(usr, span_notice("Timer can't be [ntime<=0?"negative":"more than 1000 seconds"]."))
to_chat(usr, span_notice("Timer can't be [ntime <= 0 ? "negative" : "more than 1000 seconds"]."))
else
to_chat(usr, span_notice("You cannot do this while [usr.stat?"unconscious/dead":"restrained"]."))
to_chat(usr, span_notice("You cannot do this while [usr.stat ? "unconscious/dead" : "restrained"]."))
@@ -3,4 +3,4 @@
load_immediately = TRUE
/datum/asset/spritesheet_batched/chat/create_spritesheets()
insert_all_icons("", text_tag_icons, prefix_with_dirs = FALSE) // OOC, LOOC ect icons
insert_all_icons("", GLOB.text_tag_icons, prefix_with_dirs = FALSE) // OOC, LOOC ect icons
@@ -205,7 +205,7 @@
SEND_SOUND(user, S)
if("customize_species_sounds") // You shouldn't be able to see this option if you don't have the option to select a custom icon base, so we don't need to re-check for safety here.
var/list/possible_species_sound_types = species_sound_map
var/list/possible_species_sound_types = GLOB.species_sound_map
var/choice = tgui_input_list(user, "Which set of sounds would you like to use for your character's species sounds? (Cough, Sneeze, Scream, Pain, Gasp, Death)", "Species Sounds", possible_species_sound_types)
if(choice)
pref.species_sound = choice
@@ -5,10 +5,10 @@
should_generate_icons = TRUE
/datum/preference/choiced/ui_style/init_possible_values()
return assoc_to_keys(all_ui_styles)
return assoc_to_keys(GLOB.all_ui_styles)
/datum/preference/choiced/ui_style/icon_for(value)
var/icon/icon_file = all_ui_styles[value]
var/icon/icon_file = GLOB.all_ui_styles[value]
var/icon/icon = icon(icon_file, "r_hand_inactive")
icon.Crop(1, 1, ICON_SIZE_X * 2, ICON_SIZE_Y)
@@ -17,7 +17,7 @@
return icon
/datum/preference/choiced/ui_style/create_default_value()
return all_ui_styles[1]
return GLOB.all_ui_styles[1]
/datum/preference/choiced/ui_style/apply_to_client_updated(client/client, value)
client.mob?.update_ui_style(UI_style_new = value)
@@ -1,10 +1,10 @@
//Toggles for preferences, normal clients
/client/verb/toggle_be_special(role in be_special_flags)
/client/verb/toggle_be_special(role in GLOB.be_special_flags)
set name = "Toggle Special Role Candidacy"
set category = "Preferences.Character"
set desc = "Toggles which special roles you would like to be a candidate for, during events."
var/role_flag = be_special_flags[role]
var/role_flag = GLOB.be_special_flags[role]
if(!role_flag) return
prefs.be_special ^= role_flag
+4 -4
View File
@@ -1,7 +1,7 @@
/proc/ui_style2icon(ui_style)
if(ui_style in all_ui_styles)
return all_ui_styles[ui_style]
return all_ui_styles["White"]
if(ui_style in GLOB.all_ui_styles)
return GLOB.all_ui_styles[ui_style]
return GLOB.all_ui_styles["White"]
/client/verb/change_ui()
@@ -17,7 +17,7 @@
var/current_style = prefs.read_preference(/datum/preference/choiced/ui_style)
var/current_alpha = prefs.read_preference(/datum/preference/numeric/ui_style_alpha)
var/current_color = prefs.read_preference(/datum/preference/color/ui_style_color)
var/UI_style_new = tgui_input_list(src, "Select a style. White is recommended for customization", "UI Style Choice", all_ui_styles, current_style)
var/UI_style_new = tgui_input_list(src, "Select a style. White is recommended for customization", "UI Style Choice", GLOB.all_ui_styles, current_style)
if(!UI_style_new) return
var/UI_style_alpha_new = tgui_input_number(src, "Select a new alpha (transparency) parameter for your UI, between 50 and 255", null, current_alpha, 255, 50)
+1 -1
View File
@@ -741,7 +741,7 @@
if(holding)
add_overlay("[icon_state]_knife")
if(contaminated)
add_overlay(contamination_overlay)
add_overlay(GLOB.contamination_overlay)
if(gurgled) //VOREStation Edit Start
wash(CLEAN_ALL)
gurgle_contaminate() //VOREStation Edit End
+10 -12
View File
@@ -1,9 +1,5 @@
// Customizable Foods //////////////////////////////////////////
var/global/deepFriedEverything = 0
var/global/deepFriedNutriment = 0
var/global/foodNesting = 0
var/global/recursiveFood = 0
var/global/ingredientLimit = 20
#define INGREDIENT_LIMIT 20
/obj/item/reagent_containers/food/snacks/customizable
@@ -27,7 +23,7 @@ var/global/ingredientLimit = 20
/obj/item/reagent_containers/food/snacks/customizable/attackby(obj/item/I, mob/user)
if(istype(I,/obj/item/reagent_containers/food/snacks))
if((contents.len >= ingMax) || (contents.len >= ingredientLimit))
if((contents.len >= ingMax) || (contents.len >= INGREDIENT_LIMIT))
to_chat(user, span_warning("That's already looking pretty stuffed."))
return
@@ -37,7 +33,7 @@ var/global/ingredientLimit = 20
if(fullyCustom && SC.fullyCustom)
to_chat(user, span_warning("You slap yourself on the back of the head for thinking that stacking plates is an interesting dish."))
return
if(!recursiveFood && istype(I, /obj/item/reagent_containers/food/snacks/customizable))
if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
//to_chat(user, span_warning("[pick("As uniquely original as that idea is, you can't figure out how to perform it.","That would be a straining topological exercise.","This world just isn't ready for your cooking genius.","It's possible that you may have a problem.","It won't fit.","You don't think that would taste very good.","Quit goofin' around.")]"))
to_chat(user, span_warning("As uniquely original as that idea is, you can't figure out how to perform it."))
return
@@ -184,7 +180,7 @@ var/global/ingredientLimit = 20
/obj/item/reagent_containers/food/snacks/slice/bread/attackby(obj/item/I,mob/user,params)
if(istype(I,/obj/item/reagent_containers/food/snacks))
if(!recursiveFood && istype(I, /obj/item/reagent_containers/food/snacks/customizable))
if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
to_chat(user, span_warning("Sorry, no recursive food."))
return
var/obj/F = new/obj/item/reagent_containers/food/snacks/customizable/sandwich(get_turf(src),I) //boy ain't this a mouthful
@@ -216,7 +212,7 @@ var/global/ingredientLimit = 20
qdel(src)
if(istype(I,/obj/item/reagent_containers/food/snacks))
if(!recursiveFood && istype(I, /obj/item/reagent_containers/food/snacks/customizable))
if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
to_chat(user, span_warning("Sorry, no recursive food."))
return
var/obj/F = new/obj/item/reagent_containers/food/snacks/customizable/burger(get_turf(src),I)
@@ -227,7 +223,7 @@ var/global/ingredientLimit = 20
/obj/item/reagent_containers/food/snacks/sliceable/flatdough/attackby(obj/item/I, mob/user)
if(istype(I, /obj/item/reagent_containers/food/snacks))
if(!recursiveFood && istype(I, /obj/item/reagent_containers/food/snacks/customizable))
if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
to_chat(user, span_warning("Sorry, no recursive food."))
return
var/obj/F = new/obj/item/reagent_containers/food/snacks/customizable/pizza(get_turf(src),I)
@@ -238,7 +234,7 @@ var/global/ingredientLimit = 20
/obj/item/reagent_containers/food/snacks/spagetti/attackby(obj/item/I, mob/user)
if(istype(I, /obj/item/reagent_containers/food/snacks))
if(!recursiveFood && istype(I, /obj/item/reagent_containers/food/snacks/customizable))
if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
to_chat(user, span_warning("Sorry, no recursive food."))
return
var/obj/F = new/obj/item/reagent_containers/food/snacks/customizable/pasta(get_turf(src),I)
@@ -269,7 +265,7 @@ var/global/ingredientLimit = 20
/obj/item/trash/bowl/attackby(obj/item/I, mob/user)
if(istype(I,/obj/item/reagent_containers/food/snacks))
if(!recursiveFood && istype(I, /obj/item/reagent_containers/food/snacks/customizable))
if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
to_chat(user, span_warning("Sorry, no recursive food."))
return
var/obj/F = new/obj/item/reagent_containers/food/snacks/customizable/soup(get_turf(src),I)
@@ -277,3 +273,5 @@ var/global/ingredientLimit = 20
qdel(src)
else
return ..()
#undef INGREDIENT_LIMIT
@@ -1296,11 +1296,6 @@
M.show_message(span_warning("You lose sensation of your body."))
return
//egglaying
var/eggs = 0
/mob/living/proc/mobegglaying()
set name = "Egg laying"
set desc = "you can lay Eggs"
@@ -21,3 +21,4 @@
var/list/custom_cold = list()
var/can_climb = FALSE //Checked by turfs when using climb_wall(). Defined here for silicons and simple mobs
var/climbing_delay = 1.5 //By default, mobs climb at quarter speed. To be overriden by specific simple mobs or species speed
var/eggs = 0
@@ -77,7 +77,7 @@
/mob/living/simple_mob/animal/borer/Login()
. = ..()
if(antag && mind)
borers.add_antagonist(mind)
GLOB.borers.add_antagonist(mind)
/mob/living/simple_mob/animal/borer/Initialize(mapload)
add_language("Cortical Link")
@@ -284,7 +284,7 @@
return
if(host.mind)
borers.remove_antagonist(host.mind)
GLOB.borers.remove_antagonist(host.mind)
if(!QDELETED(src))
forceMove(get_turf(host.loc))
@@ -132,7 +132,7 @@
//Update their traitor status.
if(host.mind)
borers.add_antagonist_mind(host.mind, 1, borers.faction_role_text, borers.faction_welcome)
GLOB.borers.add_antagonist_mind(host.mind, 1, GLOB.borers.faction_role_text, GLOB.borers.faction_welcome)
/* This is likely not desired, and has some major issues with ghost behavior. Disabling for now
// No brain organ, so the borer moves in and replaces it permanently.
@@ -63,14 +63,14 @@
/mob/living/simple_mob/mechanical/viscerator/mercenary/IIsAlly(mob/living/L)
. = ..()
if(!. && isliving(L)) // Not friendly, see if they're a baddie first.
if(L.mind && mercs.is_antagonist(L.mind))
if(L.mind && GLOB.mercs.is_antagonist(L.mind))
return TRUE
// Similar to above but for raiders.
/mob/living/simple_mob/mechanical/viscerator/raider/IIsAlly(mob/living/L)
. = ..()
if(!. && isliving(L)) // Not friendly, see if they're a baddie first.
if(L.mind && raiders.is_antagonist(L.mind))
if(L.mind && GLOB.raiders.is_antagonist(L.mind))
return TRUE
// Variant that is neutral, and thus on the station's side. It checks records.
+14 -14
View File
@@ -1,4 +1,4 @@
var/list/command_cartridges = list(
GLOBAL_LIST_INIT(command_cartridges, list(
/obj/item/cartridge/captain,
/obj/item/cartridge/hop,
/obj/item/cartridge/hos,
@@ -7,42 +7,42 @@ var/list/command_cartridges = list(
/obj/item/cartridge/cmo,
/obj/item/cartridge/head,
/obj/item/cartridge/lawyer // Internal Affaris,
)
))
var/list/security_cartridges = list(
GLOBAL_LIST_INIT(security_cartridges, list(
/obj/item/cartridge/security,
/obj/item/cartridge/detective,
/obj/item/cartridge/hos
)
))
var/list/engineering_cartridges = list(
GLOBAL_LIST_INIT(engineering_cartridges, list(
/obj/item/cartridge/engineering,
/obj/item/cartridge/atmos,
/obj/item/cartridge/ce
)
))
var/list/medical_cartridges = list(
GLOBAL_LIST_INIT(medical_cartridges, list(
/obj/item/cartridge/medical,
/obj/item/cartridge/chemistry,
/obj/item/cartridge/cmo
)
))
var/list/research_cartridges = list(
GLOBAL_LIST_INIT(research_cartridges, list(
/obj/item/cartridge/signal/science,
/obj/item/cartridge/rd
)
))
var/list/cargo_cartridges = list(
GLOBAL_LIST_INIT(cargo_cartridges, list(
/obj/item/cartridge/quartermaster, // This also covers cargo-techs, apparently,
/obj/item/cartridge/miner,
/obj/item/cartridge/hop
)
))
var/list/civilian_cartridges = list(
GLOBAL_LIST_INIT(civilian_cartridges, list(
/obj/item/cartridge/janitor,
/obj/item/cartridge/service,
/obj/item/cartridge/hop
)
))
/obj/item/cartridge
name = "generic cartridge"
+7 -7
View File
@@ -175,43 +175,43 @@
. = ..()
owner = "Command Department"
name = "Command Department (Relay)"
cartridges_to_send_to = command_cartridges
cartridges_to_send_to = GLOB.command_cartridges
/obj/item/pda/multicaster/security/Initialize(mapload)
. = ..()
owner = "Security Department"
name = "Security Department (Relay)"
cartridges_to_send_to = security_cartridges
cartridges_to_send_to = GLOB.security_cartridges
/obj/item/pda/multicaster/engineering/Initialize(mapload)
. = ..()
owner = "Engineering Department"
name = "Engineering Department (Relay)"
cartridges_to_send_to = engineering_cartridges
cartridges_to_send_to = GLOB.engineering_cartridges
/obj/item/pda/multicaster/medical/Initialize(mapload)
. = ..()
owner = "Medical Department"
name = "Medical Department (Relay)"
cartridges_to_send_to = medical_cartridges
cartridges_to_send_to = GLOB.medical_cartridges
/obj/item/pda/multicaster/research/Initialize(mapload)
. = ..()
owner = "Research Department"
name = "Research Department (Relay)"
cartridges_to_send_to = research_cartridges
cartridges_to_send_to = GLOB.research_cartridges
/obj/item/pda/multicaster/cargo/Initialize(mapload)
. = ..()
owner = "Cargo Department"
name = "Cargo Department (Relay)"
cartridges_to_send_to = cargo_cartridges
cartridges_to_send_to = GLOB.cargo_cartridges
/obj/item/pda/multicaster/civilian/Initialize(mapload)
. = ..()
owner = "Civilian Services Department"
name = "Civilian Services Department (Relay)"
cartridges_to_send_to = civilian_cartridges
cartridges_to_send_to = GLOB.civilian_cartridges
/obj/item/pda/clown/Crossed(atom/movable/AM as mob|obj) //Clown PDA is slippery.
if(AM.is_incorporeal())
@@ -190,7 +190,7 @@
charge_meter = 0
/obj/item/gun/energy/staff/special_check(var/mob/user)
if((user.mind && !wizards.is_antagonist(user.mind)))
if((user.mind && !GLOB.wizards.is_antagonist(user.mind)))
to_chat(user, span_warning("You focus your mind on \the [src], but nothing happens!"))
return 0
+3 -3
View File
@@ -1,4 +1,4 @@
var/maze_cell_count = 0
GLOBAL_VAR_INIT(maze_cell_count, 0)
/datum/maze_cell
var/name
@@ -9,8 +9,8 @@ var/maze_cell_count = 0
var/oy
/datum/maze_cell/New(var/nx,var/ny,var/nox,var/noy)
maze_cell_count++
uid = maze_cell_count
GLOB.maze_cell_count++
uid = GLOB.maze_cell_count
name = "cell #[uid]"
x = nx
y = ny
@@ -339,7 +339,7 @@
qdel(src)
return
else if(D.has_tool_quality(TOOL_WIRECUTTER))
balloon_alert(user, "you cut a big hole in \the [src] with \the [D]. It's kinda useless now.")
to_chat(user, span_notice("You cut a big hole in \the [src] with \the [D]. It's kinda useless as a bucket now."))
user.put_in_hands(new /obj/item/clothing/head/helmet/bucket)
user.drop_from_inventory(src)
qdel(src)
@@ -349,16 +349,16 @@
if (M.use(1))
var/obj/item/secbot_assembly/edCLN_assembly/B = new /obj/item/secbot_assembly/edCLN_assembly
B.loc = get_turf(src)
balloon_alert(user, "armed the robot frame.")
to_chat(user, span_notice("You armed the robot frame."))
if (user.get_inactive_hand()==src)
user.remove_from_mob(src)
user.put_in_inactive_hand(B)
qdel(src)
else
balloon_alert(user, "one sheet of metal is needed to arm the robot frame.")
to_chat(user, span_warning("You need one sheet of metal to arm the robot frame."))
else if(istype(D, /obj/item/mop) || istype(D, /obj/item/soap) || istype(D, /obj/item/reagent_containers/glass/rag))
if(reagents.total_volume < 1)
balloon_alert(user, "\the [src] is empty!")
to_chat(user, span_warning("\The [src] is empty!"))
else
reagents.trans_to_obj(D, 5)
to_chat(user, span_notice("You wet \the [D] in \the [src]."))
@@ -8,11 +8,6 @@
#define KW_ERR 2 //Non-fatal error, keyword couldn't be handled properly. Ignore keyword but continue on.
#define KW_WARN 3 //Warning
/*
var/const/Class: n_Keyword
var/const/Represents a special statement in the code triggered by a keyword.
*/
/*
Var: inline
1 if the keyword is in an expression (e.g. the new keyword in many languages), 0 otherwise (such as the if and else keywords).
+1 -1
View File
@@ -16,7 +16,7 @@
. = ..(user)
if(.)
return TRUE
if((user.mind && !wizards.is_antagonist(user.mind)))
if((user.mind && !GLOB.wizards.is_antagonist(user.mind)))
to_chat(user, span_warning("You stare into the orb and see nothing but your own reflection."))
return
+1 -1
View File
@@ -22,7 +22,7 @@
return FALSE
if(!user)
return
if((user.mind && !wizards.is_antagonist(user.mind)))
if((user.mind && !GLOB.wizards.is_antagonist(user.mind)))
to_chat(user, span_warning("You stare at the book but cannot make sense of the markings!"))
return
@@ -551,7 +551,7 @@
changed_hook(APPEARANCECHANGER_CHANGED_RACE)
return TRUE
if("species_sound")
var/list/possible_species_sound_types = species_sound_map
var/list/possible_species_sound_types = GLOB.species_sound_map
var/choice = tgui_input_list(ui.user, "Which set of sounds would you like to use? (Cough, Sneeze, Scream, Pain, Gasp, Death)", "Species Sounds", possible_species_sound_types)
if(choice && can_change(owner, APPEARANCE_MISC))
owner.species.species_sounds = choice
+2 -2
View File
@@ -388,7 +388,7 @@
to_chat(user, span_notice("Cannot establish a bluespace connection."))
return
if(deathsquad.deployed)
if(GLOB.deathsquad.deployed)
to_chat(user, "[using_map.boss_short] will not allow the shuttle to be called. Consider all contracts terminated.")
return
@@ -437,7 +437,7 @@
to_chat(user, "[using_map.boss_short] does not currently have a shuttle available in your sector. Please try again later.")
return
if(deathsquad.deployed == 1)
if(GLOB.deathsquad.deployed == 1)
to_chat(user, "[using_map.boss_short] will not allow the shuttle to be called. Consider all contracts terminated.")
return
+1 -1
View File
@@ -9,4 +9,4 @@
* bunch of ChangeTurf() calls.
*/
var/list/turbolifts = list()
GLOBAL_LIST_EMPTY(turbolifts)
+2 -2
View File
@@ -15,12 +15,12 @@
var/list/areas_to_use = list()
/obj/turbolift_map_holder/Destroy()
turbolifts -= src
GLOB.turbolifts -= src
return ..()
/obj/turbolift_map_holder/Initialize(mapload)
..()
turbolifts += src
GLOB.turbolifts += src
return INITIALIZE_HINT_LATELOAD
/obj/turbolift_map_holder/LateInitialize()
+3 -3
View File
@@ -655,12 +655,12 @@
owner.handle_belly_update() // This is run whenever a belly's contents are changed.
var/obj/item/I = thing
if(I.gurgled)
I.cut_overlay(gurgled_overlays[I.gurgled_color]) //No double-overlay for worn items.
I.add_overlay(gurgled_overlays[I.gurgled_color])
I.cut_overlay(GLOB.gurgled_overlays[I.gurgled_color]) //No double-overlay for worn items.
I.add_overlay(GLOB.gurgled_overlays[I.gurgled_color])
if(I.d_mult < 1)
if(I.d_stage_overlay)
I.cut_overlay(I.d_stage_overlay)
var/image/temp = new /image(gurgled_overlays[I.gurgled_color ? I.gurgled_color : "green"])
var/image/temp = new /image(GLOB.gurgled_overlays[I.gurgled_color ? I.gurgled_color : "green"])
temp.filters += filter(type = "alpha", icon = icon(I.icon, I.icon_state))
I.d_stage_overlay = temp
for(var/count in I.d_mult to 1 step 0.25)
+3 -3
View File
@@ -1,4 +1,4 @@
var/list/gurgled_overlays = list(
GLOBAL_LIST_INIT(gurgled_overlays, list(
"green" = image('icons/effects/sludgeoverlay_vr.dmi', icon_state = "green"),
"white" = image('icons/effects/sludgeoverlay_vr.dmi', icon_state = "white"),
"black" = image('icons/effects/sludgeoverlay_vr.dmi', icon_state = "black"),
@@ -14,7 +14,7 @@ var/list/gurgled_overlays = list(
"cyan" = image('icons/effects/sludgeoverlay_vr.dmi', icon_state = "cyan"),
"beige" = image('icons/effects/sludgeoverlay_vr.dmi', icon_state = "beige"),
"pink" = image('icons/effects/sludgeoverlay_vr.dmi', icon_state = "pink")
)
))
/obj/item/proc/gurgle_contaminate(atom/movable/item_storage = null, contamination_flavor = "Generic", contamination_color = "green")
if(!can_gurgle())
@@ -27,7 +27,7 @@ var/list/gurgled_overlays = list(
gurgled = TRUE
gurgled_color = contamination_color
if(!isbelly(src.loc)) //Moved non-worn overlay stuff to belly_obj_vr.dm Exited proc. No need to add overlays to things that won't make it out.
add_overlay(gurgled_overlays[gurgled_color])
add_overlay(GLOB.gurgled_overlays[gurgled_color])
var/list/pickfrom = GLOB.contamination_flavors[contamination_flavor]
var/gurgleflavor = pick(pickfrom)
cleanname = src.name
+13 -13
View File
@@ -15,11 +15,6 @@
#define THERMITE_PATH /datum/reagent/thermite
#define TOXIN_PATH /datum/reagent/toxin
var/list/water_reagents = list(HYDROGEN_PATH, WATER_PATH)
var/list/acid_reagents = list(ACID_PATH, DIETHYLAMINE_PATH)
var/list/volatile_reagents = list(PHORON_PATH, HYDROPHORON_PATH, THERMITE_PATH)
var/list/toxic_reagents = list(TOXIN_PATH)
/atom/proc/is_anomalous()
return (GetComponent(/datum/component/artifact_master))
@@ -64,6 +59,11 @@ var/list/toxic_reagents = list(TOXIN_PATH)
var/artifact_id
var/static/list/water_reagents = list(HYDROGEN_PATH, WATER_PATH)
var/static/list/acid_reagents = list(ACID_PATH, DIETHYLAMINE_PATH)
var/static/list/volatile_reagents = list(PHORON_PATH, HYDROPHORON_PATH, THERMITE_PATH)
var/static/list/toxic_reagents = list(TOXIN_PATH)
/datum/component/artifact_master/New()
. = ..()
holder = parent
@@ -354,25 +354,25 @@ var/list/toxic_reagents = list(TOXIN_PATH)
if(my_effect.trigger == TRIGGER_WATER)
for(var/datum/reagent/R in W.reagents.reagent_list) //What chems are in the beaker?
var/T = R.type
if(is_path_in_list(T,water_reagents)) //Check the reagent and activate!
if(is_path_in_list(T, water_reagents)) //Check the reagent and activate!
my_effect.ToggleActivate()
else if(my_effect.trigger == TRIGGER_ACID)
for(var/datum/reagent/R in W.reagents.reagent_list)
var/T = R.type
if(is_path_in_list(T,acid_reagents))
if(is_path_in_list(T, acid_reagents))
my_effect.ToggleActivate()
else if(my_effect.trigger == TRIGGER_VOLATILE)
for(var/datum/reagent/R in W.reagents.reagent_list)
var/T = R.type
if(is_path_in_list(T,volatile_reagents))
if(is_path_in_list(T, volatile_reagents))
my_effect.ToggleActivate()
else if(my_effect.trigger == TRIGGER_TOXIN)
for(var/datum/reagent/R in W.reagents.reagent_list)
var/T = R.type
if(is_path_in_list(T,toxic_reagents))
if(is_path_in_list(T, toxic_reagents))
my_effect.ToggleActivate()
//If we weren't splashed, let's see if we were hit by a energy item and if we're energy activation.
else if(istype(W,/obj/item/melee/baton) && W:status ||\
@@ -404,16 +404,16 @@ var/list/toxic_reagents = list(TOXIN_PATH)
var/T = touching.type //What type of reagent is being splashed on it?
for(var/datum/artifact_effect/my_effect in my_effects)
if(is_path_in_list(T,water_reagents))
if(is_path_in_list(T, water_reagents))
if(my_effect.trigger == TRIGGER_WATER)
my_effect.ToggleActivate()
else if(is_path_in_list(T,acid_reagents))
else if(is_path_in_list(T, acid_reagents))
if(my_effect.trigger == TRIGGER_ACID)
my_effect.ToggleActivate()
else if(is_path_in_list(T,volatile_reagents))
else if(is_path_in_list(T, volatile_reagents))
if(my_effect.trigger == TRIGGER_VOLATILE)
my_effect.ToggleActivate()
else if(is_path_in_list(T,toxic_reagents))
else if(is_path_in_list(T, toxic_reagents))
if(my_effect.trigger == TRIGGER_TOXIN)
my_effect.ToggleActivate()
+7 -7
View File
@@ -7,24 +7,24 @@
if(!holder) return
if(!xenobio_controller || !xenobio_controller.gene_tag_masks)
if(!GLOB.xenobio_controller || !GLOB.xenobio_controller.gene_tag_masks)
to_chat(usr, "Gene masks not set.")
return
for(var/mask in xenobio_controller.gene_tag_masks)
to_chat(usr, "[mask]: [xenobio_controller.gene_tag_masks[mask]]")
for(var/mask in GLOB.xenobio_controller.gene_tag_masks)
to_chat(usr, "[mask]: [GLOB.xenobio_controller.gene_tag_masks[mask]]")
var/global/datum/controller/xenobio/xenobio_controller // Set in New().
GLOBAL_DATUM(xenobio_controller, /datum/controller/xenobio)
/datum/controller/xenobio
var/list/gene_tag_masks = list() // Gene obfuscation for delicious trial and error goodness.
/datum/controller/xenobio/New()
if(xenobio_controller && xenobio_controller != src)
if(GLOB.xenobio_controller && GLOB.xenobio_controller != src)
log_runtime("Rebuilding xenobio controller.")
qdel(xenobio_controller)
xenobio_controller = src
qdel(GLOB.xenobio_controller)
GLOB.xenobio_controller = src
setup()
@@ -152,8 +152,8 @@
var/list/data = list()
var/list/geneMasks[0]
for(var/gene_tag in xenobio_controller.gene_tag_masks)
geneMasks.Add(list(list("tag" = gene_tag, "mask" = xenobio_controller.gene_tag_masks[gene_tag])))
for(var/gene_tag in GLOB.xenobio_controller.gene_tag_masks)
geneMasks.Add(list(list("tag" = gene_tag, "mask" = GLOB.xenobio_controller.gene_tag_masks[gene_tag])))
data["geneMasks"] = geneMasks
data["activity"] = active
@@ -231,8 +231,8 @@
loaded_disk.genesource = "[genetics.source]"
loaded_disk.name += " ([xenobio_controller.gene_tag_masks[href_list["get_gene"]]], [genetics.source])"
loaded_disk.desc += " The label reads \'gene [xenobio_controller.gene_tag_masks[href_list["get_gene"]]], sampled from [genetics.source]\'."
loaded_disk.name += " ([GLOB.xenobio_controller.gene_tag_masks[href_list["get_gene"]]], [genetics.source])"
loaded_disk.desc += " The label reads \'gene [GLOB.xenobio_controller.gene_tag_masks[href_list["get_gene"]]], sampled from [genetics.source]\'."
eject_disk = 1
degradation += rand(20,60)
@@ -306,7 +306,7 @@
for(var/datum/xeno/genes/X in loaded_disk.genes)
if(data["locus"] != "") data["locus"] += ", "
data["locus"] += "[xenobio_controller.gene_tag_masks[X.genetype]]"
data["locus"] += "[GLOB.xenobio_controller.gene_tag_masks[X.genetype]]"
else
data["disk"] = 0