diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm
index cab2662a7ec..602c4e261a8 100644
--- a/code/__DEFINES/is_helpers.dm
+++ b/code/__DEFINES/is_helpers.dm
@@ -133,3 +133,5 @@ GLOBAL_LIST_INIT(turfs_pass_meteor, typecacheof(list(
)))
#define ispassmeteorturf(A) (is_type_in_typecache(A, GLOB.turfs_pass_meteor))
+
+#define is_screen_atom(A) istype(A, /atom/movable/screen)
diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm
index ce60b238e61..e4e1b7930b5 100644
--- a/code/__HELPERS/game.dm
+++ b/code/__HELPERS/game.dm
@@ -345,14 +345,6 @@
return candidates
-/proc/ScreenText(obj/O, maptext="", screen_loc="CENTER-7,CENTER-7", maptext_height=480, maptext_width=480)
- if(!isobj(O)) O = new /obj/screen/text()
- O.maptext = maptext
- O.maptext_height = maptext_height
- O.maptext_width = maptext_width
- O.screen_loc = screen_loc
- return O
-
/proc/remove_images_from_clients(image/I, list/show_to)
for(var/client/C in show_to)
C.images -= I
diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm
index 91e88936903..4369d535fce 100644
--- a/code/_onclick/click.dm
+++ b/code/_onclick/click.dm
@@ -463,23 +463,23 @@
else direction = WEST
dir = direction
-/obj/screen/click_catcher
+/atom/movable/screen/click_catcher
icon = 'icons/mob/screen_gen.dmi'
icon_state = "catcher"
plane = CLICKCATCHER_PLANE
mouse_opacity = MOUSE_OPACITY_OPAQUE
screen_loc = "CENTER"
-/obj/screen/click_catcher/MouseEntered(location, control, params)
+/atom/movable/screen/click_catcher/MouseEntered(location, control, params)
return
-/obj/screen/click_catcher/MouseExited(location, control, params)
+/atom/movable/screen/click_catcher/MouseExited(location, control, params)
return
#define MAX_SAFE_BYOND_ICON_SCALE_TILES (MAX_SAFE_BYOND_ICON_SCALE_PX / world.icon_size)
#define MAX_SAFE_BYOND_ICON_SCALE_PX (33 * 32) //Not using world.icon_size on purpose.
-/obj/screen/click_catcher/proc/UpdateGreed(view_size_x = 15, view_size_y = 15)
+/atom/movable/screen/click_catcher/proc/UpdateGreed(view_size_x = 15, view_size_y = 15)
var/icon/newicon = icon('icons/mob/screen_gen.dmi', "catcher")
var/ox = min(MAX_SAFE_BYOND_ICON_SCALE_TILES, view_size_x)
var/oy = min(MAX_SAFE_BYOND_ICON_SCALE_TILES, view_size_y)
@@ -494,7 +494,7 @@
M.Scale(px/sx, py/sy)
transform = M
-/obj/screen/click_catcher/Click(location, control, params)
+/atom/movable/screen/click_catcher/Click(location, control, params)
var/list/modifiers = params2list(params)
if(modifiers["middle"] && iscarbon(usr))
var/mob/living/carbon/C = usr
diff --git a/code/_onclick/drag_drop.dm b/code/_onclick/drag_drop.dm
index 5d7d4114332..420e9d4d9fa 100644
--- a/code/_onclick/drag_drop.dm
+++ b/code/_onclick/drag_drop.dm
@@ -28,7 +28,7 @@ FALSE if not
return
var/lagging = could_be_click_lag()
drag_start = 0
- if(!(istype(over, /obj/screen) || (loc && loc == over.loc)))
+ if(!(is_screen_atom(over) || (loc && loc == over.loc)))
if(!Adjacent(usr) || !over.Adjacent(usr)) // should stop you from dragging through windows
if(lagging)
usr.ClickOn(src, params)
diff --git a/code/_onclick/hud/action_button.dm b/code/_onclick/hud/action_button.dm
index 2ff53932b0c..3f8812e9368 100644
--- a/code/_onclick/hud/action_button.dm
+++ b/code/_onclick/hud/action_button.dm
@@ -1,4 +1,4 @@
-/obj/screen/movable/action_button
+/atom/movable/screen/movable/action_button
desc = "CTRL-Shift click on this button to bind it to a hotkey."
var/datum/action/linked_action
var/actiontooltipstyle = ""
@@ -6,7 +6,7 @@
var/ordered = TRUE
var/datum/keybinding/mob/trigger_action_button/linked_keybind
-/obj/screen/movable/action_button/MouseDrop(over_object)
+/atom/movable/screen/movable/action_button/MouseDrop(over_object)
if(locked && could_be_click_lag()) // in case something bad happend and game realised we dragged our ability instead of pressing it
Click()
drag_start = 0
@@ -16,8 +16,8 @@
to_chat(usr, "Action button \"[name]\" is locked, unlock it first.")
closeToolTip(usr)
return
- if((istype(over_object, /obj/screen/movable/action_button) && !istype(over_object, /obj/screen/movable/action_button/hide_toggle)))
- var/obj/screen/movable/action_button/B = over_object
+ if((istype(over_object, /atom/movable/screen/movable/action_button) && !istype(over_object, /atom/movable/screen/movable/action_button/hide_toggle)))
+ var/atom/movable/screen/movable/action_button/B = over_object
var/list/actions = usr.actions
actions.Swap(actions.Find(linked_action), actions.Find(B.linked_action))
moved = FALSE
@@ -26,13 +26,13 @@
B.ordered = TRUE
closeToolTip(usr)
usr.update_action_buttons()
- else if(istype(over_object, /obj/screen/movable/action_button/hide_toggle))
+ else if(istype(over_object, /atom/movable/screen/movable/action_button/hide_toggle))
closeToolTip(usr)
else
closeToolTip(usr)
return ..()
-/obj/screen/movable/action_button/Click(location,control,params)
+/atom/movable/screen/movable/action_button/Click(location, control, params)
var/list/modifiers = params2list(params)
if(modifiers["ctrl"] && modifiers["shift"])
INVOKE_ASYNC(src, PROC_REF(set_to_keybind), usr)
@@ -63,7 +63,7 @@
animate(src, transform = matrix(), time = 0.4 SECONDS, alpha = 255)
return TRUE
-/obj/screen/movable/action_button/proc/set_to_keybind(mob/user)
+/atom/movable/screen/movable/action_button/proc/set_to_keybind(mob/user)
var/keybind_to_set_to = uppertext(input(user, "What keybind do you want to set this action button to?") as text)
if(keybind_to_set_to)
if(linked_keybind)
@@ -78,10 +78,10 @@
clean_up_keybinds(user)
to_chat(user, "Your active keybinding on [src] has been cleared.")
-/obj/screen/movable/action_button/AltClick(mob/user)
+/atom/movable/screen/movable/action_button/AltClick(mob/user)
return linked_action.AltTrigger()
-/obj/screen/movable/action_button/proc/clean_up_keybinds(mob/owner)
+/atom/movable/screen/movable/action_button/proc/clean_up_keybinds(mob/owner)
if(linked_keybind)
owner.client.active_keybindings[linked_keybind.binded_to] -= (linked_keybind)
if(!length(owner.client.active_keybindings[linked_keybind.binded_to]))
@@ -90,21 +90,21 @@
QDEL_NULL(linked_keybind)
//Hide/Show Action Buttons ... Button
-/obj/screen/movable/action_button/hide_toggle
+/atom/movable/screen/movable/action_button/hide_toggle
name = "Hide Buttons"
desc = "Shift-click any button to reset its position, and Control-click it to lock/unlock its position. Alt-click this button to reset all buttons to their default positions."
icon = 'icons/mob/actions/actions.dmi'
icon_state = "bg_default"
var/hidden = FALSE
-/obj/screen/movable/action_button/hide_toggle/MouseDrop(over_object)
- if(istype(over_object, /obj/screen/movable/action_button))
+/atom/movable/screen/movable/action_button/hide_toggle/MouseDrop(over_object)
+ if(istype(over_object, /atom/movable/screen/movable/action_button))
closeToolTip(usr)
else
closeToolTip(usr)
return ..()
-/obj/screen/movable/action_button/hide_toggle/Click(location,control,params)
+/atom/movable/screen/movable/action_button/hide_toggle/Click(location, control, params)
var/list/modifiers = params2list(params)
if(modifiers["alt"])
@@ -121,17 +121,17 @@
update_icon(UPDATE_OVERLAYS)
usr.update_action_buttons()
-/obj/screen/movable/action_button/hide_toggle/AltClick(mob/user)
+/atom/movable/screen/movable/action_button/hide_toggle/AltClick(mob/user)
for(var/V in user.actions)
var/datum/action/A = V
- var/obj/screen/movable/action_button/B = A.button
+ var/atom/movable/screen/movable/action_button/B = A.button
B.moved = FALSE
if(moved)
moved = FALSE
user.update_action_buttons(TRUE)
to_chat(user, "Action button positions have been reset.")
-/obj/screen/movable/action_button/hide_toggle/proc/InitialiseIcon(mob/living/user)
+/atom/movable/screen/movable/action_button/hide_toggle/proc/InitialiseIcon(mob/living/user)
if(isalien(user))
icon = 'icons/mob/actions/actions.dmi'
icon_state = "bg_alien"
@@ -146,13 +146,13 @@
color = user.client.prefs.UI_style_color
update_icon(UPDATE_OVERLAYS)
-/obj/screen/movable/action_button/hide_toggle/update_overlays()
+/atom/movable/screen/movable/action_button/hide_toggle/update_overlays()
. = ..()
var/image/img = image(initial(icon), src, hidden ? "show" : "hide")
img.appearance_flags = RESET_COLOR | RESET_ALPHA
. += img
-/obj/screen/movable/action_button/MouseEntered(location, control, params)
+/atom/movable/screen/movable/action_button/MouseEntered(location, control, params)
. = ..()
if(!QDELETED(src))
if(!linked_keybind)
@@ -164,7 +164,7 @@
desc_information = desc_information.Join(" ")
openToolTip(usr, src, params, title = name, content = desc_information, theme = actiontooltipstyle)
-/obj/screen/movable/action_button/MouseExited()
+/atom/movable/screen/movable/action_button/MouseExited()
closeToolTip(usr)
/mob/proc/update_action_buttons_icon()
@@ -192,7 +192,7 @@
A.override_location() // If the action has a location override, call it
A.UpdateButtonIcon()
- var/obj/screen/movable/action_button/B = A.button
+ var/atom/movable/screen/movable/action_button/B = A.button
if(B.ordered)
button_number++
if(!B.moved)
@@ -227,7 +227,7 @@
return "WEST[coord_col]:[coord_col_offset],NORTH[coord_row]:-6"
-/datum/hud/proc/SetButtonCoords(obj/screen/button,number)
+/datum/hud/proc/SetButtonCoords(atom/movable/screen/button,number)
var/row = round((number-1)/AB_MAX_COLUMNS)
var/col = ((number - 1)%(AB_MAX_COLUMNS)) + 1
var/x_offset = 32*(col-1) + 4 + 2*col
diff --git a/code/_onclick/hud/ai_hud.dm b/code/_onclick/hud/ai_hud.dm
index 8579060078b..918cfa8d432 100644
--- a/code/_onclick/hud/ai_hud.dm
+++ b/code/_onclick/hud/ai_hud.dm
@@ -1,138 +1,138 @@
-/obj/screen/ai
+/atom/movable/screen/ai
icon = 'icons/mob/screen_ai.dmi'
-/obj/screen/ai/aicore
+/atom/movable/screen/ai/aicore
name = "AI core"
icon_state = "ai_core"
-/obj/screen/ai/aicore/Click()
+/atom/movable/screen/ai/aicore/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.view_core()
-/obj/screen/ai/camera_list
+/atom/movable/screen/ai/camera_list
name = "Show Camera List"
icon_state = "camera"
-/obj/screen/ai/camera_list/Click()
+/atom/movable/screen/ai/camera_list/Click()
var/mob/living/silicon/ai/AI = usr
var/camera = tgui_input_list(AI, "Choose which camera you want to view", "Cameras", AI.get_camera_list())
AI.ai_camera_list(camera)
-/obj/screen/ai/camera_track
+/atom/movable/screen/ai/camera_track
name = "Track With Camera"
icon_state = "track"
-/obj/screen/ai/camera_track/Click()
+/atom/movable/screen/ai/camera_track/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
var/target_name = tgui_input_list(AI, "Choose a target you want to track", "Tracking", AI.trackable_mobs())
if(target_name)
AI.ai_camera_track(target_name)
-/obj/screen/ai/camera_light
+/atom/movable/screen/ai/camera_light
name = "Toggle Camera Light"
icon_state = "camera_light"
-/obj/screen/ai/camera_light/Click()
+/atom/movable/screen/ai/camera_light/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.toggle_camera_light()
-/obj/screen/ai/crew_monitor
+/atom/movable/screen/ai/crew_monitor
name = "Crew Monitoring Console"
icon_state = "crew_monitor"
-/obj/screen/ai/crew_monitor/Click()
+/atom/movable/screen/ai/crew_monitor/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.subsystem_crew_monitor()
-/obj/screen/ai/crew_manifest
+/atom/movable/screen/ai/crew_manifest
name = "Crew Manifest"
icon_state = "manifest"
-/obj/screen/ai/crew_manifest/Click()
+/atom/movable/screen/ai/crew_manifest/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.ai_roster()
-/obj/screen/ai/alerts
+/atom/movable/screen/ai/alerts
name = "Show Alerts"
icon_state = "alerts"
-/obj/screen/ai/alerts/Click()
+/atom/movable/screen/ai/alerts/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.ai_alerts()
-/obj/screen/ai/announcement
+/atom/movable/screen/ai/announcement
name = "Make Announcement"
icon_state = "announcement"
-/obj/screen/ai/announcement/Click()
+/atom/movable/screen/ai/announcement/Click()
var/mob/living/silicon/ai/AI = usr
AI.announcement()
-/obj/screen/ai/call_shuttle
+/atom/movable/screen/ai/call_shuttle
name = "Call Emergency Shuttle"
icon_state = "call_shuttle"
-/obj/screen/ai/call_shuttle/Click()
+/atom/movable/screen/ai/call_shuttle/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.ai_call_shuttle()
-/obj/screen/ai/state_laws
+/atom/movable/screen/ai/state_laws
name = "Law Manager"
icon_state = "state_laws"
-/obj/screen/ai/state_laws/Click()
+/atom/movable/screen/ai/state_laws/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.subsystem_law_manager()
-/obj/screen/ai/pda_msg_send
+/atom/movable/screen/ai/pda_msg_send
name = "PDA - Send Message"
icon_state = "pda_send"
-/obj/screen/ai/pda_msg_send/Click()
+/atom/movable/screen/ai/pda_msg_send/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.aiPDA.cmd_send_pdamesg()
-/obj/screen/ai/pda_msg_show
+/atom/movable/screen/ai/pda_msg_show
name = "PDA - Show Message Log"
icon_state = "pda_receive"
-/obj/screen/ai/pda_msg_show/Click()
+/atom/movable/screen/ai/pda_msg_show/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.aiPDA.cmd_show_message_log()
-/obj/screen/ai/image_take
+/atom/movable/screen/ai/image_take
name = "Take Image"
icon_state = "take_picture"
-/obj/screen/ai/image_take/Click()
+/atom/movable/screen/ai/image_take/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.aiCamera.toggle_camera_mode()
-/obj/screen/ai/image_view
+/atom/movable/screen/ai/image_view
name = "View Images"
icon_state = "view_images"
-/obj/screen/ai/image_view/Click()
+/atom/movable/screen/ai/image_view/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.aiCamera.viewpictures()
-/obj/screen/ai/sensors
+/atom/movable/screen/ai/sensors
name = "Toggle Sensor Augmentation"
icon_state = "ai_sensor"
-/obj/screen/ai/sensors/Click()
+/atom/movable/screen/ai/sensors/Click()
if(isAI(usr))
var/mob/living/silicon/ai/AI = usr
AI.sensor_mode()
@@ -147,89 +147,89 @@
/datum/hud/ai/New(mob/owner)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
- using = new /obj/screen/language_menu
+ using = new /atom/movable/screen/language_menu
using.screen_loc = ui_borg_lanugage_menu
static_inventory += using
//AI core
- using = new /obj/screen/ai/aicore()
+ using = new /atom/movable/screen/ai/aicore()
using.screen_loc = ui_ai_core
static_inventory += using
//Camera list
- using = new /obj/screen/ai/camera_list()
+ using = new /atom/movable/screen/ai/camera_list()
using.screen_loc = ui_ai_camera_list
static_inventory += using
//Track
- using = new /obj/screen/ai/camera_track()
+ using = new /atom/movable/screen/ai/camera_track()
using.screen_loc = ui_ai_track_with_camera
static_inventory += using
//Camera light
- using = new /obj/screen/ai/camera_light()
+ using = new /atom/movable/screen/ai/camera_light()
using.screen_loc = ui_ai_camera_light
static_inventory += using
//Crew Monitorting
- using = new /obj/screen/ai/crew_monitor()
+ using = new /atom/movable/screen/ai/crew_monitor()
using.screen_loc = ui_ai_crew_monitor
static_inventory += using
//Crew Manifest
- using = new /obj/screen/ai/crew_manifest()
+ using = new /atom/movable/screen/ai/crew_manifest()
using.screen_loc = ui_ai_crew_manifest
static_inventory += using
//Alerts
- using = new /obj/screen/ai/alerts()
+ using = new /atom/movable/screen/ai/alerts()
using.screen_loc = ui_ai_alerts
static_inventory += using
//Announcement
- using = new /obj/screen/ai/announcement()
+ using = new /atom/movable/screen/ai/announcement()
using.screen_loc = ui_ai_announcement
static_inventory += using
//Shuttle
- using = new /obj/screen/ai/call_shuttle()
+ using = new /atom/movable/screen/ai/call_shuttle()
using.screen_loc = ui_ai_shuttle
static_inventory += using
//Laws
- using = new /obj/screen/ai/state_laws()
+ using = new /atom/movable/screen/ai/state_laws()
using.screen_loc = ui_ai_state_laws
static_inventory += using
//PDA message
- using = new /obj/screen/ai/pda_msg_send()
+ using = new /atom/movable/screen/ai/pda_msg_send()
using.screen_loc = ui_ai_pda_send
static_inventory += using
//PDA log
- using = new /obj/screen/ai/pda_msg_show()
+ using = new /atom/movable/screen/ai/pda_msg_show()
using.screen_loc = ui_ai_pda_log
static_inventory += using
//Take image
- using = new /obj/screen/ai/image_take()
+ using = new /atom/movable/screen/ai/image_take()
using.screen_loc = ui_ai_take_picture
static_inventory += using
//View images
- using = new /obj/screen/ai/image_view()
+ using = new /atom/movable/screen/ai/image_view()
using.screen_loc = ui_ai_view_images
static_inventory += using
//Medical/Security sensors
- using = new /obj/screen/ai/sensors()
+ using = new /atom/movable/screen/ai/sensors()
using.screen_loc = ui_ai_sensor
static_inventory += using
//Intent
- using = new /obj/screen/act_intent/robot/AI()
+ using = new /atom/movable/screen/act_intent/robot/AI()
using.icon_state = mymob.a_intent
static_inventory += using
action_intent = using
diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm
index 5385f46078c..66e7af873a3 100644
--- a/code/_onclick/hud/alert.dm
+++ b/code/_onclick/hud/alert.dm
@@ -21,7 +21,7 @@
if(!category)
return
- var/obj/screen/alert/alert = LAZYACCESS(alerts, category)
+ var/atom/movable/screen/alert/alert = LAZYACCESS(alerts, category)
if(alert)
if(alert.override_alerts)
return 0
@@ -75,14 +75,14 @@
var/timeout = timeout_override || alert.timeout
if(timeout)
- addtimer(CALLBACK(alert, TYPE_PROC_REF(/obj/screen/alert, do_timeout), src, category), timeout)
+ addtimer(CALLBACK(alert, TYPE_PROC_REF(/atom/movable/screen/alert, do_timeout), src, category), timeout)
alert.timeout = world.time + timeout - world.tick_lag
return alert
// Proc to clear an existing alert.
/mob/proc/clear_alert(category, clear_override = FALSE)
- var/obj/screen/alert/alert = LAZYACCESS(alerts, category)
+ var/atom/movable/screen/alert/alert = LAZYACCESS(alerts, category)
if(!alert)
return 0
if(alert.override_alerts && !clear_override)
@@ -94,7 +94,7 @@
client.screen -= alert
qdel(alert)
-/obj/screen/alert
+/atom/movable/screen/alert
icon = 'icons/mob/screen_alert.dmi'
icon_state = "default"
name = "Alert"
@@ -105,16 +105,16 @@
var/alerttooltipstyle = ""
var/override_alerts = FALSE //If it is overriding other alerts of the same type
-/obj/screen/alert/MouseEntered(location,control,params)
+/atom/movable/screen/alert/MouseEntered(location, control, params)
. = ..()
openToolTip(usr, src, params, title = name, content = desc, theme = alerttooltipstyle)
-/obj/screen/alert/MouseExited()
+/atom/movable/screen/alert/MouseExited()
closeToolTip(usr)
return ..()
-/obj/screen/alert/proc/do_timeout(mob/M, category)
+/atom/movable/screen/alert/proc/do_timeout(mob/M, category)
if(!M || !M.alerts)
return
@@ -122,42 +122,42 @@
M.clear_alert(category)
//Gas alerts
-/obj/screen/alert/not_enough_oxy
+/atom/movable/screen/alert/not_enough_oxy
name = "Choking (No O2)"
desc = "You're not getting enough oxygen. Find some good air before you pass out! The box in your backpack has an oxygen tank and breath mask in it."
icon_state = "not_enough_oxy"
-/obj/screen/alert/too_much_oxy
+/atom/movable/screen/alert/too_much_oxy
name = "Choking (O2)"
desc = "There's too much oxygen in the air, and you're breathing it in! Find some good air before you pass out!"
icon_state = "too_much_oxy"
-/obj/screen/alert/not_enough_nitro
+/atom/movable/screen/alert/not_enough_nitro
name = "Choking (No N2)"
desc = "You're not getting enough nitrogen. Find some good air before you pass out!"
icon_state = "not_enough_nitro"
-/obj/screen/alert/too_much_nitro
+/atom/movable/screen/alert/too_much_nitro
name = "Choking (N2)"
desc = "There's too much nitrogen in the air, and you're breathing it in! Find some good air before you pass out!"
icon_state = "too_much_nitro"
-/obj/screen/alert/not_enough_co2
+/atom/movable/screen/alert/not_enough_co2
name = "Choking (No CO2)"
desc = "You're not getting enough carbon dioxide. Find some good air before you pass out!"
icon_state = "not_enough_co2"
-/obj/screen/alert/too_much_co2
+/atom/movable/screen/alert/too_much_co2
name = "Choking (CO2)"
desc = "There's too much carbon dioxide in the air, and you're breathing it in! Find some good air before you pass out!"
icon_state = "too_much_co2"
-/obj/screen/alert/not_enough_tox
+/atom/movable/screen/alert/not_enough_tox
name = "Choking (No Plasma)"
desc = "You're not getting enough plasma. Find some good air before you pass out!"
icon_state = "not_enough_tox"
-/obj/screen/alert/too_much_tox
+/atom/movable/screen/alert/too_much_tox
name = "Choking (Plasma)"
desc = "There's highly flammable, toxic plasma in the air and you're breathing it in. Find some fresh air. The box in your backpack has an oxygen tank and gas mask in it."
icon_state = "too_much_tox"
@@ -165,161 +165,161 @@
// Hunger alerts
-/obj/screen/alert/hunger
+/atom/movable/screen/alert/hunger
icon = 'icons/mob/screen_hunger.dmi'
-/obj/screen/alert/hunger/fat
+/atom/movable/screen/alert/hunger/fat
name = "Fat"
desc = "You ate too much food, lardass. Run around the station and lose some weight."
icon_state = "fat"
-/obj/screen/alert/hunger/full
+/atom/movable/screen/alert/hunger/full
name = "Full"
desc = "You feel full and satisfied, but you shouldn't eat much more."
icon_state = "full"
-/obj/screen/alert/hunger/well_fed
+/atom/movable/screen/alert/hunger/well_fed
name = "Well Fed"
desc = "You feel quite satisfied, but you may be able to eat a bit more."
icon_state = "well_fed"
-/obj/screen/alert/hunger/fed
+/atom/movable/screen/alert/hunger/fed
name = "Fed"
desc = "You feel moderately satisfied, but a bit more food may not hurt."
icon_state = "fed"
-/obj/screen/alert/hunger/hungry
+/atom/movable/screen/alert/hunger/hungry
name = "Hungry"
desc = "Some food would be good right about now."
icon_state = "hungry"
-/obj/screen/alert/hunger/starving
+/atom/movable/screen/alert/hunger/starving
name = "Starving"
desc = "You're severely malnourished. The hunger pains make moving around a chore."
icon_state = "starving"
/// Machine "hunger"
-/obj/screen/alert/hunger/fat/machine
+/atom/movable/screen/alert/hunger/fat/machine
name = "Over Charged"
desc = "Your cell has excessive charge due to electrical shocks. Run around the station and spend some energy."
-/obj/screen/alert/hunger/full/machine
+/atom/movable/screen/alert/hunger/full/machine
name = "Full Charge"
desc = "Your cell is at full charge. Might want to give APCs some space."
-/obj/screen/alert/hunger/well_fed/machine
+/atom/movable/screen/alert/hunger/well_fed/machine
name = "High Charge"
desc = "You're almost all charged, but could top up a bit more."
-/obj/screen/alert/hunger/fed/machine
+/atom/movable/screen/alert/hunger/fed/machine
name = "Half Charge"
desc = "You feel moderately charged, but a bit more juice couldn't hurt."
-/obj/screen/alert/hunger/hungry/machine
+/atom/movable/screen/alert/hunger/hungry/machine
name = "Low Charge"
desc = "Could use a little charging right about now."
-/obj/screen/alert/hunger/starving/machine
+/atom/movable/screen/alert/hunger/starving/machine
name = "Nearly Discharged"
desc = "You're almost drained. The low power makes moving around a chore."
// End of Machine "hunger"
///Vampire "hunger"
-/obj/screen/alert/hunger/fat/vampire
+/atom/movable/screen/alert/hunger/fat/vampire
desc = "You somehow drank too much blood, lardass. Run around the station and lose some weight."
-/obj/screen/alert/hunger/full/vampire
+/atom/movable/screen/alert/hunger/full/vampire
desc = "You feel full and satisfied, but you know you will thirst for more blood soon..."
-/obj/screen/alert/hunger/well_fed/vampire
+/atom/movable/screen/alert/hunger/well_fed/vampire
desc = "You feel quite satisfied, but you could do with a bit more blood."
-/obj/screen/alert/hunger/fed/vampire
+/atom/movable/screen/alert/hunger/fed/vampire
desc = "You feel moderately satisfied, but a bit more blood wouldn't hurt."
-/obj/screen/alert/hunger/hungry/vampire
+/atom/movable/screen/alert/hunger/hungry/vampire
desc = "You currently thirst for blood."
-/obj/screen/alert/hunger/starving/vampire
+/atom/movable/screen/alert/hunger/starving/vampire
desc = "You're severely thirsty. The thirst pains make moving around a chore."
//End of Vampire "hunger"
-/obj/screen/alert/hot
+/atom/movable/screen/alert/hot
name = "Too Hot"
desc = "You're flaming hot! Get somewhere cooler and take off any insulating clothing like a fire suit."
icon_state = "hot"
-/obj/screen/alert/hot/robot
+/atom/movable/screen/alert/hot/robot
desc = "The air around you is too hot for a humanoid. Be careful to avoid exposing them to this environment."
-/obj/screen/alert/cold
+/atom/movable/screen/alert/cold
name = "Too Cold"
desc = "You're freezing cold! Get somewhere warmer and take off any insulating clothing like a space suit."
icon_state = "cold"
-/obj/screen/alert/cold/drask
+/atom/movable/screen/alert/cold/drask
name = "Cold"
desc = "You're breathing supercooled gas! It's stimulating your metabolism to regenerate damaged tissue."
-/obj/screen/alert/cold/robot
+/atom/movable/screen/alert/cold/robot
desc = "The air around you is too cold for a humanoid. Be careful to avoid exposing them to this environment."
-/obj/screen/alert/lowpressure
+/atom/movable/screen/alert/lowpressure
name = "Low Pressure"
desc = "The air around you is hazardously thin. A space suit would protect you."
icon_state = "lowpressure"
-/obj/screen/alert/highpressure
+/atom/movable/screen/alert/highpressure
name = "High Pressure"
desc = "The air around you is hazardously thick. A fire suit would protect you."
icon_state = "highpressure"
-/obj/screen/alert/lightexposure
+/atom/movable/screen/alert/lightexposure
name = "Light Exposure"
desc = "You're exposed to light."
icon_state = "lightexposure"
-/obj/screen/alert/nolight
+/atom/movable/screen/alert/nolight
name = "No Light"
desc = "You're not exposed to any light."
icon_state = "nolight"
-/obj/screen/alert/blind
+/atom/movable/screen/alert/blind
name = "Blind"
desc = "You can't see! This may be caused by a genetic defect, eye trauma, being unconscious, \
or something covering your eyes."
icon_state = "blind"
-/obj/screen/alert/high
+/atom/movable/screen/alert/high
name = "High"
desc = "Whoa man, you're tripping balls! Careful you don't get addicted... if you aren't already."
icon_state = "high"
-/obj/screen/alert/drunk
+/atom/movable/screen/alert/drunk
name = "Drunk"
desc = "All that alcohol you've been drinking is impairing your speech, motor skills, and mental cognition."
icon_state = "drunk"
-/obj/screen/alert/embeddedobject
+/atom/movable/screen/alert/embeddedobject
name = "Embedded Object"
desc = "Something got lodged into your flesh and is causing major bleeding. It might fall out with time, but surgery is the safest way. \
If you're feeling frisky, click yourself in help intent to pull the object out."
icon_state = "embeddedobject"
-/obj/screen/alert/embeddedobject/Click()
+/atom/movable/screen/alert/embeddedobject/Click()
if(isliving(usr))
var/mob/living/carbon/human/M = usr
return M.help_shake_act(M)
-/obj/screen/alert/asleep
+/atom/movable/screen/alert/asleep
name = "Asleep"
desc = "You've fallen asleep. Wait a bit and you should wake up. Unless you don't, considering how helpless you are."
icon_state = "asleep"
-/obj/screen/alert/weightless
+/atom/movable/screen/alert/weightless
name = "Weightless"
desc = "Gravity has ceased affecting you, and you're floating around aimlessly. You'll need something large and heavy, like a \
wall or lattice, to push yourself off if you want to move. A jetpack would enable free range of motion. A pair of \
@@ -327,48 +327,48 @@ magboots would let you walk around normally on the floor. Barring those, you can
or shoot a gun to move around via Newton's 3rd Law of Motion."
icon_state = "weightless"
-/obj/screen/alert/fire
+/atom/movable/screen/alert/fire
name = "On Fire"
desc = "You're on fire. Stop, drop and roll to put the fire out or move to a vacuum area."
icon_state = "fire"
-/obj/screen/alert/fire/Click()
+/atom/movable/screen/alert/fire/Click()
if(isliving(usr))
var/mob/living/L = usr
return L.resist()
-/obj/screen/alert/direction_lock
+/atom/movable/screen/alert/direction_lock
name = "Direction Lock"
desc = "You are facing only one direction, slowing your movement down. Click here to stop the direction lock."
icon_state = "direction_lock"
-/obj/screen/alert/direction_lock/Click()
+/atom/movable/screen/alert/direction_lock/Click()
if(isliving(usr))
var/mob/living/L = usr
return L.clear_forced_look()
//Constructs
-/obj/screen/alert/holy_fire
+/atom/movable/screen/alert/holy_fire
name = "Holy Fire"
desc = "Your body is crumbling from the holy energies. Get out."
icon_state = "fire"
//ALIENS
-/obj/screen/alert/alien_tox
+/atom/movable/screen/alert/alien_tox
name = "Plasma"
desc = "There's flammable plasma in the air. If it lights up, you'll be toast."
icon_state = "alien_tox"
alerttooltipstyle = "alien"
-/obj/screen/alert/alien_fire
+/atom/movable/screen/alert/alien_fire
// This alert is temporarily gonna be thrown for all hot air but one day it will be used for literally being on fire
name = "Too Hot"
desc = "It's too hot! Flee to space or at least away from the flames. Standing on weeds will heal you."
icon_state = "alien_fire"
alerttooltipstyle = "alien"
-/obj/screen/alert/alien_vulnerable
+/atom/movable/screen/alert/alien_vulnerable
name = "Severed Matriarchy"
desc = "Your queen has been killed, you will suffer movement penalties and loss of hivemind. A new queen cannot be made until you recover."
icon_state = "alien_noqueen"
@@ -376,7 +376,7 @@ or shoot a gun to move around via Newton's 3rd Law of Motion."
//BLOBS
-/obj/screen/alert/nofactory
+/atom/movable/screen/alert/nofactory
name = "No Factory"
desc = "You have no factory, and are slowly dying!"
icon_state = "blobbernaut_nofactory"
@@ -384,39 +384,39 @@ or shoot a gun to move around via Newton's 3rd Law of Motion."
//SILICONS
-/obj/screen/alert/nocell
+/atom/movable/screen/alert/nocell
name = "Missing Power Cell"
desc = "Unit has no power cell. No modules available until a power cell is reinstalled. Robotics may provide assistance."
icon_state = "nocell"
-/obj/screen/alert/emptycell
+/atom/movable/screen/alert/emptycell
name = "Out of Power"
desc = "Unit's power cell has no charge remaining. No modules available until power cell is recharged. \
Recharging stations are available in robotics, the dormitory bathrooms, and the AI satellite."
icon_state = "emptycell"
-/obj/screen/alert/lowcell
+/atom/movable/screen/alert/lowcell
name = "Low Charge"
desc = "Unit's power cell is running low. Recharging stations are available in robotics, the dormitory bathrooms, and the AI satellite."
icon_state = "lowcell"
//Diona Nymph
-/obj/screen/alert/nymph
+/atom/movable/screen/alert/nymph
name = "Gestalt merge"
desc = "You have merged with a diona gestalt and are now part of it's biomass. You can still wiggle yourself free though."
-/obj/screen/alert/nymph/Click()
+/atom/movable/screen/alert/nymph/Click()
if(!usr || !usr.client)
return
if(isnymph(usr))
var/mob/living/simple_animal/diona/D = usr
return D.resist()
-/obj/screen/alert/gestalt
+/atom/movable/screen/alert/gestalt
name = "Merged nymph"
desc = "You have merged with one or more diona nymphs. Click here to drop it (or one of them)."
-/obj/screen/alert/gestalt/Click()
+/atom/movable/screen/alert/gestalt/Click()
if(!usr || !usr.client)
return
@@ -433,25 +433,25 @@ Recharging stations are available in robotics, the dormitory bathrooms, and the
D.split(TRUE)
//Need to cover all use cases - emag, illegal upgrade module, malf AI hack, traitor cyborg
-/obj/screen/alert/hacked
+/atom/movable/screen/alert/hacked
name = "Hacked"
desc = "Hazardous non-standard equipment detected. Please ensure any usage of this equipment is in line with unit's laws, if any."
icon_state = "hacked"
-/obj/screen/alert/locked
+/atom/movable/screen/alert/locked
name = "Locked Down"
desc = "Unit has been remotely locked down. Usage of a Robotics Control Console like the one in the Research Director's \
office by your AI master or any qualified human may resolve this matter. Robotics may provide further assistance if necessary."
icon_state = "locked"
-/obj/screen/alert/newlaw
+/atom/movable/screen/alert/newlaw
name = "Law Update"
desc = "Laws have potentially been uploaded to or removed from this unit. Please be aware of any changes \
so as to remain in compliance with the most up-to-date laws."
icon_state = "newlaw"
timeout = 300
-/obj/screen/alert/hackingapc
+/atom/movable/screen/alert/hackingapc
name = "Hacking APC"
desc = "An Area Power Controller is being hacked. When the process is \
complete, you will have exclusive control of it, and you will gain \
@@ -460,11 +460,11 @@ so as to remain in compliance with the most up-to-date laws."
timeout = 600
var/atom/target = null
-/obj/screen/alert/hackingapc/Destroy()
+/atom/movable/screen/alert/hackingapc/Destroy()
target = null
return ..()
-/obj/screen/alert/hackingapc/Click()
+/atom/movable/screen/alert/hackingapc/Click()
if(!usr || !usr.client)
return
if(!target)
@@ -475,22 +475,22 @@ so as to remain in compliance with the most up-to-date laws."
AI.eyeobj.setLoc(T)
//MECHS
-/obj/screen/alert/low_mech_integrity
+/atom/movable/screen/alert/low_mech_integrity
name = "Mech Damaged"
desc = "Mech integrity is low."
icon_state = "low_mech_integrity"
-/obj/screen/alert/mech_port_available
+/atom/movable/screen/alert/mech_port_available
name = "Connect to Port"
desc = "Click here to connect to an air port and refill your oxygen!"
icon_state = "mech_port"
var/obj/machinery/atmospherics/unary/portables_connector/target = null
-/obj/screen/alert/mech_port_available/Destroy()
+/atom/movable/screen/alert/mech_port_available/Destroy()
target = null
return ..()
-/obj/screen/alert/mech_port_available/Click()
+/atom/movable/screen/alert/mech_port_available/Click()
if(!usr || !usr.client)
return
if(!ismecha(usr.loc) || !target)
@@ -501,12 +501,12 @@ so as to remain in compliance with the most up-to-date laws."
else
to_chat(usr, "[M] failed to connect to the port.")
-/obj/screen/alert/mech_port_disconnect
+/atom/movable/screen/alert/mech_port_disconnect
name = "Disconnect from Port"
desc = "Click here to disconnect from your air port."
icon_state = "mech_port_x"
-/obj/screen/alert/mech_port_disconnect/Click()
+/atom/movable/screen/alert/mech_port_disconnect/Click()
if(!usr || !usr.client)
return
if(!ismecha(usr.loc))
@@ -517,40 +517,40 @@ so as to remain in compliance with the most up-to-date laws."
else
to_chat(usr, "[M] is not connected to a port at the moment.")
-/obj/screen/alert/mech_nocell
+/atom/movable/screen/alert/mech_nocell
name = "Missing Power Cell"
desc = "Mech has no power cell."
icon_state = "nocell"
-/obj/screen/alert/mech_emptycell
+/atom/movable/screen/alert/mech_emptycell
name = "Out of Power"
desc = "Mech is out of power."
icon_state = "emptycell"
-/obj/screen/alert/mech_lowcell
+/atom/movable/screen/alert/mech_lowcell
name = "Low Charge"
desc = "Mech is running out of power."
icon_state = "lowcell"
-/obj/screen/alert/mech_maintenance
+/atom/movable/screen/alert/mech_maintenance
name = "Maintenance Protocols"
desc = "Maintenance protocols are currently in effect, most actions disabled."
icon_state = "locked"
//GUARDIANS
-/obj/screen/alert/cancharge
+/atom/movable/screen/alert/cancharge
name = "Charge Ready"
desc = "You are ready to charge at a location!"
icon_state = "guardian_charge"
alerttooltipstyle = "parasite"
-/obj/screen/alert/canstealth
+/atom/movable/screen/alert/canstealth
name = "Stealth Ready"
desc = "You are ready to enter stealth!"
icon_state = "guardian_canstealth"
alerttooltipstyle = "parasite"
-/obj/screen/alert/instealth
+/atom/movable/screen/alert/instealth
name = "In Stealth"
desc = "You are in stealth and your next attack will do bonus damage!"
icon_state = "guardian_instealth"
@@ -559,32 +559,32 @@ so as to remain in compliance with the most up-to-date laws."
//GHOSTS
//TODO: expand this system to replace the pollCandidates/CheckAntagonist/"choose quickly"/etc Yes/No messages
-/obj/screen/alert/notify_cloning
+/atom/movable/screen/alert/notify_cloning
name = "Revival"
desc = "Someone is trying to revive you. Re-enter your corpse if you want to be revived!"
icon_state = "template"
timeout = 300
-/obj/screen/alert/notify_cloning/Click()
+/atom/movable/screen/alert/notify_cloning/Click()
if(!usr || !usr.client)
return
var/mob/dead/observer/G = usr
G.reenter_corpse()
-/obj/screen/alert/ghost
+/atom/movable/screen/alert/ghost
name = "Ghost"
desc = "Would you like to ghost? You will be notified when your body is removed from the nest."
icon_state = "template"
timeout = 5 MINUTES // longer than any infection should be
-/obj/screen/alert/ghost/Initialize(mapload)
+/atom/movable/screen/alert/ghost/Initialize(mapload)
. = ..()
var/image/I = image('icons/mob/mob.dmi', icon_state = "ghost", layer = FLOAT_LAYER, dir = SOUTH)
I.layer = FLOAT_LAYER
I.plane = FLOAT_PLANE
overlays += I
-/obj/screen/alert/ghost/Click()
+/atom/movable/screen/alert/ghost/Click()
var/mob/living/carbon/human/infected_user = usr
if(!istype(infected_user) || infected_user.stat == DEAD)
infected_user.clear_alert("ghost_nest")
@@ -595,7 +595,7 @@ so as to remain in compliance with the most up-to-date laws."
return
infected_user.ghostize(TRUE)
-/obj/screen/alert/notify_action
+/atom/movable/screen/alert/notify_action
name = "Body created"
desc = "A body was created. You can enter it."
icon_state = "template"
@@ -607,7 +607,7 @@ so as to remain in compliance with the most up-to-date laws."
var/image/signed_up_overlay // image showing that you're signed up
var/datum/candidate_poll/poll // If set, on Click() it'll register the player as a candidate
-/obj/screen/alert/notify_action/process()
+/atom/movable/screen/alert/notify_action/process()
if(show_time_left)
var/timeleft = timeout - world.time
if(timeleft <= 0)
@@ -632,14 +632,14 @@ so as to remain in compliance with the most up-to-date laws."
qdel(O)
..()
-/obj/screen/alert/notify_action/Destroy()
+/atom/movable/screen/alert/notify_action/Destroy()
target = null
if(signed_up_overlay)
overlays -= signed_up_overlay
qdel(signed_up_overlay)
return ..()
-/obj/screen/alert/notify_action/Click()
+/atom/movable/screen/alert/notify_action/Click()
if(!usr || !usr.client)
return
var/mob/dead/observer/G = usr
@@ -672,7 +672,7 @@ so as to remain in compliance with the most up-to-date laws."
return
G.ManualFollow(target)
-/obj/screen/alert/notify_action/Topic(href, href_list)
+/atom/movable/screen/alert/notify_action/Topic(href, href_list)
if(!href_list["signup"])
return
if(!poll)
@@ -684,7 +684,7 @@ so as to remain in compliance with the most up-to-date laws."
poll.sign_up(G)
update_signed_up_alert(G)
-/obj/screen/alert/notify_action/proc/update_signed_up_alert(mob/user)
+/atom/movable/screen/alert/notify_action/proc/update_signed_up_alert(mob/user)
if(!signed_up_overlay)
signed_up_overlay = image('icons/mob/screen_gen.dmi', icon_state = "selector")
signed_up_overlay.layer = FLOAT_LAYER
@@ -694,7 +694,7 @@ so as to remain in compliance with the most up-to-date laws."
else
overlays -= signed_up_overlay
-/obj/screen/alert/notify_action/proc/display_stacks(stacks = 1)
+/atom/movable/screen/alert/notify_action/proc/display_stacks(stacks = 1)
if(stacks <= 1)
return
@@ -712,7 +712,7 @@ so as to remain in compliance with the most up-to-date laws."
qdel(O)
-/obj/screen/alert/notify_soulstone
+/atom/movable/screen/alert/notify_soulstone
name = "Soul Stone"
desc = "Someone is trying to capture your soul in a soul stone. Click to allow it."
icon_state = "template"
@@ -720,7 +720,7 @@ so as to remain in compliance with the most up-to-date laws."
var/obj/item/soulstone/stone = null
var/stoner = null
-/obj/screen/alert/notify_soulstone/Click()
+/atom/movable/screen/alert/notify_soulstone/Click()
if(!usr || !usr.client)
return
if(stone)
@@ -728,39 +728,39 @@ so as to remain in compliance with the most up-to-date laws."
impossible for you to get back into the game as your regular character.", "Respawn", list("No", "Yes")) == "Yes")
stone?.opt_in = TRUE
-/obj/screen/alert/notify_soulstone/Destroy()
+/atom/movable/screen/alert/notify_soulstone/Destroy()
stone = null
return ..()
-/obj/screen/alert/notify_mapvote
+/atom/movable/screen/alert/notify_mapvote
name = "Map Vote"
desc = "Vote on which map you would like to play on next!"
icon_state = "map_vote"
-/obj/screen/alert/notify_mapvote/Click()
+/atom/movable/screen/alert/notify_mapvote/Click()
usr.client.vote()
//OBJECT-BASED
-/obj/screen/alert/restrained/buckled
+/atom/movable/screen/alert/restrained/buckled
name = "Buckled"
desc = "You've been buckled to something. Click the alert to unbuckle unless you're handcuffed."
icon_state = "buckled"
-/obj/screen/alert/restrained/handcuffed
+/atom/movable/screen/alert/restrained/handcuffed
name = "Handcuffed"
desc = "You're handcuffed and can't act. If anyone drags you, you won't be able to move. Click the alert to free yourself."
-/obj/screen/alert/restrained/legcuffed
+/atom/movable/screen/alert/restrained/legcuffed
name = "Legcuffed"
desc = "You're legcuffed, which slows you down considerably. Click the alert to free yourself."
-/obj/screen/alert/restrained/Click()
+/atom/movable/screen/alert/restrained/Click()
if(isliving(usr))
var/mob/living/L = usr
return L.resist()
-/obj/screen/alert/restrained/buckled/Click()
+/atom/movable/screen/alert/restrained/buckled/Click()
var/mob/living/L = usr
if(!istype(L) || !L.can_resist())
return
@@ -780,7 +780,7 @@ so as to remain in compliance with the most up-to-date laws."
mymob.client.screen -= alerts[alerts[i]]
return TRUE
for(var/i in 1 to alerts.len)
- var/obj/screen/alert/alert = alerts[alerts[i]]
+ var/atom/movable/screen/alert/alert = alerts[alerts[i]]
if(alert.icon_state == "template")
if(!icon_pref)
icon_pref = ui_style2icon(mymob.client.prefs.UI_style)
@@ -802,7 +802,7 @@ so as to remain in compliance with the most up-to-date laws."
mymob.client.screen |= alert
return TRUE
-/obj/screen/alert/Click(location, control, params)
+/atom/movable/screen/alert/Click(location, control, params)
if(!usr || !usr.client)
return
var/paramslist = params2list(params)
@@ -812,7 +812,7 @@ so as to remain in compliance with the most up-to-date laws."
if(master)
return usr.client.Click(master, location, control, params)
-/obj/screen/alert/Destroy()
+/atom/movable/screen/alert/Destroy()
severity = 0
master = null
screen_loc = ""
diff --git a/code/_onclick/hud/alien_hud.dm b/code/_onclick/hud/alien_hud.dm
index a541fca8b57..c0e4a3ee097 100644
--- a/code/_onclick/hud/alien_hud.dm
+++ b/code/_onclick/hud/alien_hud.dm
@@ -1,20 +1,20 @@
-/obj/screen/alien
+/atom/movable/screen/alien
icon = 'icons/mob/screen_alien.dmi'
-/obj/screen/alien/leap
+/atom/movable/screen/alien/leap
name = "toggle leap"
icon_state = "leap_off"
-/obj/screen/alien/leap/Click()
+/atom/movable/screen/alien/leap/Click()
if(isalienadult(usr))
var/mob/living/carbon/alien/humanoid/hunter/AH = usr
AH.toggle_leap()
-/obj/screen/alien/nightvision
+/atom/movable/screen/alien/nightvision
name = "toggle night-vision"
icon_state = "nightvision1"
-/obj/screen/alien/nightvision/Click()
+/atom/movable/screen/alien/nightvision/Click()
var/mob/living/carbon/alien/humanoid/A = usr
A.night_vision_toggle()
@@ -32,7 +32,7 @@
update_sight()
-/obj/screen/alien/plasma_display
+/atom/movable/screen/alien/plasma_display
icon = 'icons/mob/screen_gen.dmi'
icon_state = "power_display2"
name = "plasma stored"
@@ -46,20 +46,20 @@
/datum/hud/alien/New(mob/living/carbon/alien/humanoid/owner)
..()
- var/obj/screen/using
- var/obj/screen/inventory/inv_box
+ var/atom/movable/screen/using
+ var/atom/movable/screen/inventory/inv_box
- using = new /obj/screen/language_menu
+ using = new /atom/movable/screen/language_menu
using.screen_loc = ui_alien_language_menu
static_inventory += using
- using = new /obj/screen/act_intent/alien()
+ using = new /atom/movable/screen/act_intent/alien()
using.icon_state = (mymob.a_intent == "hurt" ? INTENT_HARM : mymob.a_intent)
using.screen_loc = ui_acti
static_inventory += using
action_intent = using
- using = new /obj/screen/mov_intent()
+ using = new /atom/movable/screen/mov_intent()
using.icon = 'icons/mob/screen_alien.dmi'
using.icon_state = (mymob.m_intent == MOVE_INTENT_RUN ? "running" : "walking")
using.screen_loc = ui_movi
@@ -67,13 +67,13 @@
move_intent = using
if(isalienhunter(mymob))
- mymob.leap_icon = new /obj/screen/alien/leap()
+ mymob.leap_icon = new /atom/movable/screen/alien/leap()
mymob.leap_icon.icon = 'icons/mob/screen_alien.dmi'
mymob.leap_icon.screen_loc = ui_alien_storage_r
static_inventory += mymob.leap_icon
//equippable shit
- inv_box = new /obj/screen/inventory/hand()
+ inv_box = new /atom/movable/screen/inventory/hand()
inv_box.name = "r_hand"
inv_box.icon = 'icons/mob/screen_alien.dmi'
inv_box.icon_state = "hand_r"
@@ -81,7 +81,7 @@
inv_box.slot_id = SLOT_HUD_RIGHT_HAND
static_inventory += inv_box
- inv_box = new /obj/screen/inventory/hand()
+ inv_box = new /atom/movable/screen/inventory/hand()
inv_box.name = "l_hand"
inv_box.icon = 'icons/mob/screen_alien.dmi'
inv_box.icon_state = "hand_l"
@@ -89,14 +89,14 @@
inv_box.slot_id = SLOT_HUD_LEFT_HAND
static_inventory += inv_box
- using = new /obj/screen/swap_hand()
+ using = new /atom/movable/screen/swap_hand()
using.name = "hand"
using.icon = 'icons/mob/screen_alien.dmi'
using.icon_state = "hand1"
using.screen_loc = ui_swaphand1
static_inventory += using
- using = new /obj/screen/swap_hand()
+ using = new /atom/movable/screen/swap_hand()
using.name = "hand"
using.icon = 'icons/mob/screen_alien.dmi'
using.icon_state = "hand2"
@@ -105,47 +105,47 @@
//end of equippable shit
- using = new /obj/screen/resist()
+ using = new /atom/movable/screen/resist()
using.name = "resist"
using.icon = 'icons/mob/screen_alien.dmi'
using.icon_state = "act_resist"
using.screen_loc = ui_pull_resist
static_inventory += using
- using = new /obj/screen/drop()
+ using = new /atom/movable/screen/drop()
using.name = "drop"
using.icon = 'icons/mob/screen_alien.dmi'
using.icon_state = "act_drop"
using.screen_loc = ui_drop_throw
static_inventory += using
- mymob.throw_icon = new /obj/screen/throw_catch()
+ mymob.throw_icon = new /atom/movable/screen/throw_catch()
mymob.throw_icon.icon = 'icons/mob/screen_alien.dmi'
mymob.throw_icon.screen_loc = ui_drop_throw
static_inventory += mymob.throw_icon
- mymob.healths = new /obj/screen/healths/alien()
+ mymob.healths = new /atom/movable/screen/healths/alien()
infodisplay += mymob.healths
- nightvisionicon = new /obj/screen/alien/nightvision()
+ nightvisionicon = new /atom/movable/screen/alien/nightvision()
infodisplay += nightvisionicon
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = 'icons/mob/screen_alien.dmi'
mymob.pullin.hud = src
mymob.pullin.update_icon(UPDATE_ICON_STATE)
mymob.pullin.screen_loc = ui_pull_resist
hotkeybuttons += mymob.pullin
- alien_plasma_display = new /obj/screen/alien/plasma_display()
+ alien_plasma_display = new /atom/movable/screen/alien/plasma_display()
infodisplay += alien_plasma_display
- zone_select = new /obj/screen/zone_sel/alien()
+ zone_select = new /atom/movable/screen/zone_sel/alien()
zone_select.hud = src
zone_select.update_icon(UPDATE_OVERLAYS)
static_inventory += zone_select
- for(var/obj/screen/inventory/inv in (static_inventory + toggleable_inventory))
+ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory))
if(inv.slot_id)
inv.hud = src
inv_slots[inv.slot_id] = inv
diff --git a/code/_onclick/hud/alien_larva.dm b/code/_onclick/hud/alien_larva.dm
index f97e593d088..e911c2bb396 100644
--- a/code/_onclick/hud/alien_larva.dm
+++ b/code/_onclick/hud/alien_larva.dm
@@ -5,37 +5,37 @@
/datum/hud/larva/New(mob/owner)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
- using = new /obj/screen/act_intent/alien()
+ using = new /atom/movable/screen/act_intent/alien()
using.icon_state = mymob.a_intent
static_inventory += using
action_intent = using
- using = new /obj/screen/mov_intent()
+ using = new /atom/movable/screen/mov_intent()
using.icon = 'icons/mob/screen_alien.dmi'
using.icon_state = (mymob.m_intent == MOVE_INTENT_RUN ? "running" : "walking")
static_inventory += using
move_intent = using
- mymob.healths = new /obj/screen/healths/alien()
+ mymob.healths = new /atom/movable/screen/healths/alien()
infodisplay += mymob.healths
- nightvisionicon = new /obj/screen/alien/nightvision()
+ nightvisionicon = new /atom/movable/screen/alien/nightvision()
infodisplay += nightvisionicon
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = 'icons/mob/screen_alien.dmi'
mymob.pullin.hud = src
mymob.pullin.update_icon(UPDATE_ICON_STATE)
mymob.pullin.screen_loc = ui_pull_resist
hotkeybuttons += mymob.pullin
- using = new /obj/screen/language_menu
+ using = new /atom/movable/screen/language_menu
using.screen_loc = ui_alienlarva_language_menu
static_inventory += using
- zone_select = new /obj/screen/zone_sel/alien()
+ zone_select = new /atom/movable/screen/zone_sel/alien()
zone_select.hud = src
zone_select.update_icon(UPDATE_OVERLAYS)
static_inventory += zone_select
diff --git a/code/_onclick/hud/blob_overmind.dm b/code/_onclick/hud/blob_overmind.dm
index 708978b64bc..dfb74955d1b 100644
--- a/code/_onclick/hud/blob_overmind.dm
+++ b/code/_onclick/hud/blob_overmind.dm
@@ -2,135 +2,135 @@
if(client && !hud_used)
hud_used = new /datum/hud/blob_overmind(src)
-/obj/screen/blob
+/atom/movable/screen/blob
icon = 'icons/mob/blob.dmi'
-/obj/screen/blob/MouseEntered(location,control,params)
+/atom/movable/screen/blob/MouseEntered(location, control, params)
. = ..()
openToolTip(usr,src,params,title = name,content = desc, theme = "blob")
-/obj/screen/blob/MouseExited()
+/atom/movable/screen/blob/MouseExited()
closeToolTip(usr)
return ..()
-/obj/screen/blob/BlobHelp
+/atom/movable/screen/blob/BlobHelp
icon_state = "ui_help"
name = "Blob Help"
desc = "Help on playing blob!"
-/obj/screen/blob/BlobHelp/Click()
+/atom/movable/screen/blob/BlobHelp/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.blob_help()
-/obj/screen/blob/JumpToNode
+/atom/movable/screen/blob/JumpToNode
icon_state = "ui_tonode"
name = "Jump to Node"
desc = "Moves your camera to a selected blob node."
-/obj/screen/blob/JumpToNode/Click()
+/atom/movable/screen/blob/JumpToNode/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.jump_to_node()
-/obj/screen/blob/JumpToCore
+/atom/movable/screen/blob/JumpToCore
icon_state = "ui_tocore"
name = "Jump to Core"
desc = "Moves your camera to your blob core."
-/obj/screen/blob/JumpToCore/MouseEntered(location,control,params)
+/atom/movable/screen/blob/JumpToCore/MouseEntered(location, control, params)
if(hud && hud.mymob && isovermind(hud.mymob))
name = initial(name)
desc = initial(desc)
return ..()
-/obj/screen/blob/JumpToCore/Click()
+/atom/movable/screen/blob/JumpToCore/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.transport_core()
-/obj/screen/blob/Blobbernaut
+/atom/movable/screen/blob/Blobbernaut
icon_state = "ui_blobbernaut"
name = "Produce Blobbernaut (60)"
desc = "Produces a strong, intelligent blobbernaut from a factory blob for 60 resources.
The factory blob will be destroyed in the process."
-/obj/screen/blob/Blobbernaut/Click()
+/atom/movable/screen/blob/Blobbernaut/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.create_blobbernaut()
-/obj/screen/blob/StorageBlob
+/atom/movable/screen/blob/StorageBlob
icon_state = "ui_storage"
name = "Produce Storage Blob (40)"
desc = "Produces a storage blob for 40 resources.
Storage blobs will raise your max resource cap by 50."
-/obj/screen/blob/StorageBlob/Click()
+/atom/movable/screen/blob/StorageBlob/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.create_storage()
-/obj/screen/blob/ResourceBlob
+/atom/movable/screen/blob/ResourceBlob
icon_state = "ui_resource"
name = "Produce Resource Blob (40)"
desc = "Produces a resource blob for 40 resources.
Resource blobs will give you resources every few seconds."
-/obj/screen/blob/ResourceBlob/Click()
+/atom/movable/screen/blob/ResourceBlob/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.create_resource()
-/obj/screen/blob/NodeBlob
+/atom/movable/screen/blob/NodeBlob
icon_state = "ui_node"
name = "Produce Node Blob (60)"
desc = "Produces a node blob for 60 resources.
Node blobs will expand and activate nearby resource and factory blobs."
-/obj/screen/blob/NodeBlob/Click()
+/atom/movable/screen/blob/NodeBlob/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.create_node()
-/obj/screen/blob/FactoryBlob
+/atom/movable/screen/blob/FactoryBlob
icon_state = "ui_factory"
name = "Produce Factory Blob (60)"
desc = "Produces a factory blob for 60 resources.
Factory blobs will produce spores every few seconds."
-/obj/screen/blob/FactoryBlob/Click()
+/atom/movable/screen/blob/FactoryBlob/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.create_factory()
-/obj/screen/blob/ReadaptChemical
+/atom/movable/screen/blob/ReadaptChemical
icon_state = "ui_chemswap"
name = "Readapt Chemical (50)"
desc = "Randomly rerolls your chemical for 50 resources."
-/obj/screen/blob/ReadaptChemical/MouseEntered(location,control,params)
+/atom/movable/screen/blob/ReadaptChemical/MouseEntered(location, control, params)
if(hud && hud.mymob && isovermind(hud.mymob))
name = initial(name)
desc = initial(desc)
return ..()
-/obj/screen/blob/ReadaptChemical/Click()
+/atom/movable/screen/blob/ReadaptChemical/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.chemical_reroll()
-/obj/screen/blob/RelocateCore
+/atom/movable/screen/blob/RelocateCore
icon_state = "ui_swap"
name = "Relocate Core (80)"
desc = "Swaps a node and your core for 80 resources."
-/obj/screen/blob/RelocateCore/Click()
+/atom/movable/screen/blob/RelocateCore/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.relocate_core()
-/obj/screen/blob/Split
+/atom/movable/screen/blob/Split
icon_state = "ui_split"
name = "Split consciousness (100)"
desc = "Creates another Blob Overmind at the targeted node. One use only.
Offspring are unable to use this ability."
-/obj/screen/blob/Split/Click()
+/atom/movable/screen/blob/Split/Click()
if(isovermind(usr))
var/mob/camera/blob/B = usr
B.split_consciousness()
@@ -139,9 +139,9 @@
/datum/hud/blob_overmind/New(mob/user)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
- blobpwrdisplay = new /obj/screen()
+ blobpwrdisplay = new /atom/movable/screen()
blobpwrdisplay.name = "blob power"
blobpwrdisplay.icon_state = "block"
blobpwrdisplay.screen_loc = ui_health
@@ -150,56 +150,56 @@
blobpwrdisplay.plane = ABOVE_HUD_PLANE
static_inventory += blobpwrdisplay
- blobhealthdisplay = new /obj/screen()
+ blobhealthdisplay = new /atom/movable/screen()
blobhealthdisplay.name = "blob health"
blobhealthdisplay.icon_state = "block"
blobhealthdisplay.screen_loc = ui_internal
static_inventory += blobhealthdisplay
- using = new /obj/screen/blob/BlobHelp()
+ using = new /atom/movable/screen/blob/BlobHelp()
using.screen_loc = "WEST:6,NORTH:-3"
static_inventory += using
- using = new /obj/screen/blob/JumpToNode()
+ using = new /atom/movable/screen/blob/JumpToNode()
using.screen_loc = ui_inventory
static_inventory += using
- using = new /obj/screen/blob/JumpToCore()
+ using = new /atom/movable/screen/blob/JumpToCore()
using.screen_loc = ui_zonesel
using.hud = src
static_inventory += using
- using = new /obj/screen/blob/Blobbernaut()
+ using = new /atom/movable/screen/blob/Blobbernaut()
using.screen_loc = ui_id
static_inventory += using
- using = new /obj/screen/blob/StorageBlob()
+ using = new /atom/movable/screen/blob/StorageBlob()
using.screen_loc = ui_belt
static_inventory += using
- using = new /obj/screen/blob/ResourceBlob()
+ using = new /atom/movable/screen/blob/ResourceBlob()
using.screen_loc = ui_back
static_inventory += using
- using = new /obj/screen/blob/NodeBlob()
+ using = new /atom/movable/screen/blob/NodeBlob()
using.screen_loc = using.screen_loc = ui_rhand
static_inventory += using
- using = new /obj/screen/blob/FactoryBlob()
+ using = new /atom/movable/screen/blob/FactoryBlob()
using.screen_loc = using.screen_loc = ui_lhand
static_inventory += using
- using = new /obj/screen/blob/ReadaptChemical()
+ using = new /atom/movable/screen/blob/ReadaptChemical()
using.screen_loc = ui_storage1
using.hud = src
static_inventory += using
- using = new /obj/screen/blob/RelocateCore()
+ using = new /atom/movable/screen/blob/RelocateCore()
using.screen_loc = ui_storage2
static_inventory += using
var/mob/camera/blob/B = user
if(!B.is_offspring) // Checks if the blob is an offspring, to not create split button if it is
- using = new /obj/screen/blob/Split()
+ using = new /atom/movable/screen/blob/Split()
using.screen_loc = ui_acti
static_inventory += using
diff --git a/code/_onclick/hud/bot_hud.dm b/code/_onclick/hud/bot_hud.dm
index 7370454bf96..9a27937a5be 100644
--- a/code/_onclick/hud/bot_hud.dm
+++ b/code/_onclick/hud/bot_hud.dm
@@ -1,12 +1,12 @@
-/obj/screen/bot
+/atom/movable/screen/bot
icon = 'icons/mob/screen_bot.dmi'
-/obj/screen/bot/radio
+/atom/movable/screen/bot/radio
name = "radio"
icon_state = "radio"
screen_loc = ui_bot_radio
-/obj/screen/bot/radio/Click()
+/atom/movable/screen/bot/radio/Click()
if(isbot(usr))
var/mob/living/simple_animal/bot/B = usr
B.Radio.interact(usr)
@@ -17,16 +17,16 @@
/datum/hud/bot/New(mob/owner)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
- using = new /obj/screen/bot/radio()
+ using = new /atom/movable/screen/bot/radio()
static_inventory += using
- mymob.healths = new /obj/screen/healths/bot()
+ mymob.healths = new /atom/movable/screen/healths/bot()
mymob.healths.screen_loc = ui_borg_health
infodisplay += mymob.healths
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = 'icons/mob/screen_bot.dmi'
mymob.pullin.hud = src
mymob.pullin.update_icon(UPDATE_ICON_STATE)
diff --git a/code/_onclick/hud/constructs_hud.dm b/code/_onclick/hud/constructs_hud.dm
index 0c3f9eaf8a4..e2dea642407 100644
--- a/code/_onclick/hud/constructs_hud.dm
+++ b/code/_onclick/hud/constructs_hud.dm
@@ -8,7 +8,7 @@
/datum/hud/construct/armoured/New(mob/owner)
..()
- mymob.healths = new /obj/screen()
+ mymob.healths = new /atom/movable/screen()
mymob.healths.icon = 'icons/mob/screen_construct.dmi'
mymob.healths.icon_state = "juggernaut_health0"
mymob.healths.name = "health"
@@ -21,7 +21,7 @@
/datum/hud/construct/builder/New(mob/owner)
..()
- mymob.healths = new /obj/screen()
+ mymob.healths = new /atom/movable/screen()
mymob.healths.icon = 'icons/mob/screen_construct.dmi'
mymob.healths.icon_state = "artificer_health0"
mymob.healths.name = "health"
@@ -34,7 +34,7 @@
/datum/hud/construct/wraith/New(mob/owner)
..()
- mymob.healths = new /obj/screen()
+ mymob.healths = new /atom/movable/screen()
mymob.healths.icon = 'icons/mob/screen_construct.dmi'
mymob.healths.icon_state = "wraith_health0"
mymob.healths.name = "health"
@@ -47,7 +47,7 @@
/datum/hud/construct/harvester/New(mob/owner)
..()
- mymob.healths = new /obj/screen()
+ mymob.healths = new /atom/movable/screen()
mymob.healths.icon = 'icons/mob/screen_construct.dmi'
mymob.healths.icon_state = "harvester_health0"
mymob.healths.name = "health"
@@ -56,13 +56,13 @@
/datum/hud/construct/New(mob/owner)
..()
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = 'icons/mob/screen_construct.dmi'
mymob.pullin.icon_state = "pull0"
mymob.pullin.name = "pull"
mymob.pullin.screen_loc = ui_construct_pull
- var/obj/screen/using
- using = new /obj/screen/act_intent/simple_animal()
+ var/atom/movable/screen/using
+ using = new /atom/movable/screen/act_intent/simple_animal()
using.icon_state = mymob.a_intent
static_inventory += using
action_intent = using
diff --git a/code/_onclick/hud/follow_alert.dm b/code/_onclick/hud/follow_alert.dm
index d8f95d06986..b3d0f10c4ad 100644
--- a/code/_onclick/hud/follow_alert.dm
+++ b/code/_onclick/hud/follow_alert.dm
@@ -1,4 +1,4 @@
-/obj/screen/alert/augury
+/atom/movable/screen/alert/augury
name = "Something interesting!"
desc = "Click to follow."
/// The atom being followed
@@ -19,7 +19,7 @@
* * follow_target: The atom to start out following. Can be null, in which case change_targets() should be used at some point.
* * alert_overlay_override: If follow_target is provided (or not), use this for the alert image.
*/
-/obj/screen/alert/augury/Initialize(mapload, atom/movable/follow_target, image/alert_overlay_override)
+/atom/movable/screen/alert/augury/Initialize(mapload, atom/movable/follow_target, image/alert_overlay_override)
. = ..()
src.follow_target = follow_target
@@ -37,7 +37,7 @@
alert_overlay_override.plane = FLOAT_PLANE
overlays += alert_overlay_override
-/obj/screen/alert/augury/Click(location, control, params)
+/atom/movable/screen/alert/augury/Click(location, control, params)
. = ..()
if(!usr || !usr.client || !isobserver(usr))
return
@@ -48,7 +48,7 @@
to_chat(usr, "You are now auto-following [thing_followed]. Click again to stop.")
add_follower(usr)
-/obj/screen/alert/augury/Destroy(force)
+/atom/movable/screen/alert/augury/Destroy(force)
for(var/atom/movable/follower in followers) // in case something was nulled
follower.stop_orbit()
@@ -68,7 +68,7 @@
/// Executed when the parent is deleted.
/// Don't immediately kill ourselves, since it's possible that we might want to move somewhere else
/// (for example, after a meteor strike)
-/obj/screen/alert/augury/proc/on_following_qdel(atom/movable/A)
+/atom/movable/screen/alert/augury/proc/on_following_qdel(atom/movable/A)
SIGNAL_HANDLER // COMSIG_PARENT_QDELETING
for(var/atom/movable/follower in followers)
follower.stop_orbit()
@@ -86,7 +86,7 @@
* Arguments:
* * next_to - The next atom to follow.
*/
-/obj/screen/alert/augury/proc/change_targets(atom/movable/next_to)
+/atom/movable/screen/alert/augury/proc/change_targets(atom/movable/next_to)
// unregister first so we aren't bombarded when changing orbits
if(isnull(next_to))
return
@@ -100,15 +100,15 @@
RegisterSignal(follow_target, COMSIG_ATOM_ORBIT_STOP, PROC_REF(remove_follower_on_stop_orbit))
-/obj/screen/alert/augury/proc/add_follower(atom/movable/follower)
+/atom/movable/screen/alert/augury/proc/add_follower(atom/movable/follower)
followers |= follower
follower.orbit(follow_target)
-/obj/screen/alert/augury/proc/remove_follower(atom/movable/follower)
+/atom/movable/screen/alert/augury/proc/remove_follower(atom/movable/follower)
followers -= follower
follower.stop_orbit()
-/obj/screen/alert/augury/proc/get_next_target()
+/atom/movable/screen/alert/augury/proc/get_next_target()
if(!length(next_targets))
return
@@ -121,27 +121,27 @@
return target
/// Called when someone stops orbiting our followed object, so they can actually get out of the loop.
-/obj/screen/alert/augury/proc/remove_follower_on_stop_orbit(atom/movable/followed, atom/movable/follower)
+/atom/movable/screen/alert/augury/proc/remove_follower_on_stop_orbit(atom/movable/followed, atom/movable/follower)
SIGNAL_HANDLER // COMSIG_ATOM_ORBIT_STOP
if(locateUID(follower.orbiting_uid) != follow_target)
remove_follower(follower) // don't try to stop the orbit again
/// Meteor alert.
/// Appears during a meteor storm and allows for auto-following of debris.
-/obj/screen/alert/augury/meteor
+/atom/movable/screen/alert/augury/meteor
name = "Meteors incoming!"
desc = "Click to automatically follow debris, and click again to stop."
-/obj/screen/alert/augury/meteor/Initialize(mapload)
+/atom/movable/screen/alert/augury/meteor/Initialize(mapload)
var/image/meteor_img = image(icon = 'icons/obj/meteor.dmi', icon_state = "flaming")
. = ..(mapload, alert_overlay_override = meteor_img)
START_PROCESSING(SSfastprocess, src)
-/obj/screen/alert/augury/meteor/Destroy(force)
+/atom/movable/screen/alert/augury/meteor/Destroy(force)
. = ..()
STOP_PROCESSING(SSfastprocess, src)
-/obj/screen/alert/augury/meteor/process()
+/atom/movable/screen/alert/augury/meteor/process()
var/overridden = FALSE
for(var/obj/effect/meteor/M in GLOB.meteor_list)
if(!is_station_level(M.z))
diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm
index ec6bde573d6..e93a0a206bd 100644
--- a/code/_onclick/hud/fullscreen.dm
+++ b/code/_onclick/hud/fullscreen.dm
@@ -1,5 +1,5 @@
/mob/proc/overlay_fullscreen(category, type, severity)
- var/obj/screen/fullscreen/screen = screens[category]
+ var/atom/movable/screen/fullscreen/screen = screens[category]
if(!screen || screen.type != type)
// needs to be recreated
clear_fullscreen(category, FALSE)
@@ -17,7 +17,7 @@
return screen
/mob/proc/clear_fullscreen(category, animated = 10)
- var/obj/screen/fullscreen/screen = screens[category]
+ var/atom/movable/screen/fullscreen/screen = screens[category]
if(!screen)
return
@@ -41,7 +41,7 @@
/datum/hud/proc/reload_fullscreen()
if(mymob.client)
- var/obj/screen/fullscreen/screen
+ var/atom/movable/screen/fullscreen/screen
var/list/screens = mymob.screens
for(var/category in screens)
screen = screens[category]
@@ -51,7 +51,7 @@
else
mymob.client.screen -= screen
-/obj/screen/fullscreen
+/atom/movable/screen/fullscreen
icon = 'icons/mob/screen_full.dmi'
icon_state = "default"
screen_loc = "CENTER-7,CENTER-7"
@@ -62,66 +62,66 @@
var/severity = 0
var/show_when_dead = FALSE
-/obj/screen/fullscreen/proc/update_for_view(client_view)
+/atom/movable/screen/fullscreen/proc/update_for_view(client_view)
if(screen_loc == "CENTER-7,CENTER-7" && view != client_view)
var/list/actualview = getviewsize(client_view)
view = client_view
transform = matrix(actualview[1]/FULLSCREEN_OVERLAY_RESOLUTION_X, 0, 0, 0, actualview[2]/FULLSCREEN_OVERLAY_RESOLUTION_Y, 0)
-/obj/screen/fullscreen/proc/should_show_to(mob/mymob)
+/atom/movable/screen/fullscreen/proc/should_show_to(mob/mymob)
if(!show_when_dead && mymob.stat == DEAD)
return FALSE
return TRUE
-/obj/screen/fullscreen/Destroy()
+/atom/movable/screen/fullscreen/Destroy()
severity = 0
return ..()
-/obj/screen/fullscreen/brute
+/atom/movable/screen/fullscreen/brute
icon_state = "brutedamageoverlay"
layer = UI_DAMAGE_LAYER
-/obj/screen/fullscreen/oxy
+/atom/movable/screen/fullscreen/oxy
icon_state = "oxydamageoverlay"
layer = UI_DAMAGE_LAYER
-/obj/screen/fullscreen/crit
+/atom/movable/screen/fullscreen/crit
icon_state = "passage"
layer = CRIT_LAYER
-/obj/screen/fullscreen/blind
+/atom/movable/screen/fullscreen/blind
icon_state = "blackimageoverlay"
layer = BLIND_LAYER
-/obj/screen/fullscreen/impaired
+/atom/movable/screen/fullscreen/impaired
icon_state = "impairedoverlay"
-/obj/screen/fullscreen/payback
+/atom/movable/screen/fullscreen/payback
icon = 'icons/mob/screen_payback.dmi'
icon_state = "payback"
show_when_dead = TRUE
-/obj/screen/fullscreen/fog
+/atom/movable/screen/fullscreen/fog
icon = 'icons/mob/screen_fog.dmi'
icon_state = "fog"
color = "#FF0000"
-/obj/screen/fullscreen/flash
+/atom/movable/screen/fullscreen/flash
icon = 'icons/mob/screen_gen.dmi'
screen_loc = "WEST,SOUTH to EAST,NORTH"
icon_state = "flash"
-/obj/screen/fullscreen/flash/noise
+/atom/movable/screen/fullscreen/flash/noise
icon = 'icons/mob/screen_gen.dmi'
screen_loc = "WEST,SOUTH to EAST,NORTH"
icon_state = "noise"
-/obj/screen/fullscreen/high
+/atom/movable/screen/fullscreen/high
icon = 'icons/mob/screen_gen.dmi'
screen_loc = "WEST,SOUTH to EAST,NORTH"
icon_state = "druggy"
-/obj/screen/fullscreen/lighting_backdrop
+/atom/movable/screen/fullscreen/lighting_backdrop
icon = 'icons/mob/screen_gen.dmi'
icon_state = "flash"
transform = matrix(200, 0, 0, 0, 200, 0)
@@ -130,18 +130,18 @@
show_when_dead = TRUE
//Provides darkness to the back of the lighting plane
-/obj/screen/fullscreen/lighting_backdrop/lit
+/atom/movable/screen/fullscreen/lighting_backdrop/lit
invisibility = INVISIBILITY_LIGHTING
layer = BACKGROUND_LAYER+21
color = "#000"
show_when_dead = TRUE
//Provides whiteness in case you don't see lights so everything is still visible
-/obj/screen/fullscreen/lighting_backdrop/unlit
+/atom/movable/screen/fullscreen/lighting_backdrop/unlit
layer = BACKGROUND_LAYER+20
show_when_dead = TRUE
-/obj/screen/fullscreen/see_through_darkness
+/atom/movable/screen/fullscreen/see_through_darkness
icon_state = "nightvision"
plane = LIGHTING_PLANE
layer = LIGHTING_LAYER
@@ -149,7 +149,7 @@
show_when_dead = TRUE
/// An effect which tracks the cursor's location on the screen
-/obj/screen/fullscreen/cursor_catcher
+/atom/movable/screen/fullscreen/cursor_catcher
icon_state = "fullscreen_blocker" // Fullscreen semi transparent icon
plane = HUD_PLANE
mouse_opacity = MOUSE_OPACITY_ICON
@@ -167,14 +167,14 @@
var/mouse_params
/// Links this up with a mob
-/obj/screen/fullscreen/cursor_catcher/proc/assign_to_mob(mob/owner)
+/atom/movable/screen/fullscreen/cursor_catcher/proc/assign_to_mob(mob/owner)
src.owner = owner
view_list = getviewsize(owner.client.view)
RegisterSignal(owner, COMSIG_MOVABLE_MOVED, PROC_REF(on_move))
calculate_params()
/// Update when the mob we're assigned to has moved
-/obj/screen/fullscreen/cursor_catcher/proc/on_move(atom/source, atom/oldloc, dir, forced)
+/atom/movable/screen/fullscreen/cursor_catcher/proc/on_move(atom/source, atom/oldloc, dir, forced)
SIGNAL_HANDLER
if(!given_turf)
@@ -184,18 +184,18 @@
given_turf = locate(given_turf.x + x_offset, given_turf.y + y_offset, given_turf.z)
-/obj/screen/fullscreen/cursor_catcher/MouseEntered(location, control, params)
+/atom/movable/screen/fullscreen/cursor_catcher/MouseEntered(location, control, params)
. = ..()
MouseMove(location, control, params)
if(usr == owner)
calculate_params()
-/obj/screen/fullscreen/cursor_catcher/MouseMove(location, control, params)
+/atom/movable/screen/fullscreen/cursor_catcher/MouseMove(location, control, params)
if(usr != owner)
return
mouse_params = params
-/obj/screen/fullscreen/cursor_catcher/proc/calculate_params()
+/atom/movable/screen/fullscreen/cursor_catcher/proc/calculate_params()
var/list/modifiers = params2list(mouse_params)
var/icon_x = text2num(LAZYACCESS(modifiers, "vis-x"))
if(isnull(icon_x))
diff --git a/code/_onclick/hud/ghost_hud.dm b/code/_onclick/hud/ghost_hud.dm
index ac71b9bf51c..1ea78ca1371 100644
--- a/code/_onclick/hud/ghost_hud.dm
+++ b/code/_onclick/hud/ghost_hud.dm
@@ -3,47 +3,47 @@
hud_used = new /datum/hud/ghost(src)
SEND_SIGNAL(src, COMSIG_MOB_HUD_CREATED)
-/obj/screen/ghost
+/atom/movable/screen/ghost
icon = 'icons/mob/screen_ghost.dmi'
-/obj/screen/ghost/MouseEntered()
+/atom/movable/screen/ghost/MouseEntered()
. = ..()
flick(icon_state + "_anim", src)
-/obj/screen/ghost/orbit
+/atom/movable/screen/ghost/orbit
name = "Orbit"
icon_state = "orbit"
-/obj/screen/ghost/orbit/Click()
+/atom/movable/screen/ghost/orbit/Click()
var/mob/dead/observer/G = usr
G.follow()
-/obj/screen/ghost/reenter_corpse
+/atom/movable/screen/ghost/reenter_corpse
name = "Re-enter corpse"
icon_state = "reenter_corpse"
-/obj/screen/ghost/reenter_corpse/Click()
+/atom/movable/screen/ghost/reenter_corpse/Click()
var/mob/dead/observer/G = usr
G.reenter_corpse()
-/obj/screen/ghost/teleport
+/atom/movable/screen/ghost/teleport
name = "Teleport"
icon_state = "teleport"
-/obj/screen/ghost/teleport/Click()
+/atom/movable/screen/ghost/teleport/Click()
var/mob/dead/observer/G = usr
G.dead_tele()
-/obj/screen/ghost/respawn_list
+/atom/movable/screen/ghost/respawn_list
name = "Ghost spawns"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "template"
-/obj/screen/ghost/respawn_list/Initialize(mapload)
+/atom/movable/screen/ghost/respawn_list/Initialize(mapload)
. = ..()
update_hidden_state()
-/obj/screen/ghost/respawn_list/Click()
+/atom/movable/screen/ghost/respawn_list/Click()
var/client/C = hud.mymob.client
hud.inventory_shown = !hud.inventory_shown
if(hud.inventory_shown)
@@ -52,7 +52,7 @@
C.screen -= hud.toggleable_inventory
update_hidden_state()
-/obj/screen/ghost/respawn_list/proc/update_hidden_state()
+/atom/movable/screen/ghost/respawn_list/proc/update_hidden_state()
var/matrix/M = matrix(transform)
M.Turn(-90)
@@ -61,19 +61,19 @@
img.transform = M
overlays += img
-/obj/screen/ghost/respawn_mob
+/atom/movable/screen/ghost/respawn_mob
name = "Mob spawners"
icon_state = "mob_spawner"
-/obj/screen/ghost/respawn_mob/Click()
+/atom/movable/screen/ghost/respawn_mob/Click()
var/mob/dead/observer/G = usr
G.open_spawners_menu()
-/obj/screen/ghost/respawn_pai
+/atom/movable/screen/ghost/respawn_pai
name = "Configure pAI"
icon_state = "pai"
-/obj/screen/ghost/respawn_pai/Click()
+/atom/movable/screen/ghost/respawn_pai/Click()
var/mob/dead/observer/G = usr
if(!GLOB.paiController.check_recruit(G))
to_chat(G, "You are not eligible to become a pAI.")
@@ -85,34 +85,34 @@
/datum/hud/ghost/New(mob/owner)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
- using = new /obj/screen/ghost/orbit()
+ using = new /atom/movable/screen/ghost/orbit()
using.screen_loc = ui_ghost_orbit
static_inventory += using
- using = new /obj/screen/ghost/reenter_corpse()
+ using = new /atom/movable/screen/ghost/reenter_corpse()
using.screen_loc = ui_ghost_reenter_corpse
static_inventory += using
- using = new /obj/screen/ghost/teleport()
+ using = new /atom/movable/screen/ghost/teleport()
using.screen_loc = ui_ghost_teleport
static_inventory += using
static_inventory += using
- using = new /obj/screen/ghost/respawn_list()
+ using = new /atom/movable/screen/ghost/respawn_list()
using.screen_loc = ui_ghost_respawn_list
static_inventory += using
- using = new /obj/screen/ghost/respawn_mob()
+ using = new /atom/movable/screen/ghost/respawn_mob()
using.screen_loc = ui_ghost_respawn_mob
toggleable_inventory += using
- using = new /obj/screen/ghost/respawn_pai()
+ using = new /atom/movable/screen/ghost/respawn_pai()
using.screen_loc = ui_ghost_respawn_pai
toggleable_inventory += using
- for(var/obj/screen/S in (static_inventory + toggleable_inventory))
+ for(var/atom/movable/screen/S in (static_inventory + toggleable_inventory))
S.hud = src
/datum/hud/ghost/show_hud()
diff --git a/code/_onclick/hud/guardian_hud.dm b/code/_onclick/hud/guardian_hud.dm
index d00662f0c76..122b2408c5e 100644
--- a/code/_onclick/hud/guardian_hud.dm
+++ b/code/_onclick/hud/guardian_hud.dm
@@ -4,49 +4,49 @@
/datum/hud/guardian/New(mob/owner)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
- guardianhealthdisplay = new /obj/screen/healths/guardian()
+ guardianhealthdisplay = new /atom/movable/screen/healths/guardian()
infodisplay += guardianhealthdisplay
- using = new /obj/screen/act_intent/guardian()
+ using = new /atom/movable/screen/act_intent/guardian()
using.icon_state = mymob.a_intent
static_inventory += using
action_intent = using
- using = new /obj/screen/guardian/Manifest()
+ using = new /atom/movable/screen/guardian/Manifest()
using.screen_loc = ui_rhand
static_inventory += using
- using = new /obj/screen/guardian/Recall()
+ using = new /atom/movable/screen/guardian/Recall()
using.screen_loc = ui_lhand
static_inventory += using
- using = new /obj/screen/guardian/ToggleMode()
+ using = new /atom/movable/screen/guardian/ToggleMode()
using.screen_loc = ui_storage1
static_inventory += using
- using = new /obj/screen/guardian/ToggleLight()
+ using = new /atom/movable/screen/guardian/ToggleLight()
using.screen_loc = ui_inventory
static_inventory += using
- using = new /obj/screen/guardian/Communicate()
+ using = new /atom/movable/screen/guardian/Communicate()
using.screen_loc = ui_back
static_inventory += using
//HUD BUTTONS
-/obj/screen/guardian
+/atom/movable/screen/guardian
icon = 'icons/mob/guardian.dmi'
icon_state = "base"
-/obj/screen/guardian/Manifest
+/atom/movable/screen/guardian/Manifest
icon_state = "manifest"
name = "Manifest"
desc = "Spring forth into battle!"
-/obj/screen/guardian/Manifest/Click()
+/atom/movable/screen/guardian/Manifest/Click()
if(isguardian(usr))
var/mob/living/simple_animal/hostile/guardian/G = usr
var/summoner_loc = G.summoner.loc
@@ -59,43 +59,43 @@
if(G.loc == G.summoner)
G.Manifest()
-/obj/screen/guardian/Recall
+/atom/movable/screen/guardian/Recall
icon_state = "recall"
name = "Recall"
desc = "Return to your user."
-/obj/screen/guardian/Recall/Click()
+/atom/movable/screen/guardian/Recall/Click()
if(isguardian(usr))
var/mob/living/simple_animal/hostile/guardian/G = usr
G.Recall()
-/obj/screen/guardian/ToggleMode
+/atom/movable/screen/guardian/ToggleMode
icon_state = "toggle"
name = "Toggle Mode"
desc = "Switch between ability modes."
-/obj/screen/guardian/ToggleMode/Click()
+/atom/movable/screen/guardian/ToggleMode/Click()
if(isguardian(usr))
var/mob/living/simple_animal/hostile/guardian/G = usr
G.ToggleMode()
-/obj/screen/guardian/Communicate
+/atom/movable/screen/guardian/Communicate
icon_state = "communicate"
name = "Communicate"
desc = "Communicate telepathically with your user."
-/obj/screen/guardian/Communicate/Click()
+/atom/movable/screen/guardian/Communicate/Click()
if(isguardian(usr))
var/mob/living/simple_animal/hostile/guardian/G = usr
G.Communicate()
-/obj/screen/guardian/ToggleLight
+/atom/movable/screen/guardian/ToggleLight
icon_state = "light"
name = "Toggle Light"
desc = "Glow like star dust."
-/obj/screen/guardian/ToggleLight/Click()
+/atom/movable/screen/guardian/ToggleLight/Click()
if(isguardian(usr))
var/mob/living/simple_animal/hostile/guardian/G = usr
G.ToggleLight()
diff --git a/code/_onclick/hud/hud_datum.dm b/code/_onclick/hud/hud_datum.dm
index 4d65d41e8cc..6cfe661d3ac 100644
--- a/code/_onclick/hud/hud_datum.dm
+++ b/code/_onclick/hud/hud_datum.dm
@@ -12,36 +12,36 @@
var/inventory_shown = TRUE //the inventory
var/hotkey_ui_hidden = FALSE //This is to hide the buttons that can be used via hotkeys. (hotkeybuttons list of buttons)
- var/obj/screen/lingchemdisplay
- var/obj/screen/lingstingdisplay
+ var/atom/movable/screen/lingchemdisplay
+ var/atom/movable/screen/lingstingdisplay
- var/obj/screen/guardianhealthdisplay
+ var/atom/movable/screen/guardianhealthdisplay
- var/obj/screen/blobpwrdisplay
- var/obj/screen/blobhealthdisplay
- var/obj/screen/vampire_blood_display
- var/obj/screen/alien_plasma_display
- var/obj/screen/nightvisionicon
- var/obj/screen/action_intent
- var/obj/screen/zone_select
- var/obj/screen/move_intent
- var/obj/screen/module_store_icon
- var/obj/screen/combo/combo_display
+ var/atom/movable/screen/blobpwrdisplay
+ var/atom/movable/screen/blobhealthdisplay
+ var/atom/movable/screen/vampire_blood_display
+ var/atom/movable/screen/alien_plasma_display
+ var/atom/movable/screen/nightvisionicon
+ var/atom/movable/screen/action_intent
+ var/atom/movable/screen/zone_select
+ var/atom/movable/screen/move_intent
+ var/atom/movable/screen/module_store_icon
+ var/atom/movable/screen/combo/combo_display
var/list/static_inventory = list() //the screen objects which are static
var/list/toggleable_inventory = list() //the screen objects which can be hidden
var/list/hotkeybuttons = list() //the buttons that can be used via hotkeys
var/list/infodisplay = list() //the screen objects that display mob info (health, alien plasma, etc...)
- var/list/inv_slots[SLOT_HUD_AMOUNT] // /obj/screen/inventory objects, ordered by their slot ID.
+ var/list/inv_slots[SLOT_HUD_AMOUNT] // /atom/movable/screen/inventory objects, ordered by their slot ID.
- var/obj/screen/movable/action_button/hide_toggle/hide_actions_toggle
+ var/atom/movable/screen/movable/action_button/hide_toggle/hide_actions_toggle
var/action_buttons_hidden = FALSE
- var/list/obj/screen/plane_master/plane_masters = list() // see "appearance_flags" in the ref, assoc list of "[plane]" = object
+ var/list/atom/movable/screen/plane_master/plane_masters = list() // see "appearance_flags" in the ref, assoc list of "[plane]" = object
///Assoc list of controller groups, associated with key string group name with value of the plane master controller ref
var/list/atom/movable/plane_master_controller/plane_master_controllers = list()
///UI for screentips that appear when you mouse over things
- var/obj/screen/screentip/screentip_text
+ var/atom/movable/screen/screentip/screentip_text
/mob/proc/create_mob_hud()
if(client && !hud_used)
@@ -53,8 +53,8 @@
hide_actions_toggle = new
hide_actions_toggle.InitialiseIcon(mymob)
- for(var/mytype in subtypesof(/obj/screen/plane_master))
- var/obj/screen/plane_master/instance = new mytype()
+ for(var/mytype in subtypesof(/atom/movable/screen/plane_master))
+ var/atom/movable/screen/plane_master/instance = new mytype()
plane_masters["[instance.plane]"] = instance
instance.backdrop(mymob)
@@ -181,7 +181,7 @@
/datum/hud/proc/plane_masters_update()
// Plane masters are always shown to OUR mob, never to observers
for(var/thing in plane_masters)
- var/obj/screen/plane_master/PM = plane_masters[thing]
+ var/atom/movable/screen/plane_master/PM = plane_masters[thing]
PM.backdrop(mymob)
mymob.client.screen += PM
diff --git a/code/_onclick/hud/human_hud.dm b/code/_onclick/hud/human_hud.dm
index 1db2fe7cd1c..67c9e2e6621 100644
--- a/code/_onclick/hud/human_hud.dm
+++ b/code/_onclick/hud/human_hud.dm
@@ -1,11 +1,11 @@
-/obj/screen/human
+/atom/movable/screen/human
icon = 'icons/mob/screen_midnight.dmi'
-/obj/screen/human/toggle
+/atom/movable/screen/human/toggle
name = "toggle"
icon_state = "toggle"
-/obj/screen/human/toggle/Click()
+/atom/movable/screen/human/toggle/Click()
if(usr.hud_used.inventory_shown)
usr.hud_used.inventory_shown = FALSE
usr.client.screen -= usr.hud_used.toggleable_inventory
@@ -15,28 +15,28 @@
usr.hud_used.hidden_inventory_update()
-/obj/screen/human/equip
+/atom/movable/screen/human/equip
name = "equip"
icon_state = "act_equip"
-/obj/screen/human/equip/Click()
+/atom/movable/screen/human/equip/Click()
if(ismecha(usr.loc)) // stops inventory actions in a mech
return 1
var/mob/living/carbon/human/H = usr
H.quick_equip()
-/obj/screen/ling
+/atom/movable/screen/ling
invisibility = INVISIBILITY_ABSTRACT
-/obj/screen/ling/sting
+/atom/movable/screen/ling/sting
name = "current sting"
screen_loc = ui_lingstingdisplay
-/obj/screen/ling/sting/Click()
+/atom/movable/screen/ling/sting/Click()
var/datum/antagonist/changeling/cling = usr.mind.has_antag_datum(/datum/antagonist/changeling)
cling?.chosen_sting?.unset_sting()
-/obj/screen/ling/chems
+/atom/movable/screen/ling/chems
name = "chemical storage"
icon_state = "power_display"
screen_loc = ui_lingchemdisplay
@@ -58,32 +58,32 @@
/datum/hud/human/New(mob/living/carbon/human/owner, ui_style = 'icons/mob/screen_white.dmi', ui_color = "#ffffff", ui_alpha = 255)
..()
- owner.overlay_fullscreen("see_through_darkness", /obj/screen/fullscreen/see_through_darkness)
+ owner.overlay_fullscreen("see_through_darkness", /atom/movable/screen/fullscreen/see_through_darkness)
- var/obj/screen/using
- var/obj/screen/inventory/inv_box
+ var/atom/movable/screen/using
+ var/atom/movable/screen/inventory/inv_box
hud_alpha = ui_alpha
- using = new /obj/screen/craft
+ using = new /atom/movable/screen/craft
using.icon = ui_style
using.color = ui_color
using.alpha = ui_alpha
static_inventory += using
- using = new /obj/screen/language_menu
+ using = new /atom/movable/screen/language_menu
using.icon = ui_style
using.color = ui_color
using.alpha = ui_alpha
static_inventory += using
- using = new /obj/screen/act_intent()
+ using = new /atom/movable/screen/act_intent()
using.icon_state = mymob.a_intent
using.alpha = ui_alpha
static_inventory += using
action_intent = using
- using = new /obj/screen/mov_intent()
+ using = new /atom/movable/screen/mov_intent()
using.icon = ui_style
using.icon_state = (mymob.m_intent == MOVE_INTENT_RUN ? "running" : "walking")
using.screen_loc = ui_movi
@@ -92,14 +92,14 @@
static_inventory += using
move_intent = using
- using = new /obj/screen/drop()
+ using = new /atom/movable/screen/drop()
using.icon = ui_style
using.screen_loc = ui_drop_throw
using.color = ui_color
using.alpha = ui_alpha
static_inventory += using
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "i_clothing"
inv_box.icon = ui_style
inv_box.slot_id = SLOT_HUD_JUMPSUIT
@@ -109,7 +109,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "o_clothing"
inv_box.icon = ui_style
inv_box.slot_id = SLOT_HUD_OUTER_SUIT
@@ -119,7 +119,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory/hand()
+ inv_box = new /atom/movable/screen/inventory/hand()
inv_box.name = "r_hand"
inv_box.icon = ui_style
inv_box.icon_state = "hand_r"
@@ -129,7 +129,7 @@
inv_box.slot_id = SLOT_HUD_RIGHT_HAND
static_inventory += inv_box
- inv_box = new /obj/screen/inventory/hand()
+ inv_box = new /atom/movable/screen/inventory/hand()
inv_box.name = "l_hand"
inv_box.icon = ui_style
inv_box.icon_state = "hand_l"
@@ -139,7 +139,7 @@
inv_box.slot_id = SLOT_HUD_LEFT_HAND
static_inventory += inv_box
- using = new /obj/screen/swap_hand()
+ using = new /atom/movable/screen/swap_hand()
using.name = "hand"
using.icon = ui_style
using.icon_state = "swap_1"
@@ -148,7 +148,7 @@
using.alpha = ui_alpha
static_inventory += using
- using = new /obj/screen/swap_hand()
+ using = new /atom/movable/screen/swap_hand()
using.name = "hand"
using.icon = ui_style
using.icon_state = "swap_2"
@@ -157,7 +157,7 @@
using.alpha = ui_alpha
static_inventory += using
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "id"
inv_box.icon = ui_style
inv_box.icon_state = "id"
@@ -167,7 +167,7 @@
inv_box.alpha = ui_alpha
static_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "pda"
inv_box.icon = ui_style
inv_box.icon_state = "pda"
@@ -177,7 +177,7 @@
inv_box.alpha = ui_alpha
static_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "mask"
inv_box.icon = ui_style
inv_box.icon_state = "mask"
@@ -187,7 +187,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "back"
inv_box.icon = ui_style
inv_box.icon_state = "back"
@@ -197,7 +197,7 @@
inv_box.alpha = ui_alpha
static_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "storage1"
inv_box.icon = ui_style
inv_box.icon_state = "pocket"
@@ -207,7 +207,7 @@
inv_box.alpha = ui_alpha
static_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "storage2"
inv_box.icon = ui_style
inv_box.icon_state = "pocket"
@@ -217,7 +217,7 @@
inv_box.alpha = ui_alpha
static_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "suit storage"
inv_box.icon = ui_style
inv_box.icon_state = "suit_storage"
@@ -227,28 +227,28 @@
inv_box.slot_id = SLOT_HUD_SUIT_STORE
static_inventory += inv_box
- using = new /obj/screen/resist()
+ using = new /atom/movable/screen/resist()
using.icon = ui_style
using.color = ui_color
using.alpha = ui_alpha
using.screen_loc = ui_pull_resist
hotkeybuttons += using
- using = new /obj/screen/human/toggle()
+ using = new /atom/movable/screen/human/toggle()
using.icon = ui_style
using.color = ui_color
using.alpha = ui_alpha
using.screen_loc = ui_inventory
static_inventory += using
- using = new /obj/screen/human/equip()
+ using = new /atom/movable/screen/human/equip()
using.icon = ui_style
using.color = ui_color
using.alpha = ui_alpha
using.screen_loc = ui_equip
static_inventory += using
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "gloves"
inv_box.icon = ui_style
inv_box.icon_state = "gloves"
@@ -258,7 +258,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "eyes"
inv_box.icon = ui_style
inv_box.icon_state = "glasses"
@@ -268,7 +268,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "l_ear"
inv_box.icon = ui_style
inv_box.icon_state = "ears"
@@ -278,7 +278,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "r_ear"
inv_box.icon = ui_style
inv_box.icon_state = "ears"
@@ -288,7 +288,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "head"
inv_box.icon = ui_style
inv_box.icon_state = "head"
@@ -298,7 +298,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "shoes"
inv_box.icon = ui_style
inv_box.icon_state = "shoes"
@@ -308,7 +308,7 @@
inv_box.alpha = ui_alpha
toggleable_inventory += inv_box
- inv_box = new /obj/screen/inventory()
+ inv_box = new /atom/movable/screen/inventory()
inv_box.name = "belt"
inv_box.icon = ui_style
inv_box.icon_state = "belt"
@@ -318,33 +318,33 @@
inv_box.alpha = ui_alpha
static_inventory += inv_box
- mymob.throw_icon = new /obj/screen/throw_catch()
+ mymob.throw_icon = new /atom/movable/screen/throw_catch()
mymob.throw_icon.icon = ui_style
mymob.throw_icon.screen_loc = ui_drop_throw
mymob.throw_icon.color = ui_color
mymob.throw_icon.alpha = ui_alpha
hotkeybuttons += mymob.throw_icon
- mymob.healths = new /obj/screen/healths()
+ mymob.healths = new /atom/movable/screen/healths()
infodisplay += mymob.healths
mymob.healthdoll = new()
infodisplay += mymob.healthdoll
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = ui_style
mymob.pullin.hud = src
mymob.pullin.update_icon(UPDATE_ICON_STATE)
mymob.pullin.screen_loc = ui_pull_resist
static_inventory += mymob.pullin
- lingchemdisplay = new /obj/screen/ling/chems()
+ lingchemdisplay = new /atom/movable/screen/ling/chems()
infodisplay += lingchemdisplay
- lingstingdisplay = new /obj/screen/ling/sting()
+ lingstingdisplay = new /atom/movable/screen/ling/sting()
infodisplay += lingstingdisplay
- zone_select = new /obj/screen/zone_sel()
+ zone_select = new /atom/movable/screen/zone_sel()
zone_select.color = ui_color
zone_select.icon = ui_style
zone_select.alpha = ui_alpha
@@ -357,7 +357,7 @@
combo_display = new()
infodisplay += combo_display
- for(var/obj/screen/inventory/inv in (static_inventory + toggleable_inventory))
+ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory))
if(inv.slot_id)
inv.hud = src
inv_slots[inv.slot_id] = inv
@@ -372,13 +372,13 @@
if(!istype(H) || !H.dna.species)
return
var/datum/species/S = H.dna.species
- for(var/obj/screen/inventory/inv in (static_inventory + toggleable_inventory))
+ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory))
if(inv.slot_id)
if(inv.slot_id in S.no_equip)
inv.alpha = hud_alpha / 2
else
inv.alpha = hud_alpha
- for(var/obj/screen/craft/crafting in static_inventory)
+ for(var/atom/movable/screen/craft/crafting in static_inventory)
if(!S.can_craft)
crafting.invisibility = INVISIBILITY_ABSTRACT
H.handcrafting?.close(H)
diff --git a/code/_onclick/hud/map_popups.dm b/code/_onclick/hud/map_popups.dm
index dc9e255cba9..fc12fae313e 100644
--- a/code/_onclick/hud/map_popups.dm
+++ b/code/_onclick/hud/map_popups.dm
@@ -3,30 +3,15 @@
* Assoc list with all the active maps - when a screen obj is added to
* a map, it's put in here as well.
*
- * Format: list( = list(/obj/screen))
+ * Format: list( = list(/atom/movable/screen))
*/
var/list/screen_maps = list()
-/obj/screen
- /**
- * Map name assigned to this object.
- * Automatically set by /client/proc/add_obj_to_map.
- */
- var/assigned_map
- /**
- * Mark this object as garbage-collectible after you clean the map
- * it was registered on.
- *
- * This could probably be changed to be a proc, for conditional removal.
- * But for now, this works.
- */
- var/del_on_map_removal = TRUE
-
/**
* A screen object, which acts as a container for turfs and other things
* you want to show on the map, which you usually attach to "vis_contents".
*/
-/obj/screen/map_view
+/atom/movable/screen/map_view
// Map view has to be on the lowest plane to enable proper lighting
layer = GAME_PLANE
plane = GAME_PLANE
@@ -36,7 +21,7 @@
* It is also implicitly used to allocate a rectangle on the map, which will
* be used for auto-scaling the map.
*/
-/obj/screen/background
+/atom/movable/screen/background
name = "background"
icon = 'icons/mob/map_backgrounds.dmi'
icon_state = "clear"
@@ -49,7 +34,7 @@
*
* If applicable, "assigned_map" has to be assigned before this proc call.
*/
-/obj/screen/proc/set_position(x, y, px = 0, py = 0)
+/atom/movable/screen/proc/set_position(x, y, px = 0, py = 0)
if(assigned_map)
screen_loc = "[assigned_map]:[x]:[px],[y]:[py]"
else
@@ -60,7 +45,7 @@
*
* If applicable, "assigned_map" has to be assigned before this proc call.
*/
-/obj/screen/proc/fill_rect(x1, y1, x2, y2)
+/atom/movable/screen/proc/fill_rect(x1, y1, x2, y2)
if(assigned_map)
screen_loc = "[assigned_map]:[x1],[y1] to [x2],[y2]"
else
@@ -70,7 +55,7 @@
* Registers screen obj with the client, which makes it visible on the
* assigned map, and becomes a part of the assigned map's lifecycle.
*/
-/client/proc/register_map_obj(obj/screen/screen_obj)
+/client/proc/register_map_obj(atom/movable/screen/screen_obj)
if(!screen_obj.assigned_map)
CRASH("Can't register [screen_obj] without 'assigned_map' property.")
if(!screen_maps[screen_obj.assigned_map])
@@ -92,7 +77,7 @@
/client/proc/clear_map(map_name)
if(!map_name || !(map_name in screen_maps))
return FALSE
- for(var/obj/screen/screen_obj in screen_maps[map_name])
+ for(var/atom/movable/screen/screen_obj in screen_maps[map_name])
screen_maps[map_name] -= screen_obj
if(screen_obj.del_on_map_removal)
qdel(screen_obj)
@@ -146,7 +131,7 @@
var/y_value = world.icon_size * tilesize * height
var/map_name = create_popup(popup_name, x_value, y_value)
- var/obj/screen/background/background = new
+ var/atom/movable/screen/background/background = new
background.assigned_map = map_name
background.fill_rect(1, 1, width, height)
if(bg_icon)
diff --git a/code/_onclick/hud/movable_screen_objects.dm b/code/_onclick/hud/movable_screen_objects.dm
index 366931cea33..f43effee417 100644
--- a/code/_onclick/hud/movable_screen_objects.dm
+++ b/code/_onclick/hud/movable_screen_objects.dm
@@ -8,7 +8,7 @@
//Movable Screen Object
//Not tied to the grid, places it's center where the cursor is
-/obj/screen/movable
+/atom/movable/screen/movable
var/snap2grid = FALSE
var/moved = FALSE
var/locked = TRUE
@@ -18,10 +18,10 @@
//Snap Screen Object
//Tied to the grid, snaps to the nearest turf
-/obj/screen/movable/snap
+/atom/movable/screen/movable/snap
snap2grid = TRUE
-/obj/screen/movable/MouseDrop(over_object, src_location, over_location, src_control, over_control, params)
+/atom/movable/screen/movable/MouseDrop(over_object, src_location, over_location, src_control, over_control, params)
if(locked) //no! I am locked! begone!
return
@@ -55,7 +55,7 @@
set category = "Debug"
set name = "Spawn Movable UI Object"
- var/obj/screen/movable/M = new()
+ var/atom/movable/screen/movable/M = new()
M.name = "Movable UI Object"
M.icon_state = "block"
M.maptext = "Movable"
@@ -73,7 +73,7 @@
set category = "Debug"
set name = "Spawn Snap UI Object"
- var/obj/screen/movable/snap/S = new()
+ var/atom/movable/screen/movable/snap/S = new()
S.name = "Snap UI Object"
S.icon_state = "block"
S.maptext = "Snap"
diff --git a/code/_onclick/hud/other_mobs_hud.dm b/code/_onclick/hud/other_mobs_hud.dm
index 0472a34dbef..8e87c837df2 100644
--- a/code/_onclick/hud/other_mobs_hud.dm
+++ b/code/_onclick/hud/other_mobs_hud.dm
@@ -4,11 +4,11 @@
/datum/hud/simple_animal/New(mob/user)
..()
- mymob.healths = new /obj/screen/healths()
+ mymob.healths = new /atom/movable/screen/healths()
infodisplay += mymob.healths
- var/obj/screen/using
- using = new /obj/screen/act_intent/simple_animal()
+ var/atom/movable/screen/using
+ using = new /atom/movable/screen/act_intent/simple_animal()
using.icon_state = mymob.a_intent
static_inventory += using
action_intent = using
@@ -21,10 +21,10 @@
/datum/hud/corgi/New(mob/user)
..()
- mymob.healths = new /obj/screen/healths/corgi()
+ mymob.healths = new /atom/movable/screen/healths/corgi()
infodisplay += mymob.healths
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = 'icons/mob/screen_corgi.dmi'
mymob.pullin.hud = src
mymob.pullin.update_icon(UPDATE_ICON_STATE)
diff --git a/code/_onclick/hud/parallax.dm b/code/_onclick/hud/parallax.dm
index 75b34cfa1d3..572538a1ab3 100644
--- a/code/_onclick/hud/parallax.dm
+++ b/code/_onclick/hud/parallax.dm
@@ -1,7 +1,7 @@
/client
var/list/parallax_layers
var/list/parallax_layers_cached
- var/static/list/parallax_static_layers_tail = newlist(/obj/screen/parallax_pmaster, /obj/screen/parallax_space_whitifier)
+ var/static/list/parallax_static_layers_tail = newlist(/atom/movable/screen/parallax_pmaster, /atom/movable/screen/parallax_space_whitifier)
var/atom/movable/movingmob
var/turf/previous_turf
var/dont_animate_parallax //world.time of when we can state animate()ing parallax again
@@ -16,7 +16,7 @@
if(!apply_parallax_pref())
return
// this is needed so it blends properly with the space plane and blackness plane.
- var/obj/screen/plane_master/space/S = plane_masters["[PLANE_SPACE]"]
+ var/atom/movable/screen/plane_master/space/S = plane_masters["[PLANE_SPACE]"]
if(C.prefs.toggles2 & PREFTOGGLE_2_PARALLAX_IN_DARKNESS)
S.color = rgb(0, 0, 0, 0)
else
@@ -27,16 +27,16 @@
S.appearance_flags |= NO_CLIENT_COLOR
if(!length(C.parallax_layers_cached))
C.parallax_layers_cached = list()
- C.parallax_layers_cached += new /obj/screen/parallax_layer/layer_1(null, C.view)
- C.parallax_layers_cached += new /obj/screen/parallax_layer/layer_2(null, C.view)
- C.parallax_layers_cached += new /obj/screen/parallax_layer/planet(null, C.view)
+ C.parallax_layers_cached += new /atom/movable/screen/parallax_layer/layer_1(null, C.view)
+ C.parallax_layers_cached += new /atom/movable/screen/parallax_layer/layer_2(null, C.view)
+ C.parallax_layers_cached += new /atom/movable/screen/parallax_layer/planet(null, C.view)
if(SSparallax.random_layer)
C.parallax_layers_cached += new SSparallax.random_layer
- C.parallax_layers_cached += new /obj/screen/parallax_layer/layer_3(null, C.view)
+ C.parallax_layers_cached += new /atom/movable/screen/parallax_layer/layer_3(null, C.view)
C.parallax_layers = C.parallax_layers_cached.Copy()
- var/obj/screen/plane_master/parallax/parallax_plane_master = plane_masters["[PLANE_SPACE_PARALLAX]"]
+ var/atom/movable/screen/plane_master/parallax/parallax_plane_master = plane_masters["[PLANE_SPACE_PARALLAX]"]
if(C.prefs.toggles2 & PREFTOGGLE_2_PARALLAX_IN_DARKNESS)
parallax_plane_master.blend_mode = BLEND_ADD
else
@@ -51,7 +51,7 @@
var/client/C = mymob.client
C.screen -= (C.parallax_layers_cached + C.parallax_static_layers_tail)
C.parallax_layers = null
- var/obj/screen/plane_master/space/S = plane_masters["[PLANE_SPACE]"]
+ var/atom/movable/screen/plane_master/space/S = plane_masters["[PLANE_SPACE]"]
S.color = null
S.appearance_flags &= ~NO_CLIENT_COLOR
@@ -101,7 +101,7 @@
if(!new_parallax_movedir)
var/animate_time = 0
for(var/thing in C.parallax_layers)
- var/obj/screen/parallax_layer/L = thing
+ var/atom/movable/screen/parallax_layer/L = thing
L.icon_state = initial(L.icon_state)
L.update_o(C.view)
var/T = PARALLAX_LOOP_TIME / L.speed
@@ -123,7 +123,7 @@
var/shortesttimer
for(var/thing in C.parallax_layers)
- var/obj/screen/parallax_layer/L = thing
+ var/atom/movable/screen/parallax_layer/L = thing
var/T = PARALLAX_LOOP_TIME / L.speed
if(isnull(shortesttimer))
@@ -148,7 +148,7 @@
/datum/hud/proc/update_parallax_motionblur(client/C, animatedir, new_parallax_movedir, matrix/newtransform)
C.parallax_animate_timer = FALSE
for(var/thing in C.parallax_layers)
- var/obj/screen/parallax_layer/L = thing
+ var/atom/movable/screen/parallax_layer/L = thing
if(!new_parallax_movedir)
animate(L)
continue
@@ -206,7 +206,7 @@
C.last_parallax_shift = world.time
for(var/thing in C.parallax_layers)
- var/obj/screen/parallax_layer/L = thing
+ var/atom/movable/screen/parallax_layer/L = thing
L.update_status(mymob)
if(L.view_sized != C.view)
L.update_o(C.view)
@@ -236,7 +236,7 @@
if(M && M.client && M.hud_used && length(M.client.parallax_layers))
M.hud_used.update_parallax()
-/obj/screen/parallax_layer
+/atom/movable/screen/parallax_layer
icon = 'icons/effects/parallax.dmi'
var/speed = 1
var/offset_x = 0
@@ -249,13 +249,13 @@
mouse_opacity = 0
-/obj/screen/parallax_layer/New(view)
+/atom/movable/screen/parallax_layer/New(view)
..()
if(!view)
view = world.view
update_o(view)
-/obj/screen/parallax_layer/proc/update_o(view)
+/atom/movable/screen/parallax_layer/proc/update_o(view)
if(!view)
view = world.view
@@ -278,70 +278,70 @@
// Cache this
view_sized = view
-/obj/screen/parallax_layer/proc/update_status(mob/M)
+/atom/movable/screen/parallax_layer/proc/update_status(mob/M)
return
-/obj/screen/parallax_layer/layer_1
+/atom/movable/screen/parallax_layer/layer_1
icon_state = "layer1"
speed = 0.6
layer = 1
-/obj/screen/parallax_layer/layer_2
+/atom/movable/screen/parallax_layer/layer_2
icon_state = "layer2"
speed = 1
layer = 2
-/obj/screen/parallax_layer/layer_3
+/atom/movable/screen/parallax_layer/layer_3
icon_state = "layer3"
speed = 1.4
layer = 3
-/obj/screen/parallax_layer/random
+/atom/movable/screen/parallax_layer/random
blend_mode = BLEND_OVERLAY
speed = 3
layer = 3
-/obj/screen/parallax_layer/random/space_gas
+/atom/movable/screen/parallax_layer/random/space_gas
icon_state = "space_gas"
-/obj/screen/parallax_layer/random/space_gas/New(view)
+/atom/movable/screen/parallax_layer/random/space_gas/New(view)
..()
add_atom_colour(SSparallax.random_parallax_color, ADMIN_COLOUR_PRIORITY)
-/obj/screen/parallax_layer/random/asteroids
+/atom/movable/screen/parallax_layer/random/asteroids
icon_state = "asteroids"
layer = 4
-/obj/screen/parallax_layer/planet
+/atom/movable/screen/parallax_layer/planet
icon_state = "planet_lava"
blend_mode = BLEND_OVERLAY
absolute = TRUE //Status of seperation
speed = 3
layer = 30
-/obj/screen/parallax_layer/planet/Initialize(mapload)
+/atom/movable/screen/parallax_layer/planet/Initialize(mapload)
. = ..()
if(SSmapping.lavaland_theme?.planet_icon_state)
icon_state = SSmapping.lavaland_theme.planet_icon_state
-/obj/screen/parallax_layer/planet/update_status(mob/M)
+/atom/movable/screen/parallax_layer/planet/update_status(mob/M)
var/turf/T = get_turf(M)
if(is_station_level(T.z))
invisibility = 0
else
invisibility = INVISIBILITY_ABSTRACT
-/obj/screen/parallax_layer/planet/update_o()
+/atom/movable/screen/parallax_layer/planet/update_o()
return //Shit wont move
-/obj/screen/parallax_pmaster
+/atom/movable/screen/parallax_pmaster
appearance_flags = PLANE_MASTER
plane = PLANE_SPACE_PARALLAX
blend_mode = BLEND_MULTIPLY
mouse_opacity = FALSE
screen_loc = "CENTER-7,CENTER-7"
-/obj/screen/parallax_space_whitifier
+/atom/movable/screen/parallax_space_whitifier
appearance_flags = PLANE_MASTER
plane = PLANE_SPACE
color = list(
diff --git a/code/_onclick/hud/picture_in_picture.dm b/code/_onclick/hud/picture_in_picture.dm
index eda0cc5640d..aae4ce37001 100644
--- a/code/_onclick/hud/picture_in_picture.dm
+++ b/code/_onclick/hud/picture_in_picture.dm
@@ -1,4 +1,4 @@
-/obj/screen/movable/pic_in_pic
+/atom/movable/screen/movable/pic_in_pic
name = "Picture-in-picture"
screen_loc = "CENTER"
plane = FLOOR_PLANE
@@ -7,18 +7,18 @@
var/height = 0
var/list/shown_to = list()
var/list/viewing_turfs = list()
- var/obj/screen/component_button/button_x
- var/obj/screen/component_button/button_expand
- var/obj/screen/component_button/button_shrink
+ var/atom/movable/screen/component_button/button_x
+ var/atom/movable/screen/component_button/button_expand
+ var/atom/movable/screen/component_button/button_shrink
var/mutable_appearance/standard_background
var/const/max_dimensions = 10
-/obj/screen/movable/pic_in_pic/Initialize()
+/atom/movable/screen/movable/pic_in_pic/Initialize()
. = ..()
make_backgrounds()
-/obj/screen/movable/pic_in_pic/Destroy()
+/atom/movable/screen/movable/pic_in_pic/Destroy()
for(var/C in shown_to)
unshow_to(C)
QDEL_NULL(button_x)
@@ -26,7 +26,7 @@
QDEL_NULL(button_expand)
return ..()
-/obj/screen/movable/pic_in_pic/component_click(obj/screen/component_button/component, params)
+/atom/movable/screen/movable/pic_in_pic/component_click(atom/movable/screen/component_button/component, params)
if(component == button_x)
qdel(src)
else if(component == button_expand)
@@ -34,13 +34,13 @@
else if(component == button_shrink)
set_view_size(width-1, height-1)
-/obj/screen/movable/pic_in_pic/proc/make_backgrounds()
+/atom/movable/screen/movable/pic_in_pic/proc/make_backgrounds()
standard_background = new /mutable_appearance()
standard_background.icon = 'icons/misc/pic_in_pic.dmi'
standard_background.icon_state = "background"
standard_background.layer = SPACE_LAYER
-/obj/screen/movable/pic_in_pic/proc/add_buttons()
+/atom/movable/screen/movable/pic_in_pic/proc/add_buttons()
var/static/mutable_appearance/move_tab
if(!move_tab)
move_tab = new /mutable_appearance()
@@ -55,7 +55,7 @@
overlays += move_tab
if(!button_x)
- button_x = new /obj/screen/component_button(null, src)
+ button_x = new /atom/movable/screen/component_button(null, src)
var/mutable_appearance/MA = new /mutable_appearance()
MA.name = "close"
MA.icon = 'icons/misc/pic_in_pic.dmi'
@@ -68,7 +68,7 @@
vis_contents += button_x
if(!button_expand)
- button_expand = new /obj/screen/component_button(null, src)
+ button_expand = new /atom/movable/screen/component_button(null, src)
var/mutable_appearance/MA = new /mutable_appearance()
MA.name = "expand"
MA.icon = 'icons/misc/pic_in_pic.dmi'
@@ -81,7 +81,7 @@
vis_contents += button_expand
if(!button_shrink)
- button_shrink = new /obj/screen/component_button(null, src)
+ button_shrink = new /atom/movable/screen/component_button(null, src)
var/mutable_appearance/MA = new /mutable_appearance()
MA.name = "shrink"
MA.icon = 'icons/misc/pic_in_pic.dmi'
@@ -93,7 +93,7 @@
button_shrink.transform = M
vis_contents += button_shrink
-/obj/screen/movable/pic_in_pic/proc/add_background()
+/atom/movable/screen/movable/pic_in_pic/proc/add_background()
if((width > 0) && (height > 0))
var/matrix/M = matrix()
M.Scale(width + 0.5, height + 0.5)
@@ -101,7 +101,7 @@
standard_background.transform = M
overlays += standard_background
-/obj/screen/movable/pic_in_pic/proc/set_view_size(width, height, do_refresh = TRUE)
+/atom/movable/screen/movable/pic_in_pic/proc/set_view_size(width, height, do_refresh = TRUE)
width = clamp(width, 0, max_dimensions)
height = clamp(height, 0, max_dimensions)
src.width = width
@@ -115,12 +115,12 @@
if(do_refresh)
refresh_view()
-/obj/screen/movable/pic_in_pic/proc/set_view_center(atom/target, do_refresh = TRUE)
+/atom/movable/screen/movable/pic_in_pic/proc/set_view_center(atom/target, do_refresh = TRUE)
center = target
if(do_refresh)
refresh_view()
-/obj/screen/movable/pic_in_pic/proc/refresh_view()
+/atom/movable/screen/movable/pic_in_pic/proc/refresh_view()
vis_contents -= viewing_turfs
if(!width || !height)
return
@@ -133,12 +133,12 @@
vis_contents += viewing_turfs
-/obj/screen/movable/pic_in_pic/proc/show_to(client/C)
+/atom/movable/screen/movable/pic_in_pic/proc/show_to(client/C)
if(C)
shown_to[C] = 1
C.screen += src
-/obj/screen/movable/pic_in_pic/proc/unshow_to(client/C)
+/atom/movable/screen/movable/pic_in_pic/proc/unshow_to(client/C)
if(C)
shown_to -= C
C.screen -= src
diff --git a/code/_onclick/hud/plane_master.dm b/code/_onclick/hud/plane_master.dm
index 8a59bb69275..d9da09946af 100644
--- a/code/_onclick/hud/plane_master.dm
+++ b/code/_onclick/hud/plane_master.dm
@@ -1,4 +1,4 @@
-/obj/screen/plane_master
+/atom/movable/screen/plane_master
screen_loc = "CENTER"
icon_state = "blank"
appearance_flags = PLANE_MASTER|NO_CLIENT_COLOR
@@ -6,58 +6,58 @@
var/show_alpha = 255
var/hide_alpha = 0
-/obj/screen/plane_master/proc/Show(override)
+/atom/movable/screen/plane_master/proc/Show(override)
alpha = override || show_alpha
-/obj/screen/plane_master/proc/Hide(override)
+/atom/movable/screen/plane_master/proc/Hide(override)
alpha = override || hide_alpha
//Why do plane masters need a backdrop sometimes? Read http://www.byond.com/forum/?post=2141928
//Trust me, you need one. Period. If you don't think you do, you're doing something extremely wrong.
-/obj/screen/plane_master/proc/backdrop(mob/mymob)
+/atom/movable/screen/plane_master/proc/backdrop(mob/mymob)
addtimer(CALLBACK(src, TYPE_PROC_REF(/atom, add_filter), "displace", 1, displacement_map_filter(render_source = GRAVITY_PULSE_RENDER_TARGET, size = 10)), 2 SECONDS)//Why a timer vs just apply on initialize / async? I don't know. It just can't be, neither works correctly. Don't lower below 2 seconds unless you can see effects through walls with no issue.
-/obj/screen/plane_master/floor
+/atom/movable/screen/plane_master/floor
name = "floor plane master"
plane = FLOOR_PLANE
appearance_flags = PLANE_MASTER
blend_mode = BLEND_OVERLAY
-/obj/screen/plane_master/game_world
+/atom/movable/screen/plane_master/game_world
name = "game world plane master"
plane = GAME_PLANE
appearance_flags = PLANE_MASTER
blend_mode = BLEND_OVERLAY
-/obj/screen/plane_master/game_world/backdrop(mob/mymob)
+/atom/movable/screen/plane_master/game_world/backdrop(mob/mymob)
. = ..() //if you delete it so help me god
clear_filters()
if(istype(mymob) && mymob.client && mymob.client.prefs && (mymob.client.prefs.toggles & PREFTOGGLE_AMBIENT_OCCLUSION))
add_filter("AO", 1, drop_shadow_filter(x = 0, y = -2, size = 4, color = "#04080FAA"))
-/obj/screen/plane_master/lighting
+/atom/movable/screen/plane_master/lighting
name = "lighting plane master"
plane = LIGHTING_PLANE
appearance_flags = PLANE_MASTER
blend_mode = BLEND_MULTIPLY
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
-/obj/screen/plane_master/lighting/backdrop(mob/mymob)
+/atom/movable/screen/plane_master/lighting/backdrop(mob/mymob)
. = ..()
- mymob.overlay_fullscreen("lighting_backdrop_lit", /obj/screen/fullscreen/lighting_backdrop/lit)
- mymob.overlay_fullscreen("lighting_backdrop_unlit", /obj/screen/fullscreen/lighting_backdrop/unlit)
+ mymob.overlay_fullscreen("lighting_backdrop_lit", /atom/movable/screen/fullscreen/lighting_backdrop/lit)
+ mymob.overlay_fullscreen("lighting_backdrop_unlit", /atom/movable/screen/fullscreen/lighting_backdrop/unlit)
-/obj/screen/plane_master/lighting/Initialize()
+/atom/movable/screen/plane_master/lighting/Initialize()
. = ..()
add_filter("emissives", 1, alpha_mask_filter(render_source = EMISSIVE_RENDER_TARGET, flags = MASK_INVERSE))
-/obj/screen/plane_master/point
+/atom/movable/screen/plane_master/point
name = "point plane master"
plane = POINT_PLANE
appearance_flags = PLANE_MASTER //should use client color
blend_mode = BLEND_OVERLAY
-/obj/screen/plane_master/point/backdrop(mob/mymob)
+/atom/movable/screen/plane_master/point/backdrop(mob/mymob)
if(istype(mymob) && mymob.client && mymob.client.prefs)
alpha = (mymob.client.prefs.toggles2 & PREFTOGGLE_2_THOUGHT_BUBBLE) ? 255 : 0
@@ -67,29 +67,29 @@
* Gets masked by blocking plane. Use for things that you want blocked by
* mobs, items, etc.
*/
-/obj/screen/plane_master/emissive
+/atom/movable/screen/plane_master/emissive
name = "emissive plane master"
plane = EMISSIVE_PLANE
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
render_target = EMISSIVE_RENDER_TARGET
-/obj/screen/plane_master/emissive/Initialize()
+/atom/movable/screen/plane_master/emissive/Initialize()
. = ..()
add_filter("em_block_masking", 1, color_matrix_filter(GLOB.em_mask_matrix))
-/obj/screen/plane_master/space
+/atom/movable/screen/plane_master/space
name = "space plane master"
plane = PLANE_SPACE
appearance_flags = PLANE_MASTER
blend_mode = BLEND_OVERLAY
-/obj/screen/plane_master/parallax
+/atom/movable/screen/plane_master/parallax
name = "parallax plane master"
plane = PLANE_SPACE_PARALLAX
appearance_flags = PLANE_MASTER
blend_mode = BLEND_MULTIPLY
-/obj/screen/plane_master/blackness
+/atom/movable/screen/plane_master/blackness
name = "blackness plane master"
plane = BLACKNESS_PLANE
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
@@ -97,7 +97,7 @@
blend_mode = BLEND_ADD
appearance_flags = PLANE_MASTER | NO_CLIENT_COLOR | PIXEL_SCALE
-/obj/screen/plane_master/gravpulse
+/atom/movable/screen/plane_master/gravpulse
name = "gravpulse plane"
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
plane = GRAVITY_PULSE_PLANE
diff --git a/code/_onclick/hud/plane_master_controller.dm b/code/_onclick/hud/plane_master_controller.dm
index aa67ed35172..c5bbbb743d2 100644
--- a/code/_onclick/hud/plane_master_controller.dm
+++ b/code/_onclick/hud/plane_master_controller.dm
@@ -11,7 +11,7 @@
owner_hud = hud
var/assoc_controlled_planes = list()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/instance = owner_hud.plane_masters["[i]"]
+ var/atom/movable/screen/plane_master/instance = owner_hud.plane_masters["[i]"]
assoc_controlled_planes["[i]"] = instance
controlled_planes = assoc_controlled_planes
@@ -19,41 +19,41 @@
/atom/movable/plane_master_controller/add_filter(name, priority, list/params)
. = ..()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.add_filter(name, priority, params)
///Full override so we can just use filterrific
/atom/movable/plane_master_controller/remove_filter(name_or_names)
. = ..()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.remove_filter(name_or_names)
/atom/movable/plane_master_controller/update_filters()
. = ..()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.update_filters()
///Gets all filters for this controllers plane masters
/atom/movable/plane_master_controller/proc/get_filters(name)
. = list()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
. += pm_iterator.get_filter(name)
///Transitions all filters owned by this plane master controller
/atom/movable/plane_master_controller/transition_filter(name, time, list/new_params, easing, loop)
. = ..()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.transition_filter(name, time, new_params, easing, loop)
///Full override so we can just use filterrific
/atom/movable/plane_master_controller/add_atom_colour(coloration, colour_priority)
. = ..()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.add_atom_colour(coloration, colour_priority)
@@ -61,14 +61,14 @@
/atom/movable/plane_master_controller/remove_atom_colour(colour_priority, coloration)
. = ..()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.remove_atom_colour(colour_priority, coloration)
///Resets the atom's color to null, and then sets it to the highest priority colour available
/atom/movable/plane_master_controller/update_atom_colour()
for(var/i in controlled_planes)
- var/obj/screen/plane_master/pm_iterator = controlled_planes[i]
+ var/atom/movable/screen/plane_master/pm_iterator = controlled_planes[i]
pm_iterator.update_atom_colour()
diff --git a/code/_onclick/hud/radial.dm b/code/_onclick/hud/radial.dm
index 451e4270fe7..4ffc018f2fe 100644
--- a/code/_onclick/hud/radial.dm
+++ b/code/_onclick/hud/radial.dm
@@ -3,51 +3,51 @@
GLOBAL_LIST_EMPTY(radial_menus)
-/obj/screen/radial
+/atom/movable/screen/radial
icon = 'icons/mob/radial.dmi'
layer = ABOVE_HUD_LAYER
plane = ABOVE_HUD_PLANE
var/datum/radial_menu/parent
-/obj/screen/radial/Destroy()
+/atom/movable/screen/radial/Destroy()
parent = null
return ..()
-/obj/screen/radial/slice
+/atom/movable/screen/radial/slice
icon_state = "radial_slice"
var/choice
var/next_page = FALSE
-/obj/screen/radial/slice/MouseEntered(location, control, params)
+/atom/movable/screen/radial/slice/MouseEntered(location, control, params)
. = ..()
icon_state = "radial_slice_focus"
openToolTip(usr, src, params, title = name)
-/obj/screen/radial/slice/MouseExited(location, control, params)
+/atom/movable/screen/radial/slice/MouseExited(location, control, params)
. = ..()
icon_state = "radial_slice"
closeToolTip(usr)
-/obj/screen/radial/slice/Click(location, control, params)
+/atom/movable/screen/radial/slice/Click(location, control, params)
if(usr.client == parent.current_user)
if(next_page)
parent.next_page()
else
parent.element_chosen(choice,usr)
-/obj/screen/radial/center
+/atom/movable/screen/radial/center
name = "Close Menu"
icon_state = "radial_center"
-/obj/screen/radial/center/Click(location, control, params)
+/atom/movable/screen/radial/center/Click(location, control, params)
if(usr.client == parent.current_user)
parent.finished = TRUE
-/obj/screen/radial/center/MouseEntered(location, control, params)
+/atom/movable/screen/radial/center/MouseEntered(location, control, params)
. = ..()
openToolTip(usr, src, params, title = name)
-/obj/screen/radial/center/MouseExited(location, control, params)
+/atom/movable/screen/radial/center/MouseExited(location, control, params)
. = ..()
closeToolTip(usr)
@@ -59,8 +59,8 @@ GLOBAL_LIST_EMPTY(radial_menus)
var/selected_choice
- var/list/obj/screen/elements = list()
- var/obj/screen/radial/center/close_button
+ var/list/atom/movable/screen/elements = list()
+ var/atom/movable/screen/radial/center/close_button
var/client/current_user
var/atom/movable/anchor
var/pixel_x_difference
@@ -94,7 +94,7 @@ GLOBAL_LIST_EMPTY(radial_menus)
if(elements.len < max_elements)
var/elements_to_add = max_elements - elements.len
for(var/i in 1 to elements_to_add) //Create all elements
- var/obj/screen/radial/new_element = new /obj/screen/radial/slice
+ var/atom/movable/screen/radial/new_element = new /atom/movable/screen/radial/slice
new_element.parent = src
elements += new_element
@@ -128,14 +128,14 @@ GLOBAL_LIST_EMPTY(radial_menus)
pixel_x_difference = ((world.icon_size * anchor.x) + anchor.step_x + anchor.pixel_x) - ((world.icon_size * current_user.mob.x) + current_user.mob.step_x + current_user.mob.pixel_x)
pixel_y_difference = ((world.icon_size * anchor.y) + anchor.step_y + anchor.pixel_y) - ((world.icon_size * current_user.mob.y) + current_user.mob.step_y + current_user.mob.pixel_y)
for(var/i in 1 to elements.len)
- var/obj/screen/radial/E = elements[i]
+ var/atom/movable/screen/radial/E = elements[i]
var/angle = WRAP(starting_angle + (i - 1) * angle_per_element, 0, 360)
if(i > page_choices.len)
HideElement(E)
else
SetElement(E,page_choices[i], angle)
-/datum/radial_menu/proc/HideElement(obj/screen/radial/slice/E)
+/datum/radial_menu/proc/HideElement(atom/movable/screen/radial/slice/E)
E.cut_overlays()
E.alpha = 0
E.name = "None"
@@ -144,7 +144,7 @@ GLOBAL_LIST_EMPTY(radial_menus)
E.choice = null
E.next_page = FALSE
-/datum/radial_menu/proc/SetElement(obj/screen/radial/slice/E, choice_id, angle)
+/datum/radial_menu/proc/SetElement(atom/movable/screen/radial/slice/E, choice_id, angle)
//Position
E.pixel_y = round(cos(angle) * radius) + py_shift
E.pixel_x = round(sin(angle) * radius)
diff --git a/code/_onclick/hud/robot_hud.dm b/code/_onclick/hud/robot_hud.dm
index 1ec455d9274..c34807563c5 100644
--- a/code/_onclick/hud/robot_hud.dm
+++ b/code/_onclick/hud/robot_hud.dm
@@ -1,11 +1,11 @@
-/obj/screen/robot
+/atom/movable/screen/robot
icon = 'icons/mob/screen_robot.dmi'
-/obj/screen/robot/module
+/atom/movable/screen/robot/module
name = "cyborg module"
icon_state = "nomod"
-/obj/screen/robot/module/Click()
+/atom/movable/screen/robot/module/Click()
if(isrobot(usr))
var/mob/living/silicon/robot/R = usr
if(R.module)
@@ -13,76 +13,76 @@
return 1
R.pick_module()
-/obj/screen/robot/module1
+/atom/movable/screen/robot/module1
name = "module1"
icon_state = "inv1"
-/obj/screen/robot/module1/Click()
+/atom/movable/screen/robot/module1/Click()
if(isrobot(usr))
var/mob/living/silicon/robot/R = usr
R.toggle_module(1)
-/obj/screen/robot/module2
+/atom/movable/screen/robot/module2
name = "module2"
icon_state = "inv2"
-/obj/screen/robot/module2/Click()
+/atom/movable/screen/robot/module2/Click()
if(isrobot(usr))
var/mob/living/silicon/robot/R = usr
R.toggle_module(2)
-/obj/screen/robot/module3
+/atom/movable/screen/robot/module3
name = "module3"
icon_state = "inv3"
-/obj/screen/robot/module3/Click()
+/atom/movable/screen/robot/module3/Click()
if(isrobot(usr))
var/mob/living/silicon/robot/R = usr
R.toggle_module(3)
-/obj/screen/robot/radio
+/atom/movable/screen/robot/radio
name = "radio"
icon_state = "radio"
-/obj/screen/robot/radio/Click()
+/atom/movable/screen/robot/radio/Click()
if(issilicon(usr))
var/mob/living/silicon/robot/R = usr
R.radio_menu()
-/obj/screen/robot/store
+/atom/movable/screen/robot/store
name = "store"
icon_state = "store"
-/obj/screen/robot/store/Click()
+/atom/movable/screen/robot/store/Click()
if(isrobot(usr))
var/mob/living/silicon/robot/R = usr
R.uneq_active()
R.hud_used.update_robot_modules_display()
-/obj/screen/robot/lamp
+/atom/movable/screen/robot/lamp
name = "Toggle Headlamp"
icon_state = "lamp0"
screen_loc = ui_borg_lamp
-/obj/screen/robot/lamp/Click()
+/atom/movable/screen/robot/lamp/Click()
if(isrobot(usr))
var/mob/living/silicon/robot/R = usr
R.control_headlamp()
-/obj/screen/robot/thrusters
+/atom/movable/screen/robot/thrusters
name = "ion thrusters"
icon_state = "ionpulse0"
-/obj/screen/robot/thrusters/Click()
+/atom/movable/screen/robot/thrusters/Click()
var/mob/living/silicon/robot/R = usr
R.toggle_ionpulse()
-/obj/screen/robot/mov_intent
+/atom/movable/screen/robot/mov_intent
name = "fast/slow toggle"
icon_state = "running"
-/obj/screen/robot/mov_intent/Click()
+/atom/movable/screen/robot/mov_intent/Click()
usr.toggle_move_intent()
@@ -93,31 +93,31 @@
/datum/hud/robot/New(mob/user)
..()
- var/obj/screen/using
+ var/atom/movable/screen/using
var/mob/living/silicon/robot/mymobR = mymob
//Language menu
- using = new /obj/screen/language_menu
+ using = new /atom/movable/screen/language_menu
using.screen_loc = ui_borg_lanugage_menu
static_inventory += using
//Radio
- using = new /obj/screen/robot/radio()
+ using = new /atom/movable/screen/robot/radio()
using.screen_loc = ui_borg_radio
static_inventory += using
//Module select
- using = new /obj/screen/robot/module1()
+ using = new /atom/movable/screen/robot/module1()
using.screen_loc = ui_inv1
static_inventory += using
mymobR.inv1 = using
- using = new /obj/screen/robot/module2()
+ using = new /atom/movable/screen/robot/module2()
using.screen_loc = ui_inv2
static_inventory += using
mymobR.inv2 = using
- using = new /obj/screen/robot/module3()
+ using = new /atom/movable/screen/robot/module3()
using.screen_loc = ui_inv3
static_inventory += using
mymobR.inv3 = using
@@ -125,55 +125,55 @@
//End of module select
//Sec/Med HUDs
- using = new /obj/screen/ai/sensors()
+ using = new /atom/movable/screen/ai/sensors()
using.screen_loc = ui_borg_sensor
static_inventory += using
//Intent
// Attack intent
- using = new /obj/screen/act_intent/robot()
+ using = new /atom/movable/screen/act_intent/robot()
using.icon_state = mymob.a_intent
static_inventory += using
action_intent = using
// Movement intent
- using = new /obj/screen/robot/mov_intent()
+ using = new /atom/movable/screen/robot/mov_intent()
using.icon_state = (mymob.m_intent == MOVE_INTENT_RUN ? "running" : "walking")
static_inventory += using
using.screen_loc = ui_movi
move_intent = using
//Health
- mymob.healths = new /obj/screen/healths/robot()
+ mymob.healths = new /atom/movable/screen/healths/robot()
infodisplay += mymob.healths
//Installed Module
- mymobR.hands = new /obj/screen/robot/module()
+ mymobR.hands = new /atom/movable/screen/robot/module()
mymobR.hands.screen_loc = ui_borg_module
static_inventory += mymobR.hands
- module_store_icon = new /obj/screen/robot/store()
+ module_store_icon = new /atom/movable/screen/robot/store()
module_store_icon.screen_loc = ui_borg_store
- mymob.pullin = new /obj/screen/pull()
+ mymob.pullin = new /atom/movable/screen/pull()
mymob.pullin.icon = 'icons/mob/screen_robot.dmi'
mymob.pullin.hud = src
mymob.pullin.update_icon(UPDATE_ICON_STATE)
mymob.pullin.screen_loc = ui_borg_pull
hotkeybuttons += mymob.pullin
- zone_select = new /obj/screen/zone_sel/robot()
+ zone_select = new /atom/movable/screen/zone_sel/robot()
zone_select.hud = src
zone_select.update_icon(UPDATE_OVERLAYS)
static_inventory += zone_select
//Headlamp
- mymobR.lamp_button = new /obj/screen/robot/lamp()
+ mymobR.lamp_button = new /atom/movable/screen/robot/lamp()
mymobR.lamp_button.screen_loc = ui_borg_lamp
static_inventory += mymobR.lamp_button
//Thrusters
- using = new /obj/screen/robot/thrusters()
+ using = new /atom/movable/screen/robot/thrusters()
using.screen_loc = ui_borg_thrusters
static_inventory += using
mymobR.thruster_button = using
diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm
index 492e0e01cb5..c68d9c797cc 100644
--- a/code/_onclick/hud/screen_objects.dm
+++ b/code/_onclick/hud/screen_objects.dm
@@ -1,34 +1,44 @@
/*
- Screen objects
+ Screen "objects"
Todo: improve/re-implement
Screen objects are only used for the hud and should not appear anywhere "in-game".
+ They are not actually objects, which is counterintuitive to their name.
They are used with the client/screen list and the screen_loc var.
For more information, see the byond documentation on the screen_loc and screen vars.
*/
-/obj/screen
+/atom/movable/screen
name = ""
icon = 'icons/mob/screen_gen.dmi'
layer = HUD_LAYER
plane = HUD_PLANE
flags = NO_SCREENTIPS
- resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/obj/master = null //A reference to the object in the slot. Grabs or items, generally.
var/datum/hud/hud = null
appearance_flags = NO_CLIENT_COLOR
+ /**
+ * Map name assigned to this object.
+ * Automatically set by /client/proc/add_obj_to_map.
+ */
+ var/assigned_map
+ /**
+ * Mark this object as garbage-collectible after you clean the map
+ * it was registered on.
+ *
+ * This could probably be changed to be a proc, for conditional removal.
+ * But for now, this works.
+ */
+ var/del_on_map_removal = TRUE
-/obj/screen/take_damage()
- return
-
-/obj/screen/Destroy()
+/atom/movable/screen/Destroy()
master = null
hud = null
return ..()
-/obj/screen/proc/component_click(obj/screen/component_button/component, params)
+/atom/movable/screen/proc/component_click(atom/movable/screen/component_button/component, params)
return
-/obj/screen/text
+/atom/movable/screen/text
icon = null
icon_state = null
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
@@ -36,44 +46,44 @@
maptext_height = 480
maptext_width = 480
-/obj/screen/close
+/atom/movable/screen/close
name = "close"
layer = ABOVE_HUD_LAYER
plane = ABOVE_HUD_PLANE
-/obj/screen/close/Click()
+/atom/movable/screen/close/Click()
if(master)
if(isstorage(master))
var/obj/item/storage/S = master
S.close(usr)
return 1
-/obj/screen/drop
+/atom/movable/screen/drop
name = "drop"
icon_state = "act_drop"
-/obj/screen/drop/Click()
+/atom/movable/screen/drop/Click()
usr.drop_item_v()
-/obj/screen/grab
+/atom/movable/screen/grab
name = "grab"
-/obj/screen/grab/Click()
+/atom/movable/screen/grab/Click()
var/obj/item/grab/G = master
G.s_click(src)
return 1
-/obj/screen/grab/attack_hand()
+/atom/movable/screen/grab/attack_hand()
return
-/obj/screen/grab/attackby()
+/atom/movable/screen/grab/attackby()
return
-/obj/screen/act_intent
+/atom/movable/screen/act_intent
name = "intent"
icon_state = "help"
screen_loc = ui_acti
-/obj/screen/act_intent/Click(location, control, params)
+/atom/movable/screen/act_intent/Click(location, control, params)
if(ishuman(usr))
var/_x = text2num(params2list(params)["icon-x"])
var/_y = text2num(params2list(params)["icon-y"])
@@ -88,69 +98,69 @@
else
usr.a_intent_change("right")
-/obj/screen/act_intent/alien
+/atom/movable/screen/act_intent/alien
icon = 'icons/mob/screen_alien.dmi'
screen_loc = ui_acti
-/obj/screen/act_intent/robot
+/atom/movable/screen/act_intent/robot
icon = 'icons/mob/screen_robot.dmi'
screen_loc = ui_borg_intents
-/obj/screen/act_intent/robot/AI
+/atom/movable/screen/act_intent/robot/AI
screen_loc = "SOUTH+1:6,EAST-1:32"
-/obj/screen/mov_intent
+/atom/movable/screen/mov_intent
name = "run/walk toggle"
icon_state = "running"
-/obj/screen/act_intent/simple_animal
+/atom/movable/screen/act_intent/simple_animal
icon = 'icons/mob/screen_simplemob.dmi'
screen_loc = ui_acti
-/obj/screen/act_intent/guardian
+/atom/movable/screen/act_intent/guardian
icon = 'icons/mob/guardian.dmi'
screen_loc = ui_acti
-/obj/screen/mov_intent/Click()
+/atom/movable/screen/mov_intent/Click()
usr.toggle_move_intent()
-/obj/screen/pull
+/atom/movable/screen/pull
name = "stop pulling"
icon_state = "pull"
-/obj/screen/pull/Click()
+/atom/movable/screen/pull/Click()
usr.stop_pulling()
-/obj/screen/pull/update_icon_state()
+/atom/movable/screen/pull/update_icon_state()
if(hud?.mymob?.pulling)
icon_state = "pull"
else
icon_state = "pull0"
-/obj/screen/resist
+/atom/movable/screen/resist
name = "resist"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "act_resist"
-/obj/screen/resist/Click()
+/atom/movable/screen/resist/Click()
if(isliving(usr))
var/mob/living/L = usr
L.resist()
-/obj/screen/throw_catch
+/atom/movable/screen/throw_catch
name = "throw/catch"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "act_throw_off"
-/obj/screen/throw_catch/Click()
+/atom/movable/screen/throw_catch/Click()
if(iscarbon(usr))
var/mob/living/carbon/C = usr
C.toggle_throw_mode()
-/obj/screen/storage
+/atom/movable/screen/storage
name = "storage"
-/obj/screen/storage/Click(location, control, params)
+/atom/movable/screen/storage/Click(location, control, params)
if(world.time <= usr.next_move)
return TRUE
if(usr.incapacitated(ignore_restraints = TRUE))
@@ -163,7 +173,7 @@
master.attackby(I, usr, params)
return TRUE
-/obj/screen/storage/proc/is_item_accessible(obj/item/I, mob/user)
+/atom/movable/screen/storage/proc/is_item_accessible(obj/item/I, mob/user)
if(!user || !I)
return FALSE
@@ -180,7 +190,7 @@
return TRUE
return FALSE
-/obj/screen/storage/MouseDrop_T(obj/item/I, mob/user)
+/atom/movable/screen/storage/MouseDrop_T(obj/item/I, mob/user)
if(!user || !istype(I) || user.incapacitated(ignore_restraints = TRUE) || ismecha(user.loc) || !master)
return
@@ -219,7 +229,7 @@
S.attackby(I, user)
return TRUE
-/obj/screen/zone_sel
+/atom/movable/screen/zone_sel
name = "damage zone"
icon_state = "zone_sel"
screen_loc = ui_zonesel
@@ -228,7 +238,7 @@
var/static/list/hover_overlays_cache = list()
var/hovering
-/obj/screen/zone_sel/Click(location, control,params)
+/atom/movable/screen/zone_sel/Click(location, control,params)
if(isobserver(usr))
return
@@ -241,11 +251,11 @@
return set_selected_zone(choice, usr)
-/obj/screen/zone_sel/MouseEntered(location, control, params)
+/atom/movable/screen/zone_sel/MouseEntered(location, control, params)
. = ..()
MouseMove(location, control, params)
-/obj/screen/zone_sel/MouseMove(location, control, params)
+/atom/movable/screen/zone_sel/MouseMove(location, control, params)
if(isobserver(usr))
return
@@ -275,13 +285,13 @@
layer = ABOVE_HUD_LAYER
plane = ABOVE_HUD_PLANE
-/obj/screen/zone_sel/MouseExited(location, control, params)
+/atom/movable/screen/zone_sel/MouseExited(location, control, params)
if(!isobserver(usr) && hovering)
cut_overlay(hover_overlays_cache[hovering])
hovering = null
return ..()
-/obj/screen/zone_sel/proc/get_zone_at(icon_x, icon_y)
+/atom/movable/screen/zone_sel/proc/get_zone_at(icon_x, icon_y)
switch(icon_y)
if(1 to 3) //Feet
switch(icon_x)
@@ -325,7 +335,7 @@
return "eyes"
return "head"
-/obj/screen/zone_sel/proc/set_selected_zone(choice)
+/atom/movable/screen/zone_sel/proc/set_selected_zone(choice)
if(!hud)
return
if(isobserver(hud.mymob))
@@ -334,58 +344,58 @@
if(choice != selecting)
selecting = choice
update_icon(UPDATE_OVERLAYS)
- return 1
+ return TRUE
-/obj/screen/zone_sel/update_overlays()
+/atom/movable/screen/zone_sel/update_overlays()
. = ..()
var/image/sel = image(overlay_file, "[selecting]")
sel.appearance_flags = RESET_COLOR
. += sel
hud.mymob.zone_selected = selecting
-/obj/screen/zone_sel/alien
+/atom/movable/screen/zone_sel/alien
icon = 'icons/mob/screen_alien.dmi'
overlay_file = 'icons/mob/screen_alien.dmi'
-/obj/screen/zone_sel/robot
+/atom/movable/screen/zone_sel/robot
icon = 'icons/mob/screen_robot.dmi'
-/obj/screen/craft
+/atom/movable/screen/craft
name = "crafting menu"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "craft"
screen_loc = ui_crafting
-/obj/screen/craft/Click()
+/atom/movable/screen/craft/Click()
var/mob/living/M = usr
M.OpenCraftingMenu()
-/obj/screen/language_menu
+/atom/movable/screen/language_menu
name = "language menu"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "talk_wheel"
screen_loc = ui_language_menu
-/obj/screen/language_menu/Click()
+/atom/movable/screen/language_menu/Click()
var/mob/M = usr
if(!istype(M))
return
M.check_languages()
-/obj/screen/inventory
+/atom/movable/screen/inventory
var/slot_id //The indentifier for the slot. It has nothing to do with ID cards.
var/list/object_overlays = list()
-/obj/screen/inventory/MouseEntered()
+/atom/movable/screen/inventory/MouseEntered()
. = ..()
add_overlays()
-/obj/screen/inventory/MouseExited()
+/atom/movable/screen/inventory/MouseExited()
..()
cut_overlay(object_overlays)
object_overlays.Cut()
-/obj/screen/inventory/proc/add_overlays()
+/atom/movable/screen/inventory/proc/add_overlays()
var/mob/user = hud.mymob
if(hud && user && slot_id)
@@ -405,7 +415,7 @@
object_overlays += item_overlay
add_overlay(object_overlays)
-/obj/screen/inventory/MouseDrop(atom/over)
+/atom/movable/screen/inventory/MouseDrop(atom/over)
cut_overlay(object_overlays)
object_overlays.Cut()
if(could_be_click_lag())
@@ -414,7 +424,7 @@
return
return ..()
-/obj/screen/inventory/Click(location, control, params)
+/atom/movable/screen/inventory/Click(location, control, params)
// At this point in client Click() code we have passed the 1/10 sec check and little else
// We don't even know if it's a middle click
if(world.time <= usr.next_move)
@@ -432,14 +442,14 @@
if(usr.attack_ui(slot_id))
usr.update_inv_l_hand()
usr.update_inv_r_hand()
- return 1
+ return TRUE
-/obj/screen/inventory/hand
+/atom/movable/screen/inventory/hand
var/image/active_overlay
var/image/handcuff_overlay
var/static/mutable_appearance/blocked_overlay = mutable_appearance('icons/mob/screen_gen.dmi', "blocked")
-/obj/screen/inventory/hand/update_overlays()
+/atom/movable/screen/inventory/hand/update_overlays()
. = ..()
if(!active_overlay)
active_overlay = image("icon"=icon, "icon_state"="hand_active")
@@ -462,7 +472,7 @@
else if(slot_id == SLOT_HUD_RIGHT_HAND && !hud.mymob.hand)
. += active_overlay
-/obj/screen/inventory/hand/Click()
+/atom/movable/screen/inventory/hand/Click()
// At this point in client Click() code we have passed the 1/10 sec check and little else
// We don't even know if it's a middle click
if(world.time <= usr.next_move)
@@ -479,12 +489,12 @@
M.activate_hand("r")
if("left hand", "l_hand")
M.activate_hand("l")
- return 1
+ return TRUE
-/obj/screen/swap_hand
+/atom/movable/screen/swap_hand
name = "swap hand"
-/obj/screen/swap_hand/Click()
+/atom/movable/screen/swap_hand/Click()
// At this point in client Click() code we have passed the 1/10 sec check and little else
// We don't even know if it's a middle click
if(world.time <= usr.next_move)
@@ -498,57 +508,57 @@
M.swap_hand()
return 1
-/obj/screen/healths
+/atom/movable/screen/healths
name = "health"
icon_state = "health0"
screen_loc = ui_health
-/obj/screen/healths/alien
+/atom/movable/screen/healths/alien
icon = 'icons/mob/screen_alien.dmi'
screen_loc = ui_alien_health
-/obj/screen/healths/bot
+/atom/movable/screen/healths/bot
icon = 'icons/mob/screen_bot.dmi'
screen_loc = ui_borg_health
-/obj/screen/healths/robot
+/atom/movable/screen/healths/robot
icon = 'icons/mob/screen_robot.dmi'
screen_loc = ui_borg_health
-/obj/screen/healths/corgi
+/atom/movable/screen/healths/corgi
icon = 'icons/mob/screen_corgi.dmi'
-/obj/screen/healths/slime
+/atom/movable/screen/healths/slime
icon = 'icons/mob/screen_slime.dmi'
icon_state = "slime_health0"
screen_loc = ui_slime_health
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
-/obj/screen/healths/guardian
+/atom/movable/screen/healths/guardian
name = "summoner health"
icon = 'icons/mob/guardian.dmi'
icon_state = "base"
screen_loc = ui_health
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
-/obj/screen/healthdoll
+/atom/movable/screen/healthdoll
name = "health doll"
icon_state = "healthdoll_DEAD"
screen_loc = ui_healthdoll
var/list/cached_healthdoll_overlays = list() // List of icon states (strings) for overlays
-/obj/screen/healthdoll/Click()
+/atom/movable/screen/healthdoll/Click()
if(ishuman(usr) && !usr.is_dead())
var/mob/living/carbon/H = usr
H.check_self_for_injuries()
-/obj/screen/component_button
- var/obj/screen/parent
+/atom/movable/screen/component_button
+ var/atom/movable/screen/parent
-/obj/screen/component_button/Initialize(mapload, obj/screen/new_parent)
+/atom/movable/screen/component_button/Initialize(mapload, atom/movable/screen/new_parent)
. = ..()
parent = new_parent
-/obj/screen/component_button/Click(params)
+/atom/movable/screen/component_button/Click(params)
if(parent)
parent.component_click(src, params)
diff --git a/code/_onclick/hud/screentip.dm b/code/_onclick/hud/screentip.dm
index beb8f033b9f..542c96e626f 100644
--- a/code/_onclick/hud/screentip.dm
+++ b/code/_onclick/hud/screentip.dm
@@ -1,4 +1,4 @@
-/obj/screen/screentip
+/atom/movable/screen/screentip
icon = null
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
screen_loc = "TOP,LEFT"
@@ -7,12 +7,12 @@
maptext_y = -50
maptext = ""
-/obj/screen/screentip/Initialize(mapload, _hud)
+/atom/movable/screen/screentip/Initialize(mapload, _hud)
. = ..()
hud = _hud
update_view()
-/obj/screen/screentip/proc/update_view(datum/source)
+/atom/movable/screen/screentip/proc/update_view(datum/source)
if(!hud) //Might not have been initialized by now
return
maptext_width = getviewsize(hud.mymob.client.view)[1] * world.icon_size
diff --git a/code/_onclick/hud/slime_hud.dm b/code/_onclick/hud/slime_hud.dm
index 273991a83c8..58a579e3599 100644
--- a/code/_onclick/hud/slime_hud.dm
+++ b/code/_onclick/hud/slime_hud.dm
@@ -1,6 +1,6 @@
/datum/hud/slime/New(mob/living/simple_animal/slime/owner, ui_style = 'icons/mob/screen_slime.dmi')
..()
- mymob.healths = new /obj/screen/healths/slime()
+ mymob.healths = new /atom/movable/screen/healths/slime()
infodisplay += mymob.healths
/mob/living/simple_animal/slime/create_mob_hud()
diff --git a/code/controllers/subsystem/SSdebugview.dm b/code/controllers/subsystem/SSdebugview.dm
index 0f973a5deb2..bbc2082c582 100644
--- a/code/controllers/subsystem/SSdebugview.dm
+++ b/code/controllers/subsystem/SSdebugview.dm
@@ -44,7 +44,7 @@ SUBSYSTEM_DEF(debugview)
C.debug_text_overlay.maptext = "[out_text]"
/datum/controller/subsystem/debugview/proc/start_processing(client/C)
- C.debug_text_overlay = new /obj/screen/debugtextholder(null, C)
+ C.debug_text_overlay = new /atom/movable/screen/debugtextholder(null, C)
C.screen |= C.debug_text_overlay
processing |= C
@@ -53,7 +53,7 @@ SUBSYSTEM_DEF(debugview)
C.screen -= C.debug_text_overlay
QDEL_NULL(C.debug_text_overlay)
-/obj/screen/debugtextholder
+/atom/movable/screen/debugtextholder
icon = 'icons/mob/screen_full.dmi'
icon_state = "empty"
screen_loc = "TOP,LEFT"
@@ -61,11 +61,11 @@ SUBSYSTEM_DEF(debugview)
maptext_height = 480 // 15 * 32 (15 tiles, 32 pixels each)
maptext_width = 480 // changes with prefs
-/obj/screen/debugtextholder/Initialize(mapload, client/C)
+/atom/movable/screen/debugtextholder/Initialize(mapload, client/C)
. = ..()
update_view(C)
-/obj/screen/debugtextholder/proc/update_view(client/C)
+/atom/movable/screen/debugtextholder/proc/update_view(client/C)
var/list/viewsizes = getviewsize(C.view)
maptext_width = viewsizes[1] * world.icon_size
diff --git a/code/controllers/subsystem/SSghost_spawns.dm b/code/controllers/subsystem/SSghost_spawns.dm
index 9811088f742..80e275ce9a1 100644
--- a/code/controllers/subsystem/SSghost_spawns.dm
+++ b/code/controllers/subsystem/SSghost_spawns.dm
@@ -70,7 +70,7 @@ SUBSYSTEM_DEF(ghost_spawns)
// If we somehow send two polls for the same mob type, but with a duration on the second one shorter than the time left on the first one,
// we need to keep the first one's timeout rather than use the shorter one
- var/obj/screen/alert/notify_action/current_alert = LAZYACCESS(M.alerts, category)
+ var/atom/movable/screen/alert/notify_action/current_alert = LAZYACCESS(M.alerts, category)
var/alert_time = poll_time
var/alert_poll = P
if(current_alert && current_alert.timeout > (world.time + poll_time - world.tick_lag))
@@ -78,7 +78,7 @@ SUBSYSTEM_DEF(ghost_spawns)
alert_poll = current_alert.poll
// Send them an on-screen alert
- var/obj/screen/alert/notify_action/A = M.throw_alert(category, /obj/screen/alert/notify_action, timeout_override = alert_time, no_anim = TRUE)
+ var/atom/movable/screen/alert/notify_action/A = M.throw_alert(category, /atom/movable/screen/alert/notify_action, timeout_override = alert_time, no_anim = TRUE)
if(!A)
continue
diff --git a/code/controllers/subsystem/SSparallax.dm b/code/controllers/subsystem/SSparallax.dm
index c0beb503d66..99024fd0d1e 100644
--- a/code/controllers/subsystem/SSparallax.dm
+++ b/code/controllers/subsystem/SSparallax.dm
@@ -17,7 +17,7 @@ SUBSYSTEM_DEF(parallax)
/datum/controller/subsystem/parallax/PreInit()
. = ..()
if(prob(70)) //70% chance to pick a special extra layer
- random_layer = pick(/obj/screen/parallax_layer/random/space_gas, /obj/screen/parallax_layer/random/asteroids)
+ random_layer = pick(/atom/movable/screen/parallax_layer/random/space_gas, /atom/movable/screen/parallax_layer/random/asteroids)
random_parallax_color = pick(COLOR_TEAL, COLOR_GREEN, COLOR_SILVER, COLOR_YELLOW, COLOR_CYAN, COLOR_ORANGE, COLOR_PURPLE) //Special color for random_layer1. Has to be done here so everyone sees the same color.
planet_y_offset = rand(100, 160)
planet_x_offset = rand(100, 160)
diff --git a/code/controllers/subsystem/SSticker.dm b/code/controllers/subsystem/SSticker.dm
index 8713ce74d49..864eca69384 100644
--- a/code/controllers/subsystem/SSticker.dm
+++ b/code/controllers/subsystem/SSticker.dm
@@ -54,7 +54,7 @@ SUBSYSTEM_DEF(ticker)
/// Holder for inital autotransfer vote timer
var/next_autotransfer = 0
/// Used for station explosion cinematic
- var/obj/screen/cinematic = null
+ var/atom/movable/screen/cinematic = null
/// Spam Prevention. Announce round end only once.
var/round_end_announced = FALSE
/// Is the ticker currently processing? If FALSE, roundstart is delayed
@@ -364,7 +364,7 @@ SUBSYSTEM_DEF(ticker)
auto_toggle_ooc(TRUE) // Turn it on
//initialise our cinematic screen object
- cinematic = new /obj/screen(src)
+ cinematic = new /atom/movable/screen(src)
cinematic.icon = 'icons/effects/station_explosion.dmi'
cinematic.icon_state = "station_intact"
cinematic.layer = 21
diff --git a/code/datums/action.dm b/code/datums/action.dm
index 0e6dc66076d..18fd4086774 100644
--- a/code/datums/action.dm
+++ b/code/datums/action.dm
@@ -12,7 +12,7 @@
var/desc = null
var/obj/target = null
var/check_flags = 0
- var/obj/screen/movable/action_button/button = null
+ var/atom/movable/screen/movable/action_button/button = null
var/button_icon = 'icons/mob/actions/actions.dmi'
var/background_icon_state = "bg_default"
var/buttontooltipstyle = ""
@@ -129,7 +129,7 @@
img.plane = FLOAT_PLANE + 1
button.add_overlay(img)
-/datum/action/proc/ApplyIcon(obj/screen/movable/action_button/current_button)
+/datum/action/proc/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
current_button.cut_overlays()
if(icon_icon && button_icon_state)
var/image/img = image(icon_icon, current_button, button_icon_state)
@@ -165,7 +165,7 @@
I.ui_action_click(owner, type, left_click)
return TRUE
-/datum/action/item_action/ApplyIcon(obj/screen/movable/action_button/current_button)
+/datum/action/item_action/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
if(use_itemicon)
if(target)
var/obj/item/I = target
@@ -436,7 +436,7 @@
owner.research_scanner = FALSE
..()
-/datum/action/item_action/toggle_research_scanner/ApplyIcon(obj/screen/movable/action_button/current_button)
+/datum/action/item_action/toggle_research_scanner/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
current_button.cut_overlays()
if(button_icon && button_icon_state)
var/image/img = image(button_icon, current_button, "scan_mode")
diff --git a/code/datums/click_intercept.dm b/code/datums/click_intercept.dm
index 953e1272602..78e8c8725f7 100644
--- a/code/datums/click_intercept.dm
+++ b/code/datums/click_intercept.dm
@@ -8,8 +8,8 @@
/datum/click_intercept
/// A reference to the client which is assigned this click intercept datum.
var/client/holder = null
- /// Any `obj/screen/buttons` the client is meant to receive when assigned this click intercept datum.
- var/list/obj/screen/buttons = list()
+ /// Any `atom/movable/screen/buttons` the client is meant to receive when assigned this click intercept datum.
+ var/list/atom/movable/screen/buttons = list()
/datum/click_intercept/New(client/C)
create_buttons()
diff --git a/code/datums/keybindings/mob_keybinds.dm b/code/datums/keybindings/mob_keybinds.dm
index d2b3d2c9034..55122bff793 100644
--- a/code/datums/keybindings/mob_keybinds.dm
+++ b/code/datums/keybindings/mob_keybinds.dm
@@ -168,7 +168,7 @@
if(!C.check_has_body_select())
return
- var/obj/screen/zone_sel/selector = C.mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = C.mob.hud_used.zone_select
selector.set_selected_zone(body_part, C.mob)
/datum/keybinding/mob/target/head
diff --git a/code/datums/spells/mimic.dm b/code/datums/spells/mimic.dm
index b7fe668761d..15c1481c8fe 100644
--- a/code/datums/spells/mimic.dm
+++ b/code/datums/spells/mimic.dm
@@ -19,7 +19,7 @@
var/perfect_disguise = FALSE
var/static/list/black_listed_form_types = list(
- /obj/screen,
+ /atom/movable/screen,
/obj/singularity,
/obj/effect,
/mob/living/simple_animal/hostile/megafauna,
diff --git a/code/datums/status_effects/blob_burst.dm b/code/datums/status_effects/blob_burst.dm
index 37170782b93..d1381612a2c 100644
--- a/code/datums/status_effects/blob_burst.dm
+++ b/code/datums/status_effects/blob_burst.dm
@@ -1,5 +1,5 @@
/datum/status_effect/blob_burst
- alert_type = /obj/screen/alert/status_effect/blob_burst
+ alert_type = /atom/movable/screen/alert/status_effect/blob_burst
var/datum/callback/blob_burst_callback
/datum/status_effect/blob_burst/on_creation(mob/living/new_owner, duration = 120 SECONDS, datum/callback/burst_callback)
@@ -20,7 +20,7 @@
/datum/status_effect/blob_burst/on_timeout()
blob_burst_callback.Invoke()
-/obj/screen/alert/status_effect/blob_burst
+/atom/movable/screen/alert/status_effect/blob_burst
name = "Blob burst"
desc = "You're about to burst into a blob, be sure to find a safe place before that you burst!"
icon = 'icons/mob/blob.dmi'
diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm
index 61143bc0cca..7210c6a9cb5 100644
--- a/code/datums/status_effects/buffs.dm
+++ b/code/datums/status_effects/buffs.dm
@@ -4,18 +4,18 @@
id = "his_grace"
duration = -1
tick_interval = 4
- alert_type = /obj/screen/alert/status_effect/his_grace
+ alert_type = /atom/movable/screen/alert/status_effect/his_grace
var/bloodlust = 0
/// Attached His Grace toolbox
var/obj/item/his_grace/toolbox
-/obj/screen/alert/status_effect/his_grace
+/atom/movable/screen/alert/status_effect/his_grace
name = "His Grace"
desc = "His Grace hungers, and you must feed Him."
icon_state = "his_grace"
alerttooltipstyle = "hisgrace"
-/obj/screen/alert/status_effect/his_grace/MouseEntered(location, control, params)
+/atom/movable/screen/alert/status_effect/his_grace/MouseEntered(location, control, params)
desc = initial(desc)
var/datum/status_effect/his_grace/HG = attached_effect
desc += "
Current Bloodthirst: [HG.bloodlust]\
@@ -61,9 +61,9 @@
/datum/status_effect/shadow_mend
id = "shadow_mend"
duration = 3 SECONDS
- alert_type = /obj/screen/alert/status_effect/shadow_mend
+ alert_type = /atom/movable/screen/alert/status_effect/shadow_mend
-/obj/screen/alert/status_effect/shadow_mend
+/atom/movable/screen/alert/status_effect/shadow_mend
name = "Shadow Mend"
desc = "Shadowy energies wrap around your wounds, sealing them at a price. After healing, you will slowly lose health every three seconds for thirty seconds."
icon_state = "shadow_mend"
@@ -88,10 +88,10 @@
duration = 30 SECONDS
tick_interval = 3 SECONDS
status_type = STATUS_EFFECT_REFRESH
- alert_type = /obj/screen/alert/status_effect/void_price
+ alert_type = /atom/movable/screen/alert/status_effect/void_price
var/price = 3 //This is how much hp you lose per tick. Each time the buff is refreshed, it increased by 1. Healing too much in a short period of time will cause your swift demise
-/obj/screen/alert/status_effect/void_price
+/atom/movable/screen/alert/status_effect/void_price
name = "Void Price"
desc = "Black tendrils cinch tightly against you, digging wicked barbs into your flesh."
icon_state = "shadow_mend"
@@ -108,10 +108,10 @@
id = "blooddrunk"
duration = 10
tick_interval = 0
- alert_type = /obj/screen/alert/status_effect/blooddrunk
+ alert_type = /atom/movable/screen/alert/status_effect/blooddrunk
var/blooddrunk_damage_mod_remove = 4 // Damage is multiplied by this at the end of the status effect. Modify this one, it changes the _add
-/obj/screen/alert/status_effect/blooddrunk
+/atom/movable/screen/alert/status_effect/blooddrunk
name = "Blood-Drunk"
desc = "You are drunk on blood! Your pulse thunders in your ears! Nothing can harm you!" //not true, and the item description mentions its actual effect
icon_state = "blooddrunk"
@@ -147,7 +147,7 @@
if(islist(owner.stun_absorption) && owner.stun_absorption["blooddrunk"])
owner.remove_stun_absorption("blooddrunk")
-/obj/screen/alert/status_effect/dash
+/atom/movable/screen/alert/status_effect/dash
name = "Dash"
desc = "Your have the ability to dash!"
icon = 'icons/mob/actions/actions.dmi'
@@ -157,16 +157,16 @@
id = "dash"
duration = 5 SECONDS
tick_interval = 0
- alert_type = /obj/screen/alert/status_effect/dash
+ alert_type = /atom/movable/screen/alert/status_effect/dash
/datum/status_effect/bloodswell
id = "bloodswell"
duration = 30 SECONDS
tick_interval = 0
- alert_type = /obj/screen/alert/status_effect/blood_swell
+ alert_type = /atom/movable/screen/alert/status_effect/blood_swell
var/bonus_damage_applied = FALSE
-/obj/screen/alert/status_effect/blood_swell
+/atom/movable/screen/alert/status_effect/blood_swell
name = "Blood Swell"
desc = "Your body has been infused with crimson magics, your resistance to attacks has greatly increased!"
icon = 'icons/mob/actions/actions.dmi'
@@ -206,9 +206,9 @@
id = "vampire_gladiator"
duration = 30 SECONDS
tick_interval = 1 SECONDS
- alert_type = /obj/screen/alert/status_effect/vampire_gladiator
+ alert_type = /atom/movable/screen/alert/status_effect/vampire_gladiator
-/obj/screen/alert/status_effect/vampire_gladiator
+/atom/movable/screen/alert/status_effect/vampire_gladiator
name = "Gladiatorial Resilience"
desc = "Roused by the thrill of the fight, your body has become more resistant to breaking!"
icon = 'icons/mob/actions/actions.dmi'
@@ -408,7 +408,7 @@
if(!heal_points)
return
-/obj/screen/alert/status_effect/regenerative_core
+/atom/movable/screen/alert/status_effect/regenerative_core
name = "Reinforcing Tendrils"
desc = "You can move faster than your broken body could normally handle!"
icon_state = "regenerative_core"
@@ -418,7 +418,7 @@
id = "Regenerative Core"
duration = 1 MINUTES
status_type = STATUS_EFFECT_REPLACE
- alert_type = /obj/screen/alert/status_effect/regenerative_core
+ alert_type = /atom/movable/screen/alert/status_effect/regenerative_core
/datum/status_effect/regenerative_core/on_apply()
ADD_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, id)
@@ -551,9 +551,9 @@
id = "chainsaw_slaying"
duration = 5 SECONDS
status_type = STATUS_EFFECT_REFRESH
- alert_type = /obj/screen/alert/status_effect/chainsaw
+ alert_type = /atom/movable/screen/alert/status_effect/chainsaw
-/obj/screen/alert/status_effect/chainsaw
+/atom/movable/screen/alert/status_effect/chainsaw
name = "Revved up!"
desc = "... guts, huge guts! Kill them... must kill them all!"
icon_state = "chainsaw"
@@ -585,9 +585,9 @@
duration = -1
tick_interval = 2 SECONDS
status_type = STATUS_EFFECT_UNIQUE
- alert_type = /obj/screen/alert/status_effect/hope
+ alert_type = /atom/movable/screen/alert/status_effect/hope
-/obj/screen/alert/status_effect/hope
+/atom/movable/screen/alert/status_effect/hope
name = "Hope."
desc = "A ray of hope beyond dispair."
icon_state = "hope"
@@ -640,13 +640,13 @@
return ..()
/datum/status_effect/drill_payback/on_apply()
- owner.overlay_fullscreen("payback", /obj/screen/fullscreen/payback, 0)
+ owner.overlay_fullscreen("payback", /atom/movable/screen/fullscreen/payback, 0)
addtimer(CALLBACK(src, PROC_REF(payback_phase_2)), 2.7 SECONDS)
return TRUE
/datum/status_effect/drill_payback/proc/payback_phase_2()
owner.clear_fullscreen("payback")
- owner.overlay_fullscreen("payback", /obj/screen/fullscreen/payback, 1)
+ owner.overlay_fullscreen("payback", /atom/movable/screen/fullscreen/payback, 1)
/datum/status_effect/drill_payback/tick() //They are not staying down. This will be a fight.
if(!drilled_successfully && (get_dist(owner, drilled) >= 9)) //We don't want someone drilling the safe at arivals then raiding bridge with the buff
@@ -752,9 +752,9 @@
id = "bearserker rage"
duration = 5 SECONDS
status_type = STATUS_EFFECT_REFRESH
- alert_type = /obj/screen/alert/status_effect/bearserker_rage
+ alert_type = /atom/movable/screen/alert/status_effect/bearserker_rage
-/obj/screen/alert/status_effect/bearserker_rage
+/atom/movable/screen/alert/status_effect/bearserker_rage
name = "Bearserker Rage"
desc = "Blood flows between your fingers, and Foh'Sie roars; \"MORE BLOOD!\""
icon_state = "bearserker"
diff --git a/code/datums/status_effects/debuffs.dm b/code/datums/status_effects/debuffs.dm
index 327a8e4b3f6..efcc3c3ab28 100644
--- a/code/datums/status_effects/debuffs.dm
+++ b/code/datums/status_effects/debuffs.dm
@@ -5,9 +5,9 @@
id = "his_wrath"
duration = -1
tick_interval = 4
- alert_type = /obj/screen/alert/status_effect/his_wrath
+ alert_type = /atom/movable/screen/alert/status_effect/his_wrath
-/obj/screen/alert/status_effect/his_wrath
+/atom/movable/screen/alert/status_effect/his_wrath
name = "His Wrath"
desc = "You fled from His Grace instead of feeding Him, and now you suffer."
icon_state = "his_grace"
@@ -188,10 +188,10 @@
id = "teleportation sickness"
duration = 30 SECONDS
status_type = STATUS_EFFECT_REFRESH
- alert_type = /obj/screen/alert/status_effect/teleport_sickness
+ alert_type = /atom/movable/screen/alert/status_effect/teleport_sickness
var/teleports = 1
-/obj/screen/alert/status_effect/teleport_sickness
+/atom/movable/screen/alert/status_effect/teleport_sickness
name = "Teleportation sickness"
desc = "You feel like you are going to throw up with all this teleporting."
icon_state = "bluespace"
@@ -464,7 +464,7 @@
owner.Slur(actual_strength)
if(!alert_thrown)
alert_thrown = TRUE
- owner.throw_alert("drunk", /obj/screen/alert/drunk)
+ owner.throw_alert("drunk", /atom/movable/screen/alert/drunk)
owner.sound_environment_override = SOUND_ENVIRONMENT_PSYCHOTIC
// THRESHOLD_BRAWLING (60 SECONDS)
if(M)
@@ -1011,7 +1011,7 @@
/datum/status_effect/bubblegum_curse
id = "bubblegum curse"
- alert_type = /obj/screen/alert/status_effect/bubblegum_curse
+ alert_type = /atom/movable/screen/alert/status_effect/bubblegum_curse
duration = -1 //Kill it. There is no other option.
tick_interval = 1 SECONDS
/// The damage the status effect does per tick.
@@ -1023,7 +1023,7 @@
/datum/status_effect/bubblegum_curse/on_creation(mob/living/new_owner, mob/living/source)
. = ..()
source_UID = source.UID()
- owner.overlay_fullscreen("Bubblegum", /obj/screen/fullscreen/fog, 1)
+ owner.overlay_fullscreen("Bubblegum", /atom/movable/screen/fullscreen/fog, 1)
/datum/status_effect/bubblegum_curse/tick()
var/mob/living/simple_animal/hostile/megafauna/bubblegum/attacker = locateUID(source_UID)
@@ -1031,7 +1031,7 @@
qdel(src)
if(attacker.health <= attacker.maxHealth / 2)
owner.clear_fullscreen("Bubblegum")
- owner.overlay_fullscreen("Bubblegum", /obj/screen/fullscreen/fog, 2)
+ owner.overlay_fullscreen("Bubblegum", /atom/movable/screen/fullscreen/fog, 2)
if(!coward_checking)
if(owner.z != attacker.z)
addtimer(CALLBACK(src, PROC_REF(onstation_coward_callback)), 12 SECONDS)
@@ -1123,20 +1123,20 @@
playsound(targetturf, 'sound/misc/exit_blood.ogg', 100, TRUE, -1)
addtimer(CALLBACK(attacker, TYPE_PROC_REF(/mob/living/simple_animal/hostile/megafauna/bubblegum, FindTarget), list(owner), 1), 2)
-/obj/screen/alert/status_effect/bubblegum_curse
+/atom/movable/screen/alert/status_effect/bubblegum_curse
name = "I SEE YOU"
desc = "YOUR SOUL WILL BE MINE FOR YOUR INSOLENCE"
icon_state = "bubblegumjumpscare"
-/obj/screen/alert/status_effect/bubblegum_curse/Initialize(mapload)
+/atom/movable/screen/alert/status_effect/bubblegum_curse/Initialize(mapload)
. = ..()
START_PROCESSING(SSobj, src)
-/obj/screen/alert/status_effect/bubblegum_curse/Destroy()
+/atom/movable/screen/alert/status_effect/bubblegum_curse/Destroy()
STOP_PROCESSING(SSobj, src)
return ..()
-/obj/screen/alert/status_effect/bubblegum_curse/process()
+/atom/movable/screen/alert/status_effect/bubblegum_curse/process()
var/new_filter = isnull(get_filter("ray"))
ray_filter_helper(1, 40,"#ce3030", 6, 20)
if(new_filter)
@@ -1146,10 +1146,10 @@
/datum/status_effect/abductor_cooldown
id = "abductor_cooldown"
- alert_type = /obj/screen/alert/status_effect/abductor_cooldown
+ alert_type = /atom/movable/screen/alert/status_effect/abductor_cooldown
duration = 10 SECONDS
-/obj/screen/alert/status_effect/abductor_cooldown
+/atom/movable/screen/alert/status_effect/abductor_cooldown
name = "Teleportation cooldown"
desc = "Per article A-113, all experimentors must wait 10000 milliseconds between teleports in order to ensure no long term genetic or mental damage happens to experimentor or test subjects."
icon_state = "bluespace"
@@ -1160,7 +1160,7 @@
/// Purposebuilt for cursed slot machines.
/datum/status_effect/cursed
id = "cursed"
- alert_type = /obj/screen/alert/status_effect/cursed
+ alert_type = /atom/movable/screen/alert/status_effect/cursed
/// The max number of curses a target can incur with this status effect.
var/max_curse_count = DEFAULT_MAX_CURSE_COUNT
/// The amount of times we have been "applied" to the target.
@@ -1304,12 +1304,12 @@
oxy = (curse_count * ticked_coefficient),
)
-/obj/screen/alert/status_effect/cursed
+/atom/movable/screen/alert/status_effect/cursed
name = "Cursed!"
desc = "The brand on your hand reminds you of your greed, yet you seem to be okay otherwise."
icon_state = "cursed_by_slots"
-/obj/screen/alert/status_effect/cursed/update_desc()
+/atom/movable/screen/alert/status_effect/cursed/update_desc()
. = ..()
var/datum/status_effect/cursed/linked_effect = attached_effect
var/curses = linked_effect.curse_count
diff --git a/code/datums/status_effects/gas.dm b/code/datums/status_effects/gas.dm
index 653238c6358..fa1ed6ad2af 100644
--- a/code/datums/status_effects/gas.dm
+++ b/code/datums/status_effects/gas.dm
@@ -2,11 +2,11 @@
id = "frozen"
duration = 100
status_type = STATUS_EFFECT_UNIQUE
- alert_type = /obj/screen/alert/status_effect/freon
+ alert_type = /atom/movable/screen/alert/status_effect/freon
var/icon/cube
var/can_melt = TRUE
-/obj/screen/alert/status_effect/freon
+/atom/movable/screen/alert/status_effect/freon
name = "Frozen Solid"
desc = "You're frozen inside an ice cube, and cannot move! You can still do stuff, like shooting. Resist out of the cube!"
icon_state = "frozen"
diff --git a/code/datums/status_effects/magic_disguise.dm b/code/datums/status_effects/magic_disguise.dm
index 9da1fb8dc39..97a3640de2b 100644
--- a/code/datums/status_effects/magic_disguise.dm
+++ b/code/datums/status_effects/magic_disguise.dm
@@ -2,11 +2,11 @@
id = "magic_disguise"
duration = -1
tick_interval = -1
- alert_type = /obj/screen/alert/status_effect/magic_disguise
+ alert_type = /atom/movable/screen/alert/status_effect/magic_disguise
status_type = STATUS_EFFECT_REPLACE
var/datum/icon_snapshot/disguise
-/obj/screen/alert/status_effect/magic_disguise
+/atom/movable/screen/alert/status_effect/magic_disguise
name = "Disguised"
desc = "You are disguised as a crewmember."
icon = 'icons/mob/actions/actions.dmi'
diff --git a/code/datums/status_effects/status_effect.dm b/code/datums/status_effects/status_effect.dm
index b137ffe3660..65017ada48b 100644
--- a/code/datums/status_effects/status_effect.dm
+++ b/code/datums/status_effects/status_effect.dm
@@ -10,8 +10,8 @@
var/status_type = STATUS_EFFECT_UNIQUE //How many of the effect can be on one mob, and what happens when you try to add another
var/on_remove_on_mob_delete = FALSE //if we call on_remove() when the mob is deleted
var/examine_text //If defined, this text will appear when the mob is examined - to use he, she etc. use "SUBJECTPRONOUN" and replace it in the examines themselves
- var/alert_type = /obj/screen/alert/status_effect //the alert thrown by the status effect, contains name and description
- var/obj/screen/alert/status_effect/linked_alert = null //the alert itself, if it exists
+ var/alert_type = /atom/movable/screen/alert/status_effect //the alert thrown by the status effect, contains name and description
+ var/atom/movable/screen/alert/status_effect/linked_alert = null //the alert itself, if it exists
/datum/status_effect/New(list/arguments)
on_creation(arglist(arguments))
@@ -28,7 +28,7 @@
duration = world.time + duration
tick_interval = world.time + tick_interval
if(alert_type)
- var/obj/screen/alert/status_effect/A = owner.throw_alert(id, alert_type)
+ var/atom/movable/screen/alert/status_effect/A = owner.throw_alert(id, alert_type)
A.attached_effect = src //so the alert can reference us, if it needs to
linked_alert = A //so we can reference the alert, if we need to
if(duration > 0 || initial(tick_interval) > 0) //don't process if we don't care
@@ -89,12 +89,12 @@
// ALERT HOOK //
////////////////
-/obj/screen/alert/status_effect
+/atom/movable/screen/alert/status_effect
name = "Curse of Mundanity"
desc = "You don't feel any different..."
var/datum/status_effect/attached_effect
-/obj/screen/alert/status_effect/Destroy()
+/atom/movable/screen/alert/status_effect/Destroy()
if(attached_effect)
attached_effect.linked_alert = null
attached_effect = null
diff --git a/code/game/gamemodes/miniantags/demons/shadow_demon/shadow_demon.dm b/code/game/gamemodes/miniantags/demons/shadow_demon/shadow_demon.dm
index ae03f1889da..045203e0e47 100644
--- a/code/game/gamemodes/miniantags/demons/shadow_demon/shadow_demon.dm
+++ b/code/game/gamemodes/miniantags/demons/shadow_demon/shadow_demon.dm
@@ -164,7 +164,7 @@
if(lum_count > 0.2)
if(!thrown_alert)
thrown_alert = TRUE
- throw_alert("light", /obj/screen/alert/lightexposure)
+ throw_alert("light", /atom/movable/screen/alert/lightexposure)
alpha = 255
speed = initial(speed)
else
diff --git a/code/game/gamemodes/miniantags/guardian/types/assassin.dm b/code/game/gamemodes/miniantags/guardian/types/assassin.dm
index 33263f8fb5a..1e12643a117 100644
--- a/code/game/gamemodes/miniantags/guardian/types/assassin.dm
+++ b/code/game/gamemodes/miniantags/guardian/types/assassin.dm
@@ -12,8 +12,8 @@
var/toggle = FALSE
var/stealthcooldown = 0
var/default_stealth_cooldown = 10 SECONDS
- var/obj/screen/alert/canstealthalert
- var/obj/screen/alert/instealthalert
+ var/atom/movable/screen/alert/canstealthalert
+ var/atom/movable/screen/alert/instealthalert
/mob/living/simple_animal/hostile/guardian/assassin/Initialize(mapload, mob/living/host)
. = ..()
@@ -88,12 +88,12 @@
if(stealthcooldown <= world.time)
if(toggle)
if(!instealthalert)
- instealthalert = throw_alert("instealth", /obj/screen/alert/instealth)
+ instealthalert = throw_alert("instealth", /atom/movable/screen/alert/instealth)
clear_alert("canstealth")
canstealthalert = null
else
if(!canstealthalert)
- canstealthalert = throw_alert("canstealth", /obj/screen/alert/canstealth)
+ canstealthalert = throw_alert("canstealth", /atom/movable/screen/alert/canstealth)
clear_alert("instealth")
instealthalert = null
else
diff --git a/code/game/gamemodes/miniantags/guardian/types/charger.dm b/code/game/gamemodes/miniantags/guardian/types/charger.dm
index 4e293a639d2..fd5ae62d462 100644
--- a/code/game/gamemodes/miniantags/guardian/types/charger.dm
+++ b/code/game/gamemodes/miniantags/guardian/types/charger.dm
@@ -11,13 +11,13 @@
tech_fluff_string = "Boot sequence complete. Charge modules loaded. Holoparasite swarm online."
bio_fluff_string = "Your scarab swarm finishes mutating and stirs to life, ready to deal damage."
var/charging = FALSE
- var/obj/screen/alert/chargealert
+ var/atom/movable/screen/alert/chargealert
/mob/living/simple_animal/hostile/guardian/charger/Life()
. = ..()
if(ranged_cooldown <= world.time)
if(!chargealert)
- chargealert = throw_alert("charge", /obj/screen/alert/cancharge)
+ chargealert = throw_alert("charge", /atom/movable/screen/alert/cancharge)
else
clear_alert("charge")
chargealert = null
diff --git a/code/game/gamemodes/miniantags/morph/spells/ambush.dm b/code/game/gamemodes/miniantags/morph/spells/ambush.dm
index 2713a05beb0..36da7da9f92 100644
--- a/code/game/gamemodes/miniantags/morph/spells/ambush.dm
+++ b/code/game/gamemodes/miniantags/morph/spells/ambush.dm
@@ -40,7 +40,7 @@
id = "morph_ambush"
duration = -1
tick_interval = MORPH_AMBUSH_PERFECTION_TIME
- alert_type = /obj/screen/alert/status_effect/morph_ambush
+ alert_type = /atom/movable/screen/alert/status_effect/morph_ambush
/datum/status_effect/morph_ambush/tick()
STOP_PROCESSING(SSfastprocess, src)
@@ -49,7 +49,7 @@
linked_alert.name = "Perfect Ambush!"
linked_alert.desc = "You have prepared an ambush! Your disguise is flawless!"
-/obj/screen/alert/status_effect/morph_ambush
+/atom/movable/screen/alert/status_effect/morph_ambush
name = "Ambush!"
desc = "You have prepared an ambush!"
icon_state = "morph_ambush"
diff --git a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm
index 155cb343461..b56ff367786 100644
--- a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm
+++ b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm
@@ -502,7 +502,7 @@
// 2 * initial_rate - upgrade_level
rate += initial(health_loss_rate)
adjustHealth(rate)
- throw_alert(ALERT_CATEGORY_NOPOWER, /obj/screen/alert/pulse_nopower)
+ throw_alert(ALERT_CATEGORY_NOPOWER, /atom/movable/screen/alert/pulse_nopower)
if(regen_lock > 0)
if(--regen_lock == 0)
@@ -704,7 +704,7 @@
return
visible_message("[src] [pick("fizzles", "wails", "flails")] in anguish!")
playsound(get_turf(src), pick(hurt_sounds), 30, TRUE)
- throw_alert(ALERT_CATEGORY_NOREGEN, /obj/screen/alert/pulse_noregen)
+ throw_alert(ALERT_CATEGORY_NOREGEN, /atom/movable/screen/alert/pulse_noregen)
switch(severity)
if(EMP_LIGHT)
adjustHealth(round(max(initial(health) / 4, round(maxHealth / 8))))
@@ -843,12 +843,12 @@
cell_location.update_icon() //update power meters and such
cell_to_charge.update_icon()
-/obj/screen/alert/pulse_nopower
+/atom/movable/screen/alert/pulse_nopower
name = "No Power"
desc = "You are not connected to a cable or machine and are losing health!"
icon_state = "pd_nopower"
-/obj/screen/alert/pulse_noregen
+/atom/movable/screen/alert/pulse_noregen
name = "Regeneration Stalled"
desc = "You've been EMP'd and cannot regenerate health!"
icon_state = "pd_noregen"
diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm
index 74b672babc5..e983c7ed57f 100644
--- a/code/game/gamemodes/wizard/soulstone.dm
+++ b/code/game/gamemodes/wizard/soulstone.dm
@@ -144,7 +144,7 @@
SEND_SOUND(player_client, sound('sound/misc/notice2.ogg'))
window_flash(player_client)
- var/obj/screen/alert/notify_soulstone/A = player_mob.throw_alert("\ref[src]_soulstone_thingy", /obj/screen/alert/notify_soulstone)
+ var/atom/movable/screen/alert/notify_soulstone/A = player_mob.throw_alert("\ref[src]_soulstone_thingy", /atom/movable/screen/alert/notify_soulstone)
if(player_client.prefs && player_client.prefs.UI_style)
A.icon = ui_style2icon(player_client.prefs.UI_style)
diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm
index dcd66b06fba..e018440008f 100644
--- a/code/game/machinery/camera/camera.dm
+++ b/code/game/machinery/camera/camera.dm
@@ -390,7 +390,7 @@
/obj/machinery/camera/get_remote_view_fullscreens(mob/user)
if(view_range == short_range) //unfocused
- user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 2)
+ user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 2)
/obj/machinery/camera/update_remote_sight(mob/living/user)
if(isXRay() && isAI(user))
diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm
index 792ce397af4..bd648b91102 100644
--- a/code/game/machinery/computer/camera_advanced.dm
+++ b/code/game/machinery/computer/camera_advanced.dm
@@ -206,9 +206,9 @@
var/obj/machinery/camera/final = T[camera]
playsound(origin, "terminal_type", 25, 0)
if(final)
- playsound(origin, 'sound/machines/terminal_prompt_confirm.ogg', 25, 0)
+ playsound(origin, 'sound/machines/terminal_prompt_confirm.ogg', 25, FALSE)
remote_eye.setLoc(get_turf(final))
- C.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/noise)
+ C.overlay_fullscreen("flash", /atom/movable/screen/fullscreen/flash/noise)
C.clear_fullscreen("flash", 3) //Shorter flash than normal since it's an ~~advanced~~ console!
else
- playsound(origin, 'sound/machines/terminal_prompt_deny.ogg', 25, 0)
+ playsound(origin, 'sound/machines/terminal_prompt_deny.ogg', 25, FALSE)
diff --git a/code/game/machinery/computer/camera_console.dm b/code/game/machinery/computer/camera_console.dm
index 18cf4997b35..046d2445b44 100644
--- a/code/game/machinery/computer/camera_console.dm
+++ b/code/game/machinery/computer/camera_console.dm
@@ -15,10 +15,10 @@
// Stuff needed to render the map
var/map_name
var/const/default_map_size = 15
- var/obj/screen/map_view/cam_screen
+ var/atom/movable/screen/map_view/cam_screen
/// All the plane masters that need to be applied.
var/list/cam_plane_masters
- var/obj/screen/background/cam_background
+ var/atom/movable/screen/background/cam_background
// Parent object this camera is assigned to. Used for camera bugs
var/atom/movable/parent
@@ -39,8 +39,8 @@
cam_screen.del_on_map_removal = FALSE
cam_screen.screen_loc = "[map_name]:1,1"
cam_plane_masters = list()
- for(var/plane in subtypesof(/obj/screen/plane_master))
- var/obj/screen/instance = new plane()
+ for(var/plane in subtypesof(/atom/movable/screen/plane_master))
+ var/atom/movable/screen/instance = new plane()
instance.assigned_map = map_name
instance.del_on_map_removal = FALSE
instance.screen_loc = "[map_name]:CENTER"
diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm
index 39e01428a41..211400fcef2 100644
--- a/code/game/machinery/computer/law.dm
+++ b/code/game/machinery/computer/law.dm
@@ -94,10 +94,10 @@
/// pushes an alert to the AI and its borgs about the law changes
/obj/machinery/computer/aiupload/proc/alert_silicons()
current.show_laws()
- current.throw_alert("newlaw", /obj/screen/alert/newlaw)
+ current.throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
for(var/mob/living/silicon/robot/borg in current.connected_robots)
borg.cmd_show_laws()
- borg.throw_alert("newlaw", /obj/screen/alert/newlaw)
+ borg.throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
/obj/machinery/computer/aiupload/attack_hand(mob/user)
if(stat & NOPOWER)
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 3af23927e21..61045970526 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -329,7 +329,7 @@
if(move_type & (MECHAMOVE_RAND | MECHAMOVE_STEP) && occupant)
var/obj/machinery/atmospherics/unary/portables_connector/possible_port = locate(/obj/machinery/atmospherics/unary/portables_connector) in loc
if(possible_port)
- var/obj/screen/alert/mech_port_available/A = occupant.throw_alert("mechaport", /obj/screen/alert/mech_port_available)
+ var/atom/movable/screen/alert/mech_port_available/A = occupant.throw_alert("mechaport", /atom/movable/screen/alert/mech_port_available)
if(A)
A.target = possible_port
else
@@ -1059,10 +1059,10 @@
if(occupant)
occupant.clear_alert("mechaport")
- occupant.throw_alert("mechaport_d", /obj/screen/alert/mech_port_disconnect)
+ occupant.throw_alert("mechaport_d", /atom/movable/screen/alert/mech_port_disconnect)
log_message("Connected to gas port.")
- return 1
+ return TRUE
/obj/mecha/proc/disconnect()
if(!connected_port)
@@ -1167,9 +1167,9 @@
else if(!hasInternalDamage())
SEND_SOUND(occupant, sound(nominalsound, volume = 50))
if(state)
- H.throw_alert("locked", /obj/screen/alert/mech_maintenance)
+ H.throw_alert("locked", /atom/movable/screen/alert/mech_maintenance)
if(connected_port)
- H.throw_alert("mechaport_d", /obj/screen/alert/mech_port_disconnect)
+ H.throw_alert("mechaport_d", /atom/movable/screen/alert/mech_port_disconnect)
return TRUE
else
return FALSE
@@ -1394,20 +1394,20 @@
if(0.75 to INFINITY)
occupant.clear_alert("charge")
if(0.5 to 0.75)
- occupant.throw_alert("charge", /obj/screen/alert/mech_lowcell, 1)
+ occupant.throw_alert("charge", /atom/movable/screen/alert/mech_lowcell, 1)
if(0.25 to 0.5)
- occupant.throw_alert("charge", /obj/screen/alert/mech_lowcell, 2)
+ occupant.throw_alert("charge", /atom/movable/screen/alert/mech_lowcell, 2)
if(power_warned)
power_warned = FALSE
if(0.01 to 0.25)
- occupant.throw_alert("charge", /obj/screen/alert/mech_lowcell, 3)
+ occupant.throw_alert("charge", /atom/movable/screen/alert/mech_lowcell, 3)
if(!power_warned)
SEND_SOUND(occupant, sound(lowpowersound, volume = 50))
power_warned = TRUE
else
- occupant.throw_alert("charge", /obj/screen/alert/mech_emptycell)
+ occupant.throw_alert("charge", /atom/movable/screen/alert/mech_emptycell)
else
- occupant.throw_alert("charge", /obj/screen/alert/mech_nocell)
+ occupant.throw_alert("charge", /atom/movable/screen/alert/mech_nocell)
/obj/mecha/proc/reset_icon()
if(initial_icon)
diff --git a/code/game/mecha/mecha_topic.dm b/code/game/mecha/mecha_topic.dm
index 24352468fe4..d3cb66f5e46 100644
--- a/code/game/mecha/mecha_topic.dm
+++ b/code/game/mecha/mecha_topic.dm
@@ -331,7 +331,7 @@
state = 1
to_chat(user, "The securing bolts are now exposed.")
if(occupant)
- occupant.throw_alert("locked", /obj/screen/alert/mech_maintenance)
+ occupant.throw_alert("locked", /atom/movable/screen/alert/mech_maintenance)
else if(state==1)
state = 0
to_chat(user, "The securing bolts are now hidden.")
diff --git a/code/game/objects/buckling.dm b/code/game/objects/buckling.dm
index d6496b0f723..9c82f3087b6 100644
--- a/code/game/objects/buckling.dm
+++ b/code/game/objects/buckling.dm
@@ -90,7 +90,7 @@
M.setDir(dir)
buckled_mobs |= M
ADD_TRAIT(M, TRAIT_IMMOBILIZED, BUCKLING_TRAIT)
- M.throw_alert("buckled", /obj/screen/alert/restrained/buckled)
+ M.throw_alert("buckled", /atom/movable/screen/alert/restrained/buckled)
post_buckle_mob(M)
SEND_SIGNAL(src, COMSIG_MOVABLE_BUCKLE, M, force)
return TRUE
diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm
index c66d56f2eaa..1519d002eea 100644
--- a/code/game/objects/items/weapons/holy_weapons.dm
+++ b/code/game/objects/items/weapons/holy_weapons.dm
@@ -372,7 +372,7 @@
/datum/hud/sword/New(mob/user)
..()
- mymob.healths = new /obj/screen/healths()
+ mymob.healths = new /atom/movable/screen/healths()
infodisplay += mymob.healths
/mob/living/simple_animal/shade/sword/ClickOn(atom/A, params)
diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm
index a51a93e365f..cf5b79d57c1 100644
--- a/code/game/objects/items/weapons/storage/belt.dm
+++ b/code/game/objects/items/weapons/storage/belt.dm
@@ -61,7 +61,7 @@
/obj/item/storage/belt/MouseDrop(obj/over_object, src_location, over_location)
var/mob/M = usr
- if(!istype(over_object, /obj/screen))
+ if(!is_screen_atom(over_object))
return ..()
playsound(loc, "rustle", 50, TRUE, -5)
if(!M.restrained() && !M.stat && can_use())
diff --git a/code/game/objects/items/weapons/storage/internal.dm b/code/game/objects/items/weapons/storage/internal.dm
index cd73c8b7e10..ea22a318deb 100644
--- a/code/game/objects/items/weapons/storage/internal.dm
+++ b/code/game/objects/items/weapons/storage/internal.dm
@@ -37,10 +37,10 @@
if(over_object == user && Adjacent(user)) // this must come before the screen objects only block
open(user)
- return 0
+ return FALSE
- if(!istype(over_object, /obj/screen))
- return 1
+ if(!is_screen_atom(over_object))
+ return TRUE
//makes sure master_item is equipped before putting it in hand, so that we can't drag it into our hand from miles away.
//there's got to be a better way of doing this...
diff --git a/code/game/objects/items/weapons/storage/storage_base.dm b/code/game/objects/items/weapons/storage/storage_base.dm
index b0cde0fb715..d929b202cc8 100644
--- a/code/game/objects/items/weapons/storage/storage_base.dm
+++ b/code/game/objects/items/weapons/storage/storage_base.dm
@@ -26,8 +26,8 @@
var/max_combined_w_class = 14
/// The number of storage slots in this container.
var/storage_slots = 7
- var/obj/screen/storage/boxes = null
- var/obj/screen/close/closer = null
+ var/atom/movable/screen/storage/boxes = null
+ var/atom/movable/screen/close/closer = null
/// Set this to make it possible to use this item in an inverse way, so you can have the item in your hand and click items on the floor to pick them up.
var/use_to_pickup = FALSE
@@ -59,14 +59,14 @@
populate_contents()
- boxes = new /obj/screen/storage()
+ boxes = new /atom/movable/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 = new /atom/movable/screen/close()
closer.master = src
closer.icon_state = "backpack_close"
closer.layer = ABOVE_HUD_LAYER
@@ -136,7 +136,7 @@
update_icon() // For content-sensitive icons
return
- if(!(istype(over_object, /obj/screen)))
+ if(!is_screen_atom(over_object))
return ..()
if(!(loc == M) || (loc && loc.loc == M))
return
diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm
index 0e5146890c7..9acb5572918 100644
--- a/code/game/objects/structures/crates_lockers/closets.dm
+++ b/code/game/objects/structures/crates_lockers/closets.dm
@@ -233,7 +233,7 @@
/obj/structure/closet/MouseDrop_T(atom/movable/O, mob/living/user)
..()
- if(istype(O, /obj/screen)) //fix for HUD elements making their way into the world -Pete
+ if(is_screen_atom(O)) //fix for HUD elements making their way into the world -Pete
return
if(O.loc == user)
return
@@ -371,7 +371,7 @@
/obj/structure/closet/get_remote_view_fullscreens(mob/user)
if(user.stat == DEAD || !(user.sight & (SEEOBJS|SEEMOBS)))
- user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 1)
+ user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 1)
/obj/structure/closet/ex_act(severity)
for(var/atom/A in contents)
diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm
index e7281879e28..5d80c18fe1a 100644
--- a/code/game/objects/structures/morgue.dm
+++ b/code/game/objects/structures/morgue.dm
@@ -241,7 +241,7 @@
/obj/structure/morgue/get_remote_view_fullscreens(mob/user)
if(user.stat == DEAD || !(user.sight & (SEEOBJS|SEEMOBS)))
- user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 2)
+ user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 2)
/*
* Morgue tray
@@ -534,7 +534,7 @@ GLOBAL_LIST_EMPTY(crematoriums)
/obj/structure/crematorium/get_remote_view_fullscreens(mob/user)
if(user.stat == DEAD || !(user.sight & (SEEOBJS|SEEMOBS)))
- user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 2)
+ user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 2)
/*
* Crematorium tray
diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm
index 63eaf9932be..f3bd37e0600 100644
--- a/code/game/objects/structures/safe.dm
+++ b/code/game/objects/structures/safe.dm
@@ -359,13 +359,13 @@ GLOBAL_LIST_EMPTY(safes)
drill.song.start_playing(driller)
notify_ghosts("Security assault in progress in [get_area(src)]!", enter_link="(Click to jump to!)", source = src, action = NOTIFY_FOLLOW)
for(var/mob/dead/observer/O in GLOB.player_list)
- O.overlay_fullscreen("payback", /obj/screen/fullscreen/payback, 0)
+ O.overlay_fullscreen("payback", /atom/movable/screen/fullscreen/payback, 0)
addtimer(CALLBACK(src, PROC_REF(ghost_payback_phase_2)), 2.7 SECONDS)
/obj/structure/safe/proc/ghost_payback_phase_2()
for(var/mob/dead/observer/O in GLOB.player_list)
O.clear_fullscreen("payback")
- O.overlay_fullscreen("payback", /obj/screen/fullscreen/payback, 1)
+ O.overlay_fullscreen("payback", /atom/movable/screen/fullscreen/payback, 1)
addtimer(CALLBACK(src, PROC_REF(clear_payback)), 2 MINUTES)
/obj/structure/safe/proc/clear_payback()
diff --git a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm
index 10a43fe214d..0c3dd3edabc 100644
--- a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm
+++ b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm
@@ -75,7 +75,7 @@
if(istype(hugger_mask) && !hugger_mask.sterile && (locate(/obj/item/organ/internal/body_egg/alien_embryo) in buckled_mob.internal_organs))
if(user && !isalien(user))
return
- buckled_mob.throw_alert("ghost_nest", /obj/screen/alert/ghost)
+ buckled_mob.throw_alert("ghost_nest", /atom/movable/screen/alert/ghost)
to_chat(buckled_mob, "You may now ghost, you keep respawnability in this state. You will be alerted when you're removed from the nest.")
/obj/structure/bed/nest/post_buckle_mob(mob/living/M)
diff --git a/code/modules/antagonists/vampire/vamp_datum.dm b/code/modules/antagonists/vampire/vamp_datum.dm
index 3b5b91c81a0..d5a096bcef5 100644
--- a/code/modules/antagonists/vampire/vamp_datum.dm
+++ b/code/modules/antagonists/vampire/vamp_datum.dm
@@ -260,7 +260,7 @@
if(owner.current.hud_used)
var/datum/hud/hud = owner.current.hud_used
if(!hud.vampire_blood_display)
- hud.vampire_blood_display = new /obj/screen()
+ hud.vampire_blood_display = new /atom/movable/screen()
hud.vampire_blood_display.name = "Usable Blood"
hud.vampire_blood_display.icon_state = "blood_display"
hud.vampire_blood_display.screen_loc = "WEST:6,CENTER-1:15"
diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
index f35ceb6ef5d..f9867a8c621 100644
--- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
+++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
@@ -482,7 +482,7 @@
return
/obj/machinery/atmospherics/unary/cryo_cell/get_remote_view_fullscreens(mob/user)
- user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 1)
+ user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 1)
/obj/machinery/atmospherics/unary/cryo_cell/update_remote_sight(mob/living/user)
return //we don't see the pipe network while inside cryo.
diff --git a/code/modules/buildmode/buildmode.dm b/code/modules/buildmode/buildmode.dm
index ce7fe813a6f..0035bfbb491 100644
--- a/code/modules/buildmode/buildmode.dm
+++ b/code/modules/buildmode/buildmode.dm
@@ -12,10 +12,10 @@
var/switch_state = BM_SWITCHSTATE_NONE
var/switch_width = 5
// modeswitch UI
- var/obj/screen/buildmode/mode/modebutton
+ var/atom/movable/screen/buildmode/mode/modebutton
var/list/modeswitch_buttons = list()
// dirswitch UI
- var/obj/screen/buildmode/bdir/dirbutton
+ var/atom/movable/screen/buildmode/bdir/dirbutton
var/list/dirswitch_buttons = list()
/datum/click_intercept/buildmode/New()
@@ -32,23 +32,23 @@
/datum/click_intercept/buildmode/create_buttons()
// keep a reference so we can update it upon mode switch
- modebutton = new /obj/screen/buildmode/mode(src)
+ modebutton = new /atom/movable/screen/buildmode/mode(src)
buttons += modebutton
- buttons += new /obj/screen/buildmode/help(src)
+ buttons += new /atom/movable/screen/buildmode/help(src)
// keep a reference so we can update it upon dir switch
- dirbutton = new /obj/screen/buildmode/bdir(src)
+ dirbutton = new /atom/movable/screen/buildmode/bdir(src)
buttons += dirbutton
- buttons += new /obj/screen/buildmode/quit(src)
+ buttons += new /atom/movable/screen/buildmode/quit(src)
// build the list of modeswitching buttons
- build_options_grid(subtypesof(/datum/buildmode_mode), modeswitch_buttons, /obj/screen/buildmode/modeswitch)
- build_options_grid(list(SOUTH,EAST,WEST,NORTH,NORTHWEST), dirswitch_buttons, /obj/screen/buildmode/dirswitch)
+ build_options_grid(subtypesof(/datum/buildmode_mode), modeswitch_buttons, /atom/movable/screen/buildmode/modeswitch)
+ build_options_grid(list(SOUTH,EAST,WEST,NORTH,NORTHWEST), dirswitch_buttons, /atom/movable/screen/buildmode/dirswitch)
/datum/click_intercept/buildmode/proc/build_options_grid(list/elements, list/buttonslist, buttontype)
var/pos_idx = 0
for(var/thing in elements)
var/x = pos_idx % switch_width
var/y = FLOOR(pos_idx / switch_width, 1)
- var/obj/screen/buildmode/B = new buttontype(src, thing)
+ var/atom/movable/screen/buildmode/B = new buttontype(src, thing)
// this stuff is equivalent to the commented out line for 511 compat
// B.screen_loc = "NORTH-[(1 + 0.5 + y*1.5)],WEST+[0.5 + x*1.5]"
B.screen_loc = "NORTH-[1 + FLOOR(0.5 + 1.5*y, 1) + ((y + 1) % 2)]:[16*((y + 1) % 2)],WEST+[FLOOR(0.5 + 1.5*x, 1)]:[16*((x + 1) % 2)]"
diff --git a/code/modules/buildmode/buildmode_hud.dm b/code/modules/buildmode/buildmode_hud.dm
index 7c18de6be90..3c26c03be6c 100644
--- a/code/modules/buildmode/buildmode_hud.dm
+++ b/code/modules/buildmode/buildmode_hud.dm
@@ -1,22 +1,22 @@
-/obj/screen/buildmode
+/atom/movable/screen/buildmode
icon = 'icons/misc/buildmode.dmi'
var/datum/click_intercept/buildmode/bd
plane = HUD_PLANE_BUILDMODE
-/obj/screen/buildmode/New(bld)
+/atom/movable/screen/buildmode/New(bld)
bd = bld
return ..()
-/obj/screen/buildmode/Destroy()
+/atom/movable/screen/buildmode/Destroy()
bd = null
return ..()
-/obj/screen/buildmode/mode
+/atom/movable/screen/buildmode/mode
name = "Toggle Mode"
icon_state = "buildmode_basic"
screen_loc = "NORTH,WEST"
-/obj/screen/buildmode/mode/Click(location, control, params)
+/atom/movable/screen/buildmode/mode/Click(location, control, params)
var/list/pa = params2list(params)
if(pa.Find("left"))
@@ -26,64 +26,64 @@
update_icon()
return TRUE
-/obj/screen/buildmode/mode/update_icon_state()
+/atom/movable/screen/buildmode/mode/update_icon_state()
icon_state = bd.mode.get_button_iconstate()
-/obj/screen/buildmode/help
+/atom/movable/screen/buildmode/help
icon_state = "buildhelp"
screen_loc = "NORTH,WEST+1"
name = "Buildmode Help"
-/obj/screen/buildmode/help/Click()
+/atom/movable/screen/buildmode/help/Click()
bd.mode.show_help(usr)
return TRUE
-/obj/screen/buildmode/bdir
+/atom/movable/screen/buildmode/bdir
icon_state = "build"
screen_loc = "NORTH,WEST+2"
name = "Change Dir"
-/obj/screen/buildmode/bdir/update_icon(updates=UPDATE_ICON_STATE)
+/atom/movable/screen/buildmode/bdir/update_icon(updates=UPDATE_ICON_STATE)
dir = bd.build_dir
..()
-/obj/screen/buildmode/bdir/Click()
+/atom/movable/screen/buildmode/bdir/Click()
bd.toggle_dirswitch()
update_icon()
return TRUE
// used to switch between modes
-/obj/screen/buildmode/modeswitch
+/atom/movable/screen/buildmode/modeswitch
var/datum/buildmode_mode/modetype
-/obj/screen/buildmode/modeswitch/New(bld, mt)
+/atom/movable/screen/buildmode/modeswitch/New(bld, mt)
modetype = mt
icon_state = "buildmode_[initial(modetype.key)]"
name = initial(modetype.key)
return ..(bld)
-/obj/screen/buildmode/modeswitch/Click()
+/atom/movable/screen/buildmode/modeswitch/Click()
bd.change_mode(modetype)
return TRUE
// used to switch between dirs
-/obj/screen/buildmode/dirswitch
+/atom/movable/screen/buildmode/dirswitch
icon_state = "build"
-/obj/screen/buildmode/dirswitch/New(bld, newdir)
+/atom/movable/screen/buildmode/dirswitch/New(bld, newdir)
dir = newdir
name = dir2text(dir)
return ..(bld)
-/obj/screen/buildmode/dirswitch/Click()
+/atom/movable/screen/buildmode/dirswitch/Click()
bd.change_dir(dir)
return TRUE
-/obj/screen/buildmode/quit
+/atom/movable/screen/buildmode/quit
icon_state = "buildquit"
screen_loc = "NORTH,WEST+3"
name = "Quit Buildmode"
-/obj/screen/buildmode/quit/Click()
+/atom/movable/screen/buildmode/quit/Click()
bd.quit()
return TRUE
diff --git a/code/modules/client/client_defines.dm b/code/modules/client/client_defines.dm
index 390f425611c..1cb3985bae6 100644
--- a/code/modules/client/client_defines.dm
+++ b/code/modules/client/client_defines.dm
@@ -56,7 +56,7 @@
preload_rsc = 0 // This is 0 so we can set it to an URL once the player logs in and have them download the resources from a different server.
- var/obj/screen/click_catcher/void
+ var/atom/movable/screen/click_catcher/void
var/ip_intel = "Disabled"
@@ -66,7 +66,7 @@
var/datum/tooltip/tooltips
// Overlay for showing debug info
- var/obj/screen/debugtextholder/debug_text_overlay
+ var/atom/movable/screen/debugtextholder/debug_text_overlay
/// Persistent storage for the flavour text of examined atoms.
var/list/description_holders = list()
diff --git a/code/modules/client/preference/link_processing.dm b/code/modules/client/preference/link_processing.dm
index 89481068704..01a8dacd8fc 100644
--- a/code/modules/client/preference/link_processing.dm
+++ b/code/modules/client/preference/link_processing.dm
@@ -1012,7 +1012,7 @@
if("thought_bubble")
toggles2 ^= PREFTOGGLE_2_THOUGHT_BUBBLE
if(length(parent?.screen))
- var/obj/screen/plane_master/point/PM = locate(/obj/screen/plane_master/point) in parent.screen
+ var/atom/movable/screen/plane_master/point/PM = locate(/atom/movable/screen/plane_master/point) in parent.screen
PM.backdrop(parent.mob)
if("be_special")
@@ -1092,7 +1092,7 @@
if("ambientocclusion")
toggles ^= PREFTOGGLE_AMBIENT_OCCLUSION
if(length(parent?.screen))
- var/obj/screen/plane_master/game_world/PM = locate(/obj/screen/plane_master/game_world) in parent.screen
+ var/atom/movable/screen/plane_master/game_world/PM = locate(/atom/movable/screen/plane_master/game_world) in parent.screen
PM.backdrop(parent.mob)
if("parallax")
diff --git a/code/modules/events/meteors_event.dm b/code/modules/events/meteors_event.dm
index 24ede06bf92..39a2f79c5a6 100644
--- a/code/modules/events/meteors_event.dm
+++ b/code/modules/events/meteors_event.dm
@@ -3,11 +3,11 @@
endWhen = 7
var/next_meteor = 6
var/waves = 1
- var/obj/screen/alert/augury/meteor/screen_alert
+ var/atom/movable/screen/alert/augury/meteor/screen_alert
/datum/event/meteor_wave/setup()
for(var/mob/dead/observer/O in GLOB.dead_mob_list)
- var/obj/screen/alert/augury/meteor/A = O.throw_alert("\ref[src]_augury", /obj/screen/alert/augury/meteor)
+ var/atom/movable/screen/alert/augury/meteor/A = O.throw_alert("\ref[src]_augury", /atom/movable/screen/alert/augury/meteor)
if(A)
screen_alert = A
@@ -23,7 +23,7 @@
/datum/event/meteor_wave/tick()
// keep observers updated with the alert
for(var/mob/dead/observer/O in GLOB.dead_mob_list)
- O.throw_alert("\ref[src]_augury", /obj/screen/alert/augury/meteor)
+ O.throw_alert("\ref[src]_augury", /atom/movable/screen/alert/augury/meteor)
if(waves && activeFor >= next_meteor)
INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(spawn_meteors), get_meteor_count(), get_meteors())
next_meteor += rand(15, 30) / severity
diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm
index eb3029bd4da..0093de60001 100644
--- a/code/modules/games/cards.dm
+++ b/code/modules/games/cards.dm
@@ -239,7 +239,7 @@
if(!ishuman(M))
return
- if(istype(over, /obj/screen))
+ if(is_screen_atom(over))
if(!remove_item_from_storage(get_turf(M)))
M.unEquip(src)
switch(over.name)
diff --git a/code/modules/hallucinations/effects/moderate.dm b/code/modules/hallucinations/effects/moderate.dm
index 187639a5cc5..3e8a8f883e9 100644
--- a/code/modules/hallucinations/effects/moderate.dm
+++ b/code/modules/hallucinations/effects/moderate.dm
@@ -15,19 +15,19 @@
duration = list(10 SECONDS, 25 SECONDS)
/// The possible alerts to be displayed. Key is alert type, value is alert category.
var/list/alerts = list(
- /obj/screen/alert/not_enough_oxy = "not_enough_oxy",
- /obj/screen/alert/not_enough_tox = "not_enough_tox",
- /obj/screen/alert/not_enough_co2 = "not_enough_co2",
- /obj/screen/alert/not_enough_nitro = "not_enough_nitro",
- /obj/screen/alert/too_much_oxy = "too_much_oxy",
- /obj/screen/alert/too_much_co2 = "too_much_co2",
- /obj/screen/alert/too_much_tox = "too_much_tox",
- /obj/screen/alert/hunger/fat = "nutrition",
- /obj/screen/alert/hunger/starving = "nutrition",
- /obj/screen/alert/hot = "temp",
- /obj/screen/alert/cold = "temp",
- /obj/screen/alert/highpressure = "pressure",
- /obj/screen/alert/lowpressure = "pressure",
+ /atom/movable/screen/alert/not_enough_oxy = "not_enough_oxy",
+ /atom/movable/screen/alert/not_enough_tox = "not_enough_tox",
+ /atom/movable/screen/alert/not_enough_co2 = "not_enough_co2",
+ /atom/movable/screen/alert/not_enough_nitro = "not_enough_nitro",
+ /atom/movable/screen/alert/too_much_oxy = "too_much_oxy",
+ /atom/movable/screen/alert/too_much_co2 = "too_much_co2",
+ /atom/movable/screen/alert/too_much_tox = "too_much_tox",
+ /atom/movable/screen/alert/hunger/fat = "nutrition",
+ /atom/movable/screen/alert/hunger/starving = "nutrition",
+ /atom/movable/screen/alert/hot = "temp",
+ /atom/movable/screen/alert/cold = "temp",
+ /atom/movable/screen/alert/highpressure = "pressure",
+ /atom/movable/screen/alert/lowpressure = "pressure",
)
/// Alert severities. Only needed for some alerts such as temperature or pressure. Key is alert category, value is severity.
var/list/severities = list(
diff --git a/code/modules/maptext_alerts/location_blurbs.dm b/code/modules/maptext_alerts/location_blurbs.dm
index b50b6b10130..050ca0a42ea 100644
--- a/code/modules/maptext_alerts/location_blurbs.dm
+++ b/code/modules/maptext_alerts/location_blurbs.dm
@@ -1,4 +1,4 @@
-/obj/screen/text/blurb
+/atom/movable/screen/text/blurb
maptext_height = 64
maptext_width = 512
screen_loc = "LEFT+1,BOTTOM+2"
@@ -33,7 +33,7 @@
var/background_a = 0
-/obj/screen/text/blurb/proc/show_to(list/client/viewers)
+/atom/movable/screen/text/blurb/proc/show_to(list/client/viewers)
if(!blurb_text || !viewers)
return
@@ -52,12 +52,12 @@
print_text()
if(hold_for)
- addtimer(CALLBACK(src, TYPE_PROC_REF(/obj/screen/text/blurb, hide_from), viewers), hold_for)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/movable/screen/text/blurb, hide_from), viewers), hold_for)
else
hide_from(viewers)
-/obj/screen/text/blurb/proc/get_text_style()
+/atom/movable/screen/text/blurb/proc/get_text_style()
PRIVATE_PROC(TRUE)
return {"\
@@ -69,25 +69,25 @@
color: [text_color];
"}
-/obj/screen/text/blurb/proc/hide_from(list/client/viewers)
+/atom/movable/screen/text/blurb/proc/hide_from(list/client/viewers)
PRIVATE_PROC(TRUE)
fade()
- addtimer(CALLBACK(src, TYPE_PROC_REF(/obj/screen/text/blurb, remove_from_viewers), viewers), fade_animation_duration)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/movable/screen/text/blurb, remove_from_viewers), viewers), fade_animation_duration)
-/obj/screen/text/blurb/proc/appear()
+/atom/movable/screen/text/blurb/proc/appear()
PRIVATE_PROC(TRUE)
animate(src, alpha = 255, time = appear_animation_duration)
-/obj/screen/text/blurb/proc/fade()
+/atom/movable/screen/text/blurb/proc/fade()
PRIVATE_PROC(TRUE)
animate(src, alpha = 0, time = fade_animation_duration)
-/obj/screen/text/blurb/proc/print_text()
+/atom/movable/screen/text/blurb/proc/print_text()
PRIVATE_PROC(TRUE)
var/text_style = get_text_style()
@@ -97,10 +97,10 @@
maptext += get_formatted_text_segment(text_style, segment_start, segment_end)
sleep(interval)
-/obj/screen/text/blurb/proc/get_formatted_text_segment(style, segment_start, segment_end)
+/atom/movable/screen/text/blurb/proc/get_formatted_text_segment(style, segment_start, segment_end)
return "[copytext_char(blurb_text, segment_start, segment_end)]"
-/obj/screen/text/blurb/proc/remove_from_viewers(list/client/viewers)
+/atom/movable/screen/text/blurb/proc/remove_from_viewers(list/client/viewers)
PRIVATE_PROC(TRUE)
for(var/client/viewer as anything in viewers)
@@ -116,7 +116,7 @@
return
SEND_SOUND(show_blurb_to, sound('sound/machines/typewriter.ogg'))
- var/obj/screen/text/blurb/location_blurb = new()
+ var/atom/movable/screen/text/blurb/location_blurb = new()
if(antag_check.antag_datums)
for(var/datum/antagonist/role)
if(role.custom_blurb())
@@ -146,7 +146,7 @@
if(!length(GLOB.clients))
return
- var/obj/screen/text/blurb/server_restart_blurb = new()
+ var/atom/movable/screen/text/blurb/server_restart_blurb = new()
server_restart_blurb.text_color = COLOR_RED
server_restart_blurb.blurb_text = "Round is restarting...\n[reason]"
server_restart_blurb.hold_for = 90 SECONDS
diff --git a/code/modules/maptext_alerts/text_blurbs.dm b/code/modules/maptext_alerts/text_blurbs.dm
index 5177e2e129a..285d39693c7 100644
--- a/code/modules/maptext_alerts/text_blurbs.dm
+++ b/code/modules/maptext_alerts/text_blurbs.dm
@@ -45,7 +45,7 @@
html_tags += list(html_tag, html_tag + 1, html_tag + 2, html_tag + 3)
html_tag = findtext(message, regex(""), html_tag + 3)
- var/obj/screen/text/T = new()
+ var/atom/movable/screen/text/T = new()
T.screen_loc = screen_position
switch(text_alignment)
if("center")
diff --git a/code/modules/martial_arts/martial.dm b/code/modules/martial_arts/martial.dm
index 17d04d3232f..e5fa16692b2 100644
--- a/code/modules/martial_arts/martial.dm
+++ b/code/modules/martial_arts/martial.dm
@@ -463,25 +463,25 @@
/obj/item/bostaff/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK)
if(HAS_TRAIT(src, TRAIT_WIELDED))
return ..()
- return 0
+ return FALSE
-/obj/screen/combo
+/atom/movable/screen/combo
icon_state = ""
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
screen_loc = ui_combo
layer = ABOVE_HUD_LAYER
var/streak
-/obj/screen/combo/proc/clear_streak()
+/atom/movable/screen/combo/proc/clear_streak()
cut_overlays()
streak = ""
icon_state = ""
-/obj/screen/combo/update_icon(updates, _streak)
+/atom/movable/screen/combo/update_icon(updates, _streak)
streak = _streak
return ..()
-/obj/screen/combo/update_overlays()
+/atom/movable/screen/combo/update_overlays()
. = list()
for(var/i in 1 to length(streak))
var/intent_text = copytext(streak, i, i + 1)
@@ -489,7 +489,7 @@
intent_icon.pixel_x = 16 * (i - 1) - 8 * length(streak)
. += intent_icon
-/obj/screen/combo/update_icon_state()
+/atom/movable/screen/combo/update_icon_state()
icon_state = ""
if(!streak)
return
diff --git a/code/modules/mining/lavaland/loot/tendril_loot.dm b/code/modules/mining/lavaland/loot/tendril_loot.dm
index 5c643f07398..fb565ec9893 100644
--- a/code/modules/mining/lavaland/loot/tendril_loot.dm
+++ b/code/modules/mining/lavaland/loot/tendril_loot.dm
@@ -66,9 +66,9 @@
return
if(!M.restrained() && !M.stat)
- playsound(loc, "rustle", 50, 1, -5)
+ playsound(loc, "rustle", 50, TRUE, -5)
- if(istype(over_object, /obj/screen/inventory/hand))
+ if(istype(over_object, /atom/movable/screen/inventory/hand))
if(!M.unEquip(src))
return
M.put_in_active_hand(src)
diff --git a/code/modules/mob/dead/observer/observer_base.dm b/code/modules/mob/dead/observer/observer_base.dm
index f766af39a43..07efb712c6f 100644
--- a/code/modules/mob/dead/observer/observer_base.dm
+++ b/code/modules/mob/dead/observer/observer_base.dm
@@ -314,7 +314,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
if(message)
to_chat(src, "[message]")
if(source)
- var/obj/screen/alert/A = throw_alert("\ref[source]_notify_cloning", /obj/screen/alert/notify_cloning)
+ var/atom/movable/screen/alert/A = throw_alert("\ref[source]_notify_cloning", /atom/movable/screen/alert/notify_cloning)
if(A)
if(client && client.prefs && client.prefs.UI_style)
A.icon = ui_style2icon(client.prefs.UI_style)
diff --git a/code/modules/mob/living/brain/MMI.dm b/code/modules/mob/living/brain/MMI.dm
index e48f38e341e..817b30b0cd9 100644
--- a/code/modules/mob/living/brain/MMI.dm
+++ b/code/modules/mob/living/brain/MMI.dm
@@ -200,7 +200,7 @@
mmi = null
return ..()
-/datum/action/generic/configure_mmi_radio/ApplyIcon(obj/screen/movable/action_button/current_button)
+/datum/action/generic/configure_mmi_radio/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
icon_icon = mmi.icon
button_icon_state = mmi.icon_state
..()
diff --git a/code/modules/mob/living/carbon/alien/alien_base.dm b/code/modules/mob/living/carbon/alien/alien_base.dm
index 97559889b95..c4a3b3ab08c 100644
--- a/code/modules/mob/living/carbon/alien/alien_base.dm
+++ b/code/modules/mob/living/carbon/alien/alien_base.dm
@@ -91,7 +91,7 @@
// +/- 50 degrees from 310.15K is the 'safe' zone, where no damage is dealt.
if(bodytemperature > 360.15)
//Body temperature is too hot.
- throw_alert("alien_fire", /obj/screen/alert/alien_fire)
+ throw_alert("alien_fire", /atom/movable/screen/alert/alien_fire)
switch(bodytemperature)
if(360 to 400)
apply_damage(HEAT_DAMAGE_LEVEL_1, BURN)
diff --git a/code/modules/mob/living/carbon/alien/alien_life.dm b/code/modules/mob/living/carbon/alien/alien_life.dm
index 4c13daa7af0..962971a4b21 100644
--- a/code/modules/mob/living/carbon/alien/alien_life.dm
+++ b/code/modules/mob/living/carbon/alien/alien_life.dm
@@ -15,7 +15,7 @@
if(Toxins_pp > tox_detect_threshold) // Detect toxins in air
add_plasma(breath.toxins * 250)
- throw_alert("alien_tox", /obj/screen/alert/alien_tox)
+ throw_alert("alien_tox", /atom/movable/screen/alert/alien_tox)
toxins_used = breath.toxins
diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid_update_icons.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid_update_icons.dm
index 70f37d83d21..f95bedded46 100644
--- a/code/modules/mob/living/carbon/alien/humanoid/humanoid_update_icons.dm
+++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid_update_icons.dm
@@ -72,7 +72,7 @@
/mob/living/carbon/alien/humanoid/update_inv_wear_suit()
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_OUTER_SUIT]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_OUTER_SUIT]
inv.update_icon()
if(wear_suit)
diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index 5a688ee701d..272b3a19001 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -361,7 +361,7 @@
if((E && (E.status & ORGAN_DEAD)) || !.)
return FALSE
-/mob/living/carbon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, laser_pointer = FALSE, type = /obj/screen/fullscreen/flash)
+/mob/living/carbon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, laser_pointer = FALSE, type = /atom/movable/screen/fullscreen/flash)
//Parent proc checks if a mob can_be_flashed()
. = ..()
@@ -658,7 +658,7 @@ GLOBAL_LIST_INIT(ventcrawl_machinery, list(/obj/machinery/atmospherics/unary/ven
return
/mob/living/carbon/throw_item(atom/target)
- if(!target || !isturf(loc) || istype(target, /obj/screen))
+ if(!target || !isturf(loc) || is_screen_atom(target))
throw_mode_off()
return
@@ -745,7 +745,7 @@ GLOBAL_LIST_INIT(ventcrawl_machinery, list(/obj/machinery/atmospherics/unary/ven
clear_alert("legcuffed")
if(!legcuffed)
return
- throw_alert("legcuffed", /obj/screen/alert/restrained/legcuffed, new_master = legcuffed)
+ throw_alert("legcuffed", /atom/movable/screen/alert/restrained/legcuffed, new_master = legcuffed)
if(m_intent != MOVE_INTENT_WALK)
m_intent = MOVE_INTENT_WALK
if(hud_used?.move_intent)
@@ -1052,7 +1052,7 @@ GLOBAL_LIST_INIT(ventcrawl_machinery, list(/obj/machinery/atmospherics/unary/ven
drop_r_hand()
drop_l_hand()
stop_pulling()
- throw_alert("handcuffed", /obj/screen/alert/restrained/handcuffed, new_master = handcuffed)
+ throw_alert("handcuffed", /atom/movable/screen/alert/restrained/handcuffed, new_master = handcuffed)
ADD_TRAIT(src, TRAIT_RESTRAINED, "handcuffed")
else
REMOVE_TRAIT(src, TRAIT_RESTRAINED, "handcuffed")
@@ -1275,9 +1275,9 @@ so that different stomachs can handle things in different ways VB*/
/mob/living/carbon/proc/update_tint()
var/tinttotal = get_total_tint()
if(tinttotal >= TINT_BLIND)
- overlay_fullscreen("tint", /obj/screen/fullscreen/blind)
+ overlay_fullscreen("tint", /atom/movable/screen/fullscreen/blind)
else if(tinttotal >= TINT_IMPAIR)
- overlay_fullscreen("tint", /obj/screen/fullscreen/impaired, 2)
+ overlay_fullscreen("tint", /atom/movable/screen/fullscreen/impaired, 2)
else
clear_fullscreen("tint", 0)
diff --git a/code/modules/mob/living/carbon/carbon_life.dm b/code/modules/mob/living/carbon/carbon_life.dm
index c5d4088cdf9..34df76d7067 100644
--- a/code/modules/mob/living/carbon/carbon_life.dm
+++ b/code/modules/mob/living/carbon/carbon_life.dm
@@ -112,7 +112,7 @@
//CRIT
if(!breath || (breath.total_moles() == 0) || !lungs)
adjustOxyLoss(1)
- throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy)
+ throw_alert("not_enough_oxy", /atom/movable/screen/alert/not_enough_oxy)
return FALSE
var/safe_oxy_min = 16
@@ -138,7 +138,7 @@
oxygen_used = breath.oxygen*ratio
else
adjustOxyLoss(3)
- throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy)
+ throw_alert("not_enough_oxy", /atom/movable/screen/alert/not_enough_oxy)
else //Enough oxygen
adjustOxyLoss(-5)
@@ -167,7 +167,7 @@
if(Toxins_partialpressure > safe_tox_max)
var/ratio = (breath.toxins/safe_tox_max) * 10
adjustToxLoss(clamp(ratio, MIN_TOXIC_GAS_DAMAGE, MAX_TOXIC_GAS_DAMAGE))
- throw_alert("too_much_tox", /obj/screen/alert/too_much_tox)
+ throw_alert("too_much_tox", /atom/movable/screen/alert/too_much_tox)
else
clear_alert("too_much_tox")
@@ -315,7 +315,7 @@
severity = 9
if(-INFINITY to -95)
severity = 10
- overlay_fullscreen("crit", /obj/screen/fullscreen/crit, severity)
+ overlay_fullscreen("crit", /atom/movable/screen/fullscreen/crit, severity)
else if(stat == CONSCIOUS)
if(check_death_method())
clear_fullscreen("crit")
@@ -336,7 +336,7 @@
severity = 6
if(45 to INFINITY)
severity = 7
- overlay_fullscreen("oxy", /obj/screen/fullscreen/oxy, severity)
+ overlay_fullscreen("oxy", /atom/movable/screen/fullscreen/oxy, severity)
else
clear_fullscreen("oxy")
@@ -352,7 +352,7 @@
if(45 to 70) severity = 4
if(70 to 85) severity = 5
if(85 to INFINITY) severity = 6
- overlay_fullscreen("brute", /obj/screen/fullscreen/brute, severity)
+ overlay_fullscreen("brute", /atom/movable/screen/fullscreen/brute, severity)
else
clear_fullscreen("brute")
diff --git a/code/modules/mob/living/carbon/carbon_update_icons.dm b/code/modules/mob/living/carbon/carbon_update_icons.dm
index 5399f6cb059..f174dd227ca 100644
--- a/code/modules/mob/living/carbon/carbon_update_icons.dm
+++ b/code/modules/mob/living/carbon/carbon_update_icons.dm
@@ -35,9 +35,9 @@
/mob/living/carbon/proc/update_hands_hud()
if(!hud_used)
return
- var/obj/screen/inventory/R = hud_used.inv_slots[SLOT_HUD_RIGHT_HAND]
+ var/atom/movable/screen/inventory/R = hud_used.inv_slots[SLOT_HUD_RIGHT_HAND]
R?.update_icon()
- var/obj/screen/inventory/L = hud_used.inv_slots[SLOT_HUD_LEFT_HAND]
+ var/atom/movable/screen/inventory/L = hud_used.inv_slots[SLOT_HUD_LEFT_HAND]
L?.update_icon()
/mob/living/carbon/update_inv_r_hand(ignore_cuffs)
@@ -64,7 +64,7 @@
/mob/living/carbon/update_inv_back()
if(client && hud_used && hud_used.inv_slots[SLOT_HUD_BACK])
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_BACK]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_BACK]
inv.update_icon()
if(back)
diff --git a/code/modules/mob/living/carbon/give.dm b/code/modules/mob/living/carbon/give.dm
index c9ccef9f1c0..d1ecf83ad18 100644
--- a/code/modules/mob/living/carbon/give.dm
+++ b/code/modules/mob/living/carbon/give.dm
@@ -32,16 +32,16 @@
/datum/status_effect/offering_item
id = "offering item"
duration = 10 SECONDS
- alert_type = /obj/screen/alert/status_effect/offering_item
+ alert_type = /atom/movable/screen/alert/status_effect/offering_item
/datum/status_effect/offering_item/on_creation(mob/living/new_owner, receiver_UID, item_UID)
. = ..()
- var/obj/screen/alert/status_effect/offering_item/offer = linked_alert
+ var/atom/movable/screen/alert/status_effect/offering_item/offer = linked_alert
offer.item_UID = item_UID
offer.receiver_UID = receiver_UID
-/obj/screen/alert/status_effect/offering_item
+/atom/movable/screen/alert/status_effect/offering_item
name = "Offering Item"
desc = "You're currently offering an item someone. Make sure to keep the item in your hand so they can accept it! Click to stop offering your item."
icon_state = "offering_item"
@@ -50,7 +50,7 @@
/// UID of the item being given.
var/item_UID
-/obj/screen/alert/status_effect/offering_item/Click(location, control, params)
+/atom/movable/screen/alert/status_effect/offering_item/Click(location, control, params)
var/mob/living/carbon/receiver = locateUID(receiver_UID)
var/mob/living/carbon/giver = attached_effect.owner
var/obj/item/I = locateUID(item_UID)
@@ -99,7 +99,7 @@
return
// We use UID() here so that the receiver can have more then one give request at one time.
// Otherwise, throwing a new "take item" alert would override any current one also named "take item".
- receiver.throw_alert("take item [I.UID()]", /obj/screen/alert/take_item, alert_args = list(user, receiver, I))
+ receiver.throw_alert("take item [I.UID()]", /atom/movable/screen/alert/take_item, alert_args = list(user, receiver, I))
item_offered = TRUE // TRUE so we don't give them the default chat message in Destroy.
to_chat(user, "You offer [I] to [receiver].")
qdel(src)
@@ -111,7 +111,7 @@
* Alert which appears for a user when another player is attempting to offer them an item.
* The user can click the alert to accept, or simply do nothing to not take the item.
*/
-/obj/screen/alert/take_item
+/atom/movable/screen/alert/take_item
name = "Take Item"
desc = "someone wants to hand you an item!"
icon_state = "template"
@@ -124,7 +124,7 @@
var/item_UID
-/obj/screen/alert/take_item/Initialize(mapload, mob/living/giver, mob/living/receiver, obj/item/I)
+/atom/movable/screen/alert/take_item/Initialize(mapload, mob/living/giver, mob/living/receiver, obj/item/I)
. = ..()
desc = "[giver] wants to hand you \a [I]. Click here to accept it!"
giver_UID = giver.UID()
@@ -138,13 +138,13 @@
RegisterSignal(giver, list(COMSIG_PARENT_QDELETING, SIGNAL_ADDTRAIT(TRAIT_HANDS_BLOCKED), COMSIG_CARBON_SWAP_HANDS), PROC_REF(cancel_give))
-/obj/screen/alert/take_item/Destroy()
+/atom/movable/screen/alert/take_item/Destroy()
var/mob/living/giver = locateUID(giver_UID)
giver.remove_status_effect(STATUS_EFFECT_OFFERING_ITEM)
return ..()
-/obj/screen/alert/take_item/proc/cancel_give()
+/atom/movable/screen/alert/take_item/proc/cancel_give()
SIGNAL_HANDLER
var/mob/living/giver = locateUID(giver_UID)
var/mob/living/receiver = locateUID(receiver_UID)
@@ -153,7 +153,7 @@
receiver.clear_alert("take item [item_UID]")
-/obj/screen/alert/take_item/Click(location, control, params)
+/atom/movable/screen/alert/take_item/Click(location, control, params)
var/mob/living/receiver = locateUID(receiver_UID)
if(receiver.stat != CONSCIOUS)
return
@@ -178,7 +178,7 @@
receiver.clear_alert("take item [item_UID]")
-/obj/screen/alert/take_item/do_timeout(mob/M, category)
+/atom/movable/screen/alert/take_item/do_timeout(mob/M, category)
var/mob/living/giver = locateUID(giver_UID)
var/mob/living/receiver = locateUID(receiver_UID)
// Make sure we're still nearby. We don't want to show a message if the giver not near us.
diff --git a/code/modules/mob/living/carbon/human/human_life.dm b/code/modules/mob/living/carbon/human/human_life.dm
index f4583c0c60e..b796502eaa3 100644
--- a/code/modules/mob/living/carbon/human/human_life.dm
+++ b/code/modules/mob/living/carbon/human/human_life.dm
@@ -148,13 +148,13 @@
switch(S.breathid)
if("o2")
- throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy)
+ throw_alert("not_enough_oxy", /atom/movable/screen/alert/not_enough_oxy)
if("tox")
- throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox)
+ throw_alert("not_enough_tox", /atom/movable/screen/alert/not_enough_tox)
if("co2") // currently unused
- throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2)
+ throw_alert("not_enough_co2", /atom/movable/screen/alert/not_enough_co2)
if("n2")
- throw_alert("not_enough_nitro", /obj/screen/alert/not_enough_nitro)
+ throw_alert("not_enough_nitro", /atom/movable/screen/alert/not_enough_nitro)
return FALSE
// USED IN DEATHWHISPERS
@@ -217,13 +217,13 @@
var/mult = dna.species.heatmod * physiology.heat_mod
if(bodytemperature >= dna.species.heat_level_1 && bodytemperature <= dna.species.heat_level_2)
- throw_alert("temp", /obj/screen/alert/hot, 1)
+ throw_alert("temp", /atom/movable/screen/alert/hot, 1)
take_overall_damage(burn=mult*HEAT_DAMAGE_LEVEL_1, updating_health = TRUE, used_weapon = "High Body Temperature")
if(bodytemperature > dna.species.heat_level_2 && bodytemperature <= dna.species.heat_level_3)
- throw_alert("temp", /obj/screen/alert/hot, 2)
+ throw_alert("temp", /atom/movable/screen/alert/hot, 2)
take_overall_damage(burn=mult*HEAT_DAMAGE_LEVEL_2, updating_health = TRUE, used_weapon = "High Body Temperature")
if(bodytemperature > dna.species.heat_level_3 && bodytemperature < INFINITY)
- throw_alert("temp", /obj/screen/alert/hot, 3)
+ throw_alert("temp", /atom/movable/screen/alert/hot, 3)
if(on_fire)
take_overall_damage(burn=mult*HEAT_DAMAGE_LEVEL_3, updating_health = TRUE, used_weapon = "Fire")
else
@@ -238,13 +238,13 @@
if(!istype(loc, /obj/machinery/atmospherics/unary/cryo_cell) && !(HAS_TRAIT(src, TRAIT_RESISTCOLD)))
var/mult = dna.species.coldmod * physiology.cold_mod
if(bodytemperature >= dna.species.cold_level_2 && bodytemperature <= dna.species.cold_level_1)
- throw_alert("temp", /obj/screen/alert/cold, 1)
+ throw_alert("temp", /atom/movable/screen/alert/cold, 1)
take_overall_damage(burn=mult*COLD_DAMAGE_LEVEL_1, updating_health = TRUE, used_weapon = "Low Body Temperature")
if(bodytemperature >= dna.species.cold_level_3 && bodytemperature < dna.species.cold_level_2)
- throw_alert("temp", /obj/screen/alert/cold, 2)
+ throw_alert("temp", /atom/movable/screen/alert/cold, 2)
take_overall_damage(burn=mult*COLD_DAMAGE_LEVEL_2, updating_health = TRUE, used_weapon = "Low Body Temperature")
if(bodytemperature > -INFINITY && bodytemperature < dna.species.cold_level_3)
- throw_alert("temp", /obj/screen/alert/cold, 3)
+ throw_alert("temp", /atom/movable/screen/alert/cold, 3)
take_overall_damage(burn=mult*COLD_DAMAGE_LEVEL_3, updating_health = TRUE, used_weapon = "Low Body Temperature")
else
clear_alert("temp")
@@ -262,21 +262,21 @@
if(!HAS_TRAIT(src, TRAIT_RESISTHIGHPRESSURE))
var/pressure_damage = min(((adjusted_pressure / dna.species.hazard_high_pressure) - 1) * PRESSURE_DAMAGE_COEFFICIENT , MAX_HIGH_PRESSURE_DAMAGE) * physiology.pressure_mod
take_overall_damage(brute=pressure_damage, updating_health = TRUE, used_weapon = "High Pressure")
- throw_alert("pressure", /obj/screen/alert/highpressure, 2)
+ throw_alert("pressure", /atom/movable/screen/alert/highpressure, 2)
else
clear_alert("pressure")
else if(adjusted_pressure >= dna.species.warning_high_pressure)
- throw_alert("pressure", /obj/screen/alert/highpressure, 1)
+ throw_alert("pressure", /atom/movable/screen/alert/highpressure, 1)
else if(adjusted_pressure >= dna.species.warning_low_pressure)
clear_alert("pressure")
else if(adjusted_pressure >= dna.species.hazard_low_pressure)
- throw_alert("pressure", /obj/screen/alert/lowpressure, 1)
+ throw_alert("pressure", /atom/movable/screen/alert/lowpressure, 1)
else
if(HAS_TRAIT(src, TRAIT_RESISTLOWPRESSURE))
clear_alert("pressure")
else
take_overall_damage(brute = LOW_PRESSURE_DAMAGE * physiology.pressure_mod, updating_health = TRUE, used_weapon = "Low Pressure")
- throw_alert("pressure", /obj/screen/alert/lowpressure, 2)
+ throw_alert("pressure", /atom/movable/screen/alert/lowpressure, 2)
///FIRE CODE
@@ -685,7 +685,7 @@
new_hunger += "/[dna.species.hunger_type]"
if(dna.species.hunger_level != new_hunger)
dna.species.hunger_level = new_hunger
- throw_alert("nutrition", "/obj/screen/alert/hunger/[new_hunger]", icon_override = dna.species.hunger_icon)
+ throw_alert("nutrition", "/atom/movable/screen/alert/hunger/[new_hunger]", icon_override = dna.species.hunger_icon)
/mob/living/carbon/human/handle_random_events()
// Puke if toxloss is too high
diff --git a/code/modules/mob/living/carbon/human/human_update_icons.dm b/code/modules/mob/living/carbon/human/human_update_icons.dm
index 355ddc11d8c..e0d6c8ac37f 100644
--- a/code/modules/mob/living/carbon/human/human_update_icons.dm
+++ b/code/modules/mob/living/carbon/human/human_update_icons.dm
@@ -573,7 +573,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_w_uniform()
remove_overlay(UNIFORM_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_JUMPSUIT]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_JUMPSUIT]
if(inv)
inv.update_icon()
@@ -650,7 +650,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_wear_id()
remove_overlay(ID_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_WEAR_ID]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_WEAR_ID]
if(inv)
inv.update_icon()
@@ -666,7 +666,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_gloves()
remove_overlay(GLOVES_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_GLOVES]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_GLOVES]
if(inv)
inv.update_icon()
@@ -706,7 +706,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
remove_overlay(OVER_MASK_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_GLASSES]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_GLASSES]
if(inv)
inv.update_icon()
@@ -744,12 +744,12 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_ears()
remove_overlay(EARS_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_LEFT_EAR]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_LEFT_EAR]
if(inv)
inv.update_icon()
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_RIGHT_EAR]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_RIGHT_EAR]
if(inv)
inv.update_icon()
@@ -792,7 +792,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_shoes()
remove_overlay(SHOES_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_SHOES]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_SHOES]
if(inv)
inv.update_icon()
@@ -828,7 +828,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_s_store()
remove_overlay(SUIT_STORE_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_SUIT_STORE]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_SUIT_STORE]
if(inv)
inv.update_icon()
@@ -850,7 +850,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
..()
remove_overlay(HEAD_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_HEAD]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_HEAD]
if(inv)
inv.update_icon()
@@ -879,7 +879,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_belt()
remove_overlay(BELT_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_BELT]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_BELT]
if(inv)
inv.update_icon()
@@ -905,7 +905,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_wear_suit()
remove_overlay(SUIT_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_OUTER_SUIT]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_OUTER_SUIT]
if(inv)
inv.update_icon()
@@ -949,7 +949,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_pockets()
if(client && hud_used)
- var/obj/screen/inventory/inv
+ var/atom/movable/screen/inventory/inv
inv = hud_used.inv_slots[SLOT_HUD_LEFT_STORE]
if(inv)
@@ -970,7 +970,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
/mob/living/carbon/human/update_inv_wear_pda()
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_WEAR_PDA]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_WEAR_PDA]
if(inv)
inv.update_icon()
@@ -982,7 +982,7 @@ GLOBAL_LIST_EMPTY(damage_icon_parts)
..()
remove_overlay(FACEMASK_LAYER)
if(client && hud_used)
- var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_WEAR_MASK]
+ var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HUD_WEAR_MASK]
if(inv)
inv.update_icon()
if(wear_mask && (istype(wear_mask, /obj/item/clothing/mask) || istype(wear_mask, /obj/item/clothing/accessory)))
diff --git a/code/modules/mob/living/carbon/human/human_update_status.dm b/code/modules/mob/living/carbon/human/human_update_status.dm
index 0c48d4b5fa1..855a3d39e74 100644
--- a/code/modules/mob/living/carbon/human/human_update_status.dm
+++ b/code/modules/mob/living/carbon/human/human_update_status.dm
@@ -13,7 +13,7 @@
/mob/living/carbon/human/update_nearsighted_effects()
var/obj/item/clothing/glasses/G = glasses
if(HAS_TRAIT(src, TRAIT_NEARSIGHT) && (!istype(G) || !G.prescription))
- overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1)
+ overlay_fullscreen("nearsighted", /atom/movable/screen/fullscreen/impaired, 1)
else
clear_fullscreen("nearsighted")
diff --git a/code/modules/mob/living/carbon/human/species/diona_species.dm b/code/modules/mob/living/carbon/human/species/diona_species.dm
index b25bfe9e191..e68698ad449 100644
--- a/code/modules/mob/living/carbon/human/species/diona_species.dm
+++ b/code/modules/mob/living/carbon/human/species/diona_species.dm
@@ -93,7 +93,7 @@
if(light_amount > 0)
H.clear_alert("nolight")
else
- H.throw_alert("nolight", /obj/screen/alert/nolight)
+ H.throw_alert("nolight", /atom/movable/screen/alert/nolight)
if(!is_vamp)
H.adjust_nutrition(light_amount * 10)
diff --git a/code/modules/mob/living/carbon/human/species/golem.dm b/code/modules/mob/living/carbon/human/species/golem.dm
index 554048b09f3..ac5c1a5f8e4 100644
--- a/code/modules/mob/living/carbon/human/species/golem.dm
+++ b/code/modules/mob/living/carbon/human/species/golem.dm
@@ -313,7 +313,7 @@
if(light_amount > 0)
H.clear_alert("nolight")
else
- H.throw_alert("nolight", /obj/screen/alert/nolight)
+ H.throw_alert("nolight", /atom/movable/screen/alert/nolight)
H.adjust_nutrition(light_amount * 10)
if(H.nutrition > NUTRITION_LEVEL_ALMOST_FULL)
H.set_nutrition(NUTRITION_LEVEL_ALMOST_FULL)
diff --git a/code/modules/mob/living/carbon/human/species/shadow.dm b/code/modules/mob/living/carbon/human/species/shadow.dm
index 660c0f4dafb..24ff15da201 100644
--- a/code/modules/mob/living/carbon/human/species/shadow.dm
+++ b/code/modules/mob/living/carbon/human/species/shadow.dm
@@ -34,9 +34,9 @@
light_amount = T.get_lumcount() * 10
if(light_amount > 2) //if there's enough light, start dying
- H.take_overall_damage(1,1)
- H.throw_alert("lightexposure", /obj/screen/alert/lightexposure)
+ H.take_overall_damage(1, 1)
+ H.throw_alert("lightexposure", /atom/movable/screen/alert/lightexposure)
else if(light_amount < 2) //heal in the dark
- H.heal_overall_damage(1,1)
+ H.heal_overall_damage(1, 1)
H.clear_alert("lightexposure")
..()
diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm
index 9d8e832a937..bb28b7d0ab7 100644
--- a/code/modules/mob/living/living.dm
+++ b/code/modules/mob/living/living.dm
@@ -799,7 +799,7 @@
if(has_gravity)
clear_alert("weightless")
else
- throw_alert("weightless", /obj/screen/alert/weightless)
+ throw_alert("weightless", /atom/movable/screen/alert/weightless)
if(!flying)
float(!has_gravity)
@@ -829,7 +829,7 @@
return TRUE
//called when the mob receives a bright flash
-/mob/living/proc/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, laser_pointer = FALSE, type = /obj/screen/fullscreen/flash)
+/mob/living/proc/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, laser_pointer = FALSE, type = /atom/movable/screen/fullscreen/flash)
if(can_be_flashed(intensity, override_blindness_check))
overlay_fullscreen("flash", type)
addtimer(CALLBACK(src, PROC_REF(clear_fullscreen), "flash", 25), 25)
@@ -1146,7 +1146,7 @@
/mob/living/proc/set_forced_look(atom/A, track = FALSE)
forced_look = track ? A.UID() : get_cardinal_dir(src, A)
to_chat(src, "You are now facing [track ? A : dir2text(forced_look)]. To cancel this, shift-middleclick yourself.")
- throw_alert("direction_lock", /obj/screen/alert/direction_lock)
+ throw_alert("direction_lock", /atom/movable/screen/alert/direction_lock)
/**
* Clears the mob's direction lock if enabled.
diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm
index c1dd773bd43..0ea4ff1bb98 100644
--- a/code/modules/mob/living/living_defense.dm
+++ b/code/modules/mob/living/living_defense.dm
@@ -163,7 +163,7 @@
on_fire = TRUE
visible_message("[src] catches fire!", "You're set on fire!")
set_light(light_range + 3,l_color = "#ED9200")
- throw_alert("fire", /obj/screen/alert/fire)
+ throw_alert("fire", /atom/movable/screen/alert/fire)
update_fire()
SEND_SIGNAL(src, COMSIG_LIVING_IGNITED)
return TRUE
diff --git a/code/modules/mob/living/living_life.dm b/code/modules/mob/living/living_life.dm
index 39f9fd35f7e..59b1b5a7c04 100644
--- a/code/modules/mob/living/living_life.dm
+++ b/code/modules/mob/living/living_life.dm
@@ -173,6 +173,6 @@
healths.icon_state = "health7"
severity = 6
if(severity > 0)
- overlay_fullscreen("brute", /obj/screen/fullscreen/brute, severity)
+ overlay_fullscreen("brute", /atom/movable/screen/fullscreen/brute, severity)
else
clear_fullscreen("brute")
diff --git a/code/modules/mob/living/living_update_status.dm b/code/modules/mob/living/living_update_status.dm
index d84ec9817c0..041d28afdf3 100644
--- a/code/modules/mob/living/living_update_status.dm
+++ b/code/modules/mob/living/living_update_status.dm
@@ -1,8 +1,8 @@
/mob/living/update_blind_effects()
if(!has_vision(information_only=TRUE))
- overlay_fullscreen("blind", /obj/screen/fullscreen/blind)
- throw_alert("blind", /obj/screen/alert/blind)
- return 1
+ overlay_fullscreen("blind", /atom/movable/screen/fullscreen/blind)
+ throw_alert("blind", /atom/movable/screen/alert/blind)
+ return TRUE
else
clear_fullscreen("blind")
clear_alert("blind")
@@ -19,8 +19,8 @@
/mob/living/update_druggy_effects()
if(AmountDruggy())
- overlay_fullscreen("high", /obj/screen/fullscreen/high)
- throw_alert("high", /obj/screen/alert/high)
+ overlay_fullscreen("high", /atom/movable/screen/fullscreen/high)
+ throw_alert("high", /atom/movable/screen/alert/high)
sound_environment_override = SOUND_ENVIRONMENT_DRUGGED
else
clear_fullscreen("high")
@@ -29,14 +29,14 @@
/mob/living/update_nearsighted_effects()
if(HAS_TRAIT(src, TRAIT_NEARSIGHT))
- overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1)
+ overlay_fullscreen("nearsighted", /atom/movable/screen/fullscreen/impaired, 1)
else
clear_fullscreen("nearsighted")
/mob/living/update_sleeping_effects(no_alert = FALSE)
if(IsSleeping())
if(!no_alert)
- throw_alert("asleep", /obj/screen/alert/asleep)
+ throw_alert("asleep", /atom/movable/screen/alert/asleep)
else
clear_alert("asleep")
diff --git a/code/modules/mob/living/silicon/ai/ai_mob.dm b/code/modules/mob/living/silicon/ai/ai_mob.dm
index d1257aaf267..e1e39b605bf 100644
--- a/code/modules/mob/living/silicon/ai/ai_mob.dm
+++ b/code/modules/mob/living/silicon/ai/ai_mob.dm
@@ -1539,7 +1539,7 @@ GLOBAL_LIST_INIT(ai_verbs_default, list(
SEND_SOUND(src, sound('sound/machines/ai_start.ogg'))
- var/obj/screen/text/blurb/location_blurb = new()
+ var/atom/movable/screen/text/blurb/location_blurb = new()
location_blurb.maptext_x = 80
location_blurb.maptext_y = 16
location_blurb.maptext_width = 480
diff --git a/code/modules/mob/living/silicon/robot/robot_life.dm b/code/modules/mob/living/silicon/robot/robot_life.dm
index 1a16490ed96..2b0be3f6afc 100644
--- a/code/modules/mob/living/silicon/robot/robot_life.dm
+++ b/code/modules/mob/living/silicon/robot/robot_life.dm
@@ -63,7 +63,7 @@
emagged = new_state
update_icons()
if(emagged)
- throw_alert("hacked", /obj/screen/alert/hacked)
+ throw_alert("hacked", /atom/movable/screen/alert/hacked)
else
clear_alert("hacked")
@@ -98,15 +98,15 @@
if(0.75 to INFINITY)
clear_alert("charge")
if(0.5 to 0.75)
- throw_alert("charge", /obj/screen/alert/lowcell, 1)
+ throw_alert("charge", /atom/movable/screen/alert/lowcell, 1)
if(0.25 to 0.5)
- throw_alert("charge", /obj/screen/alert/lowcell, 2)
+ throw_alert("charge", /atom/movable/screen/alert/lowcell, 2)
if(0.01 to 0.25)
- throw_alert("charge", /obj/screen/alert/lowcell, 3)
+ throw_alert("charge", /atom/movable/screen/alert/lowcell, 3)
else
- throw_alert("charge", /obj/screen/alert/emptycell)
+ throw_alert("charge", /atom/movable/screen/alert/emptycell)
else
- throw_alert("charge", /obj/screen/alert/nocell)
+ throw_alert("charge", /atom/movable/screen/alert/nocell)
diff --git a/code/modules/mob/living/silicon/robot/robot_mob.dm b/code/modules/mob/living/silicon/robot/robot_mob.dm
index 90e501f99ab..13a3652075c 100644
--- a/code/modules/mob/living/silicon/robot/robot_mob.dm
+++ b/code/modules/mob/living/silicon/robot/robot_mob.dm
@@ -19,15 +19,15 @@ GLOBAL_LIST_INIT(robot_verbs_default, list(
var/custom_sprite = FALSE //Due to all the sprites involved, a var for our custom borgs may be best
//Hud stuff
- var/obj/screen/hands = null
- var/obj/screen/inv1 = null
- var/obj/screen/inv2 = null
- var/obj/screen/inv3 = null
- var/obj/screen/lamp_button = null
- var/obj/screen/thruster_button = null
+ var/atom/movable/screen/hands = null
+ var/atom/movable/screen/inv1 = null
+ var/atom/movable/screen/inv2 = null
+ var/atom/movable/screen/inv3 = null
+ var/atom/movable/screen/lamp_button = null
+ var/atom/movable/screen/thruster_button = null
var/shown_robot_modules = FALSE //Used to determine whether they have the module menu shown or not
- var/obj/screen/robot_modules_background
+ var/atom/movable/screen/robot_modules_background
//3 Modules can be activated at any one time.
var/obj/item/robot_module/module = null
@@ -1296,7 +1296,7 @@ GLOBAL_LIST_INIT(robot_verbs_default, list(
if(wires.is_cut(WIRE_BORG_LOCKED))
state = 1
if(state)
- throw_alert("locked", /obj/screen/alert/locked)
+ throw_alert("locked", /atom/movable/screen/alert/locked)
else
clear_alert("locked")
lockcharge = state
diff --git a/code/modules/mob/living/silicon/silicon_laws.dm b/code/modules/mob/living/silicon/silicon_laws.dm
index af3385c28f1..d7c9b050331 100644
--- a/code/modules/mob/living/silicon/silicon_laws.dm
+++ b/code/modules/mob/living/silicon/silicon_laws.dm
@@ -10,7 +10,7 @@
return laws.zeroth_law != null
/mob/living/silicon/proc/set_zeroth_law(law, law_borg)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.set_zeroth_law(law, law_borg)
if(!isnull(usr) && law)
@@ -22,56 +22,56 @@
to_chat(src, "Internal camera is currently being accessed.")
/mob/living/silicon/proc/add_ion_law(law)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.add_ion_law(law)
if(!isnull(usr) && law)
log_and_message_admins("has given [src] the ion law: [law]")
/mob/living/silicon/proc/add_inherent_law(law)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.add_inherent_law(law)
if(!isnull(usr) && law)
log_and_message_admins("has given [src] the inherent law: [law]")
/mob/living/silicon/proc/add_supplied_law(number, law)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.add_supplied_law(number, law)
if(!isnull(usr) && law)
log_and_message_admins("has given [src] the supplied law: [law]")
/mob/living/silicon/proc/delete_law(datum/ai_law/law)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.delete_law(law)
if(!isnull(usr) && law)
log_and_message_admins("has deleted a law belonging to [src]: [law.law]")
/mob/living/silicon/proc/clear_inherent_laws(silent = 0)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.clear_inherent_laws()
if(!silent && !isnull(usr))
log_and_message_admins("cleared the inherent laws of [src]")
/mob/living/silicon/proc/clear_ion_laws(silent = 0)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.clear_ion_laws()
if(!silent && !isnull(usr))
log_and_message_admins("cleared the ion laws of [src]")
/mob/living/silicon/proc/clear_supplied_laws(silent = 0)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.clear_supplied_laws()
if(!silent && !isnull(usr))
log_and_message_admins("cleared the supplied laws of [src]")
/mob/living/silicon/proc/clear_zeroth_law(silent = FALSE)
- throw_alert("newlaw", /obj/screen/alert/newlaw)
+ throw_alert("newlaw", /atom/movable/screen/alert/newlaw)
laws_sanity_check()
laws.clear_zeroth_laws()
if(!silent && !isnull(usr))
diff --git a/code/modules/mob/living/silicon/silicon_mob.dm b/code/modules/mob/living/silicon/silicon_mob.dm
index 9dd4a655f42..1b0a20083be 100644
--- a/code/modules/mob/living/silicon/silicon_mob.dm
+++ b/code/modules/mob/living/silicon/silicon_mob.dm
@@ -409,7 +409,7 @@
/mob/living/silicon/get_access()
return IGNORE_ACCESS //silicons always have access
-/mob/living/silicon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash/noise)
+/mob/living/silicon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /atom/movable/screen/fullscreen/flash/noise)
if(affect_silicon)
return ..()
diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm
index ea8eea9b0d7..c1187ee2682 100644
--- a/code/modules/mob/living/simple_animal/constructs.dm
+++ b/code/modules/mob/living/simple_animal/constructs.dm
@@ -123,7 +123,7 @@
/mob/living/simple_animal/hostile/construct/Life(seconds, times_fired)
if(holy_check(src))
- throw_alert("holy_fire", /obj/screen/alert/holy_fire, override = TRUE)
+ throw_alert("holy_fire", /atom/movable/screen/alert/holy_fire, override = TRUE)
visible_message("[src] slowly crumbles to dust in this holy place!", \
"Your shell burns as you crumble to dust in this holy place!")
playsound(loc, 'sound/items/welder.ogg', 150, TRUE)
diff --git a/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm b/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm
index 00099deea27..ff76eef3957 100644
--- a/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm
+++ b/code/modules/mob/living/simple_animal/friendly/diona_nymph.dm
@@ -107,8 +107,8 @@
if(isdiona(M))
to_chat(M, "You feel your being twine with that of [src] as it merges with your biomass.")
to_chat(src, "You feel your being twine with that of [M] as you merge with its biomass.")
- throw_alert(GESTALT_ALERT, /obj/screen/alert/nymph, new_master = src) //adds a screen alert that can call resist
- M.throw_alert(NYMPH_ALERT, /obj/screen/alert/gestalt, new_master = src)
+ throw_alert(GESTALT_ALERT, /atom/movable/screen/alert/nymph, new_master = src) //adds a screen alert that can call resist
+ M.throw_alert(NYMPH_ALERT, /atom/movable/screen/alert/gestalt, new_master = src)
forceMove(M)
else if(isrobot(M))
M.visible_message("[M] playfully boops [src] on the head!", "You playfully boop [src] on the head!")
@@ -141,8 +141,8 @@
M.status_flags |= PASSEMOTES
to_chat(src, "You feel your being twine with that of [M] as you merge with its biomass.")
forceMove(M)
- throw_alert(GESTALT_ALERT, /obj/screen/alert/nymph, new_master = src) //adds a screen alert that can call resist
- M.throw_alert(NYMPH_ALERT, /obj/screen/alert/gestalt, new_master = src)
+ throw_alert(GESTALT_ALERT, /atom/movable/screen/alert/nymph, new_master = src) //adds a screen alert that can call resist
+ M.throw_alert(NYMPH_ALERT, /atom/movable/screen/alert/gestalt, new_master = src)
return TRUE
else
return FALSE
diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
index 55cd79a6d15..a4601d9bfff 100644
--- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
+++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
@@ -141,7 +141,7 @@ Difficulty: Hard
H.apply_status_effect(STATUS_EFFECT_BUBBLEGUM_CURSE, src)
if(second_life)
H.clear_fullscreen("Bubblegum")
- H.overlay_fullscreen("Bubblegum", /obj/screen/fullscreen/fog, 2)
+ H.overlay_fullscreen("Bubblegum", /atom/movable/screen/fullscreen/fog, 2)
/mob/living/simple_animal/hostile/megafauna/bubblegum/death(gibbed)
diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm
index 767cdf87a6a..9c42fa54e10 100644
--- a/code/modules/mob/living/simple_animal/simple_animal.dm
+++ b/code/modules/mob/living/simple_animal/simple_animal.dm
@@ -305,20 +305,20 @@
if(atmos_requirements["min_oxy"] && oxy < atmos_requirements["min_oxy"])
atmos_suitable = 0
- throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy)
+ throw_alert("not_enough_oxy", /atom/movable/screen/alert/not_enough_oxy)
else if(atmos_requirements["max_oxy"] && oxy > atmos_requirements["max_oxy"])
atmos_suitable = 0
- throw_alert("too_much_oxy", /obj/screen/alert/too_much_oxy)
+ throw_alert("too_much_oxy", /atom/movable/screen/alert/too_much_oxy)
else
clear_alert("not_enough_oxy")
clear_alert("too_much_oxy")
if(atmos_requirements["min_tox"] && tox < atmos_requirements["min_tox"])
atmos_suitable = 0
- throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox)
+ throw_alert("not_enough_tox", /atom/movable/screen/alert/not_enough_tox)
else if(atmos_requirements["max_tox"] && tox > atmos_requirements["max_tox"])
atmos_suitable = 0
- throw_alert("too_much_tox", /obj/screen/alert/too_much_tox)
+ throw_alert("too_much_tox", /atom/movable/screen/alert/too_much_tox)
else
clear_alert("too_much_tox")
clear_alert("not_enough_tox")
diff --git a/code/modules/mob/living/simple_animal/slime/slime_life.dm b/code/modules/mob/living/simple_animal/slime/slime_life.dm
index 8617910d8fa..67d15345bea 100644
--- a/code/modules/mob/living/simple_animal/slime/slime_life.dm
+++ b/code/modules/mob/living/simple_animal/slime/slime_life.dm
@@ -114,7 +114,7 @@
if(bodytemperature < (T0C + 5)) // start calculating temperature damage etc
if(bodytemperature <= (T0C - 40)) // stun temperature
Tempstun = TRUE
- throw_alert("temp", /obj/screen/alert/cold, 3)
+ throw_alert("temp", /atom/movable/screen/alert/cold, 3)
to_chat(src,"You suddenly freeze up, you cannot move!")
if(bodytemperature <= (T0C - 50)) // hurt temperature
diff --git a/code/modules/mob/living/simple_animal/slime/slime_mob.dm b/code/modules/mob/living/simple_animal/slime/slime_mob.dm
index 4db2674ec93..4b12a386e3e 100644
--- a/code/modules/mob/living/simple_animal/slime/slime_mob.dm
+++ b/code/modules/mob/living/simple_animal/slime/slime_mob.dm
@@ -193,7 +193,7 @@
healths.icon_state = "slime_health7"
severity = 6
if(severity > 0)
- overlay_fullscreen("brute", /obj/screen/fullscreen/brute, severity)
+ overlay_fullscreen("brute", /atom/movable/screen/fullscreen/brute, severity)
else
clear_fullscreen("brute")
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index f0f5b2a4ca9..b5db7266944 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -1490,14 +1490,14 @@ GLOBAL_LIST_INIT(slot_equipment_priority, list( \
/mob/proc/sync_lighting_plane_alpha()
if(hud_used)
- var/obj/screen/plane_master/lighting/L = hud_used.plane_masters["[LIGHTING_PLANE]"]
+ var/atom/movable/screen/plane_master/lighting/L = hud_used.plane_masters["[LIGHTING_PLANE]"]
if(L)
L.alpha = lighting_alpha
sync_nightvision_screen() //Sync up the overlay used for nightvision to the amount of see_in_dark a mob has. This needs to be called everywhere sync_lighting_plane_alpha() is.
/mob/proc/sync_nightvision_screen()
- var/obj/screen/fullscreen/see_through_darkness/S = screens["see_through_darkness"]
+ var/atom/movable/screen/fullscreen/see_through_darkness/S = screens["see_through_darkness"]
if(S)
var/suffix = ""
switch(see_in_dark)
diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm
index ca1b4c9aad7..c501c3ee4d0 100644
--- a/code/modules/mob/mob_grab.dm
+++ b/code/modules/mob/mob_grab.dm
@@ -11,7 +11,7 @@
/obj/item/grab
name = "grab"
flags = NOBLUDGEON | ABSTRACT | DROPDEL
- var/obj/screen/grab/hud = null
+ var/atom/movable/screen/grab/hud = null
var/mob/living/affecting = null
var/mob/living/assailant = null
var/state = GRAB_PASSIVE
@@ -48,7 +48,7 @@
RegisterSignal(affecting, COMSIG_MOVABLE_MOVED, PROC_REF(grab_moved))
RegisterSignal(assailant, COMSIG_MOVABLE_MOVED, PROC_REF(pull_grabbed))
- hud = new /obj/screen/grab(src)
+ hud = new /atom/movable/screen/grab(src)
hud.icon_state = "reinforce"
icon_state = "grabbed"
hud.name = "reinforce grab"
@@ -291,7 +291,7 @@
if(EAST)
animate(affecting, pixel_x =-shift, pixel_y = 0, 5, 1, LINEAR_EASING)
-/obj/item/grab/proc/s_click(obj/screen/S)
+/obj/item/grab/proc/s_click(atom/movable/screen/S)
if(!affecting)
return
if(state >= GRAB_AGGRESSIVE && HAS_TRAIT(assailant, TRAIT_PACIFISM))
diff --git a/code/modules/mob/mob_misc_procs.dm b/code/modules/mob/mob_misc_procs.dm
index 6392a3fe3c2..c388d4fc4a4 100644
--- a/code/modules/mob/mob_misc_procs.dm
+++ b/code/modules/mob/mob_misc_procs.dm
@@ -554,7 +554,7 @@
if(flashwindow)
window_flash(O.client)
if(source)
- var/obj/screen/alert/notify_action/A = O.throw_alert("\ref[source]_notify_action", /obj/screen/alert/notify_action)
+ var/atom/movable/screen/alert/notify_action/A = O.throw_alert("\ref[source]_notify_action", /atom/movable/screen/alert/notify_action)
if(A)
if(O.client.prefs && O.client.prefs.UI_style)
A.icon = ui_style2icon(O.client.prefs.UI_style)
diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm
index 6de1b1b4d79..3a354a4e4c0 100644
--- a/code/modules/mob/mob_movement.dm
+++ b/code/modules/mob/mob_movement.dm
@@ -383,7 +383,7 @@
return
/client/proc/check_has_body_select()
- return mob && mob.hud_used && mob.hud_used.zone_select && istype(mob.hud_used.zone_select, /obj/screen/zone_sel)
+ return mob && mob.hud_used && mob.hud_used.zone_select && istype(mob.hud_used.zone_select, /atom/movable/screen/zone_sel)
/client/verb/body_toggle_head()
set name = "body-toggle-head"
@@ -401,7 +401,7 @@
else
next_in_line = BODY_ZONE_HEAD
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(next_in_line, mob)
/client/verb/body_r_arm()
@@ -416,7 +416,7 @@
else
next_in_line = BODY_ZONE_R_ARM
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(next_in_line, mob)
/client/verb/body_chest()
@@ -426,7 +426,7 @@
if(!check_has_body_select())
return
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(BODY_ZONE_CHEST, mob)
/client/verb/body_l_arm()
@@ -442,7 +442,7 @@
else
next_in_line = BODY_ZONE_L_ARM
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(next_in_line, mob)
/client/verb/body_r_leg()
@@ -458,7 +458,7 @@
else
next_in_line = BODY_ZONE_R_LEG
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(next_in_line, mob)
/client/verb/body_groin()
@@ -468,7 +468,7 @@
if(!check_has_body_select())
return
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(BODY_ZONE_PRECISE_GROIN, mob)
/client/verb/body_l_leg()
@@ -484,7 +484,7 @@
else
next_in_line = BODY_ZONE_L_LEG
- var/obj/screen/zone_sel/selector = mob.hud_used.zone_select
+ var/atom/movable/screen/zone_sel/selector = mob.hud_used.zone_select
selector.set_selected_zone(next_in_line, mob)
/client/verb/toggle_walk_run()
@@ -513,5 +513,5 @@
if(hud_used && hud_used.move_intent && hud_used.static_inventory)
hud_used.move_intent.icon_state = icon_toggle
- for(var/obj/screen/mov_intent/selector in hud_used.static_inventory)
+ for(var/atom/movable/screen/mov_intent/selector in hud_used.static_inventory)
selector.update_icon()
diff --git a/code/modules/mob/mob_vars.dm b/code/modules/mob/mob_vars.dm
index cfd97814511..8a0c3c0781a 100644
--- a/code/modules/mob/mob_vars.dm
+++ b/code/modules/mob/mob_vars.dm
@@ -13,11 +13,11 @@
/// The zone this mob is currently targeting
var/zone_selected = null
- var/obj/screen/pullin = null
- var/obj/screen/i_select = null
- var/obj/screen/m_select = null
- var/obj/screen/healths = null
- var/obj/screen/throw_icon = null
+ var/atom/movable/screen/pullin = null
+ var/atom/movable/screen/i_select = null
+ var/atom/movable/screen/m_select = null
+ var/atom/movable/screen/healths = null
+ var/atom/movable/screen/throw_icon = null
/*A bunch of this stuff really needs to go under their own defines instead of being globally attached to mob.
A variable should only be globally attached to turfs/objects/whatever, when it is in fact needed as such.
@@ -25,8 +25,8 @@
I'll make some notes on where certain variable defines should probably go.
Changing this around would probably require a good look-over the pre-existing code.
*/
- var/obj/screen/leap_icon = null
- var/obj/screen/healthdoll/healthdoll = null
+ var/atom/movable/screen/leap_icon = null
+ var/atom/movable/screen/healthdoll/healthdoll = null
var/use_me = TRUE //Allows all mobs to use the me verb by default, will have to manually specify they cannot
var/damageoverlaytemp = 0
@@ -215,7 +215,7 @@
var/suiciding = FALSE
/// Used for some screen objects, such as
var/list/screens = list()
- /// lazy list. contains /obj/screen/alert only, On /mob so clientless mobs will throw alerts properly
+ /// lazy list. contains /atom/movable/screen/alert only, On /mob so clientless mobs will throw alerts properly
var/list/alerts
/// Makes items bloody if you touch them
var/bloody_hands = 0
diff --git a/code/modules/mod/mod_control.dm b/code/modules/mod/mod_control.dm
index 6cd38c1bec9..1064d5f7945 100644
--- a/code/modules/mod/mod_control.dm
+++ b/code/modules/mod/mod_control.dm
@@ -268,7 +268,7 @@
if(!M.restrained() && !M.stat)
playsound(loc, "rustle", 50, TRUE, -5)
- if(istype(over_object, /obj/screen/inventory/hand))
+ if(istype(over_object, /atom/movable/screen/inventory/hand))
for(var/obj/item/part as anything in mod_parts)
if(part.loc != src)
to_chat(wearer, "Retract parts first!")
@@ -657,7 +657,7 @@
if(!wearer)
return
if(!core)
- wearer.throw_alert("mod_charge", /obj/screen/alert/nocell)
+ wearer.throw_alert("mod_charge", /atom/movable/screen/alert/nocell)
return
core.update_charge_alert()
diff --git a/code/modules/mod/mod_core.dm b/code/modules/mod/mod_core.dm
index 62f737b3278..62a214ce072 100644
--- a/code/modules/mod/mod_core.dm
+++ b/code/modules/mod/mod_core.dm
@@ -131,20 +131,20 @@
/obj/item/mod/core/standard/update_charge_alert()
var/obj/item/stock_parts/cell/charge_source = charge_source()
if(!charge_source)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/nocell)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/nocell)
return
var/remaining_cell = charge_amount() / max_charge_amount()
switch(remaining_cell)
if(0.75 to INFINITY)
mod.wearer.clear_alert("mod_charge")
if(0.5 to 0.75)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/lowcell, 1)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/lowcell, 1)
if(0.25 to 0.5)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/lowcell, 2)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/lowcell, 2)
if(0.01 to 0.25)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/lowcell, 3)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/lowcell, 3)
else
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/emptycell)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/emptycell)
/obj/item/mod/core/standard/emp_act(severity)
cell?.emp_act(severity)
@@ -276,13 +276,13 @@
if(0.75 to INFINITY)
mod.wearer.clear_alert("mod_charge")
if(0.5 to 0.75)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/lowcell, 1)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/lowcell, 1)
if(0.25 to 0.5)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/lowcell, 2)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/lowcell, 2)
if(0.01 to 0.25)
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/lowcell, 3)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/lowcell, 3)
else
- mod.wearer.throw_alert("mod_charge", /obj/screen/alert/emptycell)
+ mod.wearer.throw_alert("mod_charge", /atom/movable/screen/alert/emptycell)
/obj/item/mod/core/plasma/on_attackby(obj/item/attacking_item, mob/user, params)
charge_plasma(attacking_item, user)
diff --git a/code/modules/mod/modules/module_kinesis.dm b/code/modules/mod/modules/module_kinesis.dm
index 99fea77d8b8..dcacecc1737 100644
--- a/code/modules/mod/modules/module_kinesis.dm
+++ b/code/modules/mod/modules/module_kinesis.dm
@@ -30,7 +30,7 @@
/// Overlay we add to each grabbed atom.
var/image/kinesis_icon
/// Our mouse movement catcher.
- var/obj/screen/fullscreen/cursor_catcher/kinesis/kinesis_catcher
+ var/atom/movable/screen/fullscreen/cursor_catcher/kinesis/kinesis_catcher
/// The sounds playing while we grabbed an object.
var/datum/looping_sound/kinesis/soundloop
///The pixel_X of whatever we were grabbing before hand.
@@ -83,7 +83,7 @@
pre_pixel_x = grabbed_atom.pixel_x
pre_pixel_y = grabbed_atom.pixel_y
beam.chain = beam.Beam(grabbed_atom, icon_state = "kinesis", icon='icons/effects/beam.dmi', time = 100 SECONDS, maxdistance = 15, beam_type = /obj/effect/ebeam, beam_sleep_time = 3)
- kinesis_catcher = mod.wearer.overlay_fullscreen("kinesis", /obj/screen/fullscreen/cursor_catcher/kinesis, 0)
+ kinesis_catcher = mod.wearer.overlay_fullscreen("kinesis", /atom/movable/screen/fullscreen/cursor_catcher/kinesis, 0)
kinesis_catcher.assign_to_mob(mod.wearer)
soundloop.start()
START_PROCESSING(SSfastprocess, src)
@@ -249,7 +249,7 @@
complexity = 0
use_power_cost = DEFAULT_CHARGE_DRAIN * 5
-/obj/screen/fullscreen/cursor_catcher/kinesis
+/atom/movable/screen/fullscreen/cursor_catcher/kinesis
icon = 'icons/mob/screen_kinesis.dmi'
icon_state = "kinesis"
diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm
index 7f5a434af85..c7339cb1585 100644
--- a/code/modules/paperwork/paperbin.dm
+++ b/code/modules/paperwork/paperbin.dm
@@ -39,7 +39,7 @@
M.unEquip(src)
M.put_in_hands(src)
- else if(istype(over_object, /obj/screen))
+ else if(is_screen_atom(over_object))
switch(over_object.name)
if("r_hand")
if(!remove_item_from_storage(M))
diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm
index 1682cab910b..0e83962a8c8 100644
--- a/code/modules/paperwork/photography.dm
+++ b/code/modules/paperwork/photography.dm
@@ -142,7 +142,7 @@
if(ishuman(usr))
var/mob/M = usr
- if(!istype(over_object, /obj/screen))
+ if(!is_screen_atom(over_object))
return ..()
playsound(loc, "rustle", 50, 1, -5)
if((!M.restrained() && !M.stat && M.back == src))
diff --git a/code/modules/pda/PDA.dm b/code/modules/pda/PDA.dm
index aaa3c6aeabd..38022d19e7b 100644
--- a/code/modules/pda/PDA.dm
+++ b/code/modules/pda/PDA.dm
@@ -123,7 +123,7 @@ GLOBAL_LIST_EMPTY(PDAs)
/obj/item/pda/MouseDrop(obj/over_object as obj, src_location, over_location)
var/mob/M = usr
- if((!istype(over_object, /obj/screen)) && can_use())
+ if((!is_screen_atom(over_object)) && can_use())
return attack_self(M)
/obj/item/pda/attack_self(mob/user as mob)
diff --git a/code/modules/power/apc/apc_malfunction.dm b/code/modules/power/apc/apc_malfunction.dm
index 1494cef300e..6f46ae9745c 100644
--- a/code/modules/power/apc/apc_malfunction.dm
+++ b/code/modules/power/apc/apc_malfunction.dm
@@ -18,8 +18,8 @@
to_chat(malf, "Beginning override of APC systems. This takes some time, and you can only hack one APC at a time.")
malf.malfhack = src
malf.malfhacking = addtimer(CALLBACK(malf, TYPE_PROC_REF(/mob/living/silicon/ai, malfhacked), src), 600, TIMER_STOPPABLE)
- var/obj/screen/alert/hackingapc/A
- A = malf.throw_alert("hackingapc", /obj/screen/alert/hackingapc)
+ var/atom/movable/screen/alert/hackingapc/A
+ A = malf.throw_alert("hackingapc", /atom/movable/screen/alert/hackingapc)
A.target = src
/obj/machinery/power/apc/proc/malfoccupy(mob/living/silicon/ai/malf)
diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm
index 50bc20252eb..dd15c3f2a65 100644
--- a/code/modules/recycling/disposal.dm
+++ b/code/modules/recycling/disposal.dm
@@ -547,7 +547,7 @@
/obj/machinery/disposal/get_remote_view_fullscreens(mob/user)
if(user.stat == DEAD || !(user.sight & (SEEOBJS|SEEMOBS)))
- user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 2)
+ user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 2)
/obj/machinery/disposal/force_eject_occupant(mob/target)
target.forceMove(get_turf(src))
diff --git a/code/modules/surgery/organs/organ_datums/lung_datum.dm b/code/modules/surgery/organs/organ_datums/lung_datum.dm
index c939bbab651..2bec8cdc8d1 100644
--- a/code/modules/surgery/organs/organ_datums/lung_datum.dm
+++ b/code/modules/surgery/organs/organ_datums/lung_datum.dm
@@ -65,13 +65,13 @@
H.adjustOxyLoss(5)
if(safe_oxygen_min)
- H.throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy)
+ H.throw_alert("not_enough_oxy", /atom/movable/screen/alert/not_enough_oxy)
else if(safe_toxins_min)
- H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox)
+ H.throw_alert("not_enough_tox", /atom/movable/screen/alert/not_enough_tox)
else if(safe_co2_min)
- H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2)
+ H.throw_alert("not_enough_co2", /atom/movable/screen/alert/not_enough_co2)
else if(safe_nitro_min)
- H.throw_alert("not_enough_nitro", /obj/screen/alert/not_enough_nitro)
+ H.throw_alert("not_enough_nitro", /atom/movable/screen/alert/not_enough_nitro)
return FALSE
@@ -95,7 +95,7 @@
if(O2_pp > safe_oxygen_max)
var/ratio = (breath.oxygen / safe_oxygen_max / safe_oxygen_max) * 10
H.apply_damage_type(clamp(ratio, oxy_breath_dam_min, oxy_breath_dam_max), oxy_damage_type)
- H.throw_alert("too_much_oxy", /obj/screen/alert/too_much_oxy)
+ H.throw_alert("too_much_oxy", /atom/movable/screen/alert/too_much_oxy)
else
H.clear_alert("too_much_oxy")
@@ -103,7 +103,7 @@
if(safe_oxygen_min)
if(O2_pp < safe_oxygen_min)
gas_breathed = handle_too_little_breath(H, O2_pp, safe_oxygen_min, breath.oxygen)
- H.throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy)
+ H.throw_alert("not_enough_oxy", /atom/movable/screen/alert/not_enough_oxy)
else
H.adjustOxyLoss(-HUMAN_MAX_OXYLOSS)
gas_breathed = breath.oxygen
@@ -121,7 +121,7 @@
if(N2_pp > safe_nitro_max)
var/ratio = (breath.nitrogen / safe_nitro_max) * 10
H.apply_damage_type(clamp(ratio, nitro_breath_dam_min, nitro_breath_dam_max), nitro_damage_type)
- H.throw_alert("too_much_nitro", /obj/screen/alert/too_much_nitro)
+ H.throw_alert("too_much_nitro", /atom/movable/screen/alert/too_much_nitro)
else
H.clear_alert("too_much_nitro")
@@ -129,7 +129,7 @@
if(safe_nitro_min)
if(N2_pp < safe_nitro_min)
gas_breathed = handle_too_little_breath(H, N2_pp, safe_nitro_min, breath.nitrogen)
- H.throw_alert("not_enough_nitro", /obj/screen/alert/not_enough_nitro)
+ H.throw_alert("not_enough_nitro", /atom/movable/screen/alert/not_enough_nitro)
else
H.adjustOxyLoss(-HUMAN_MAX_OXYLOSS)
gas_breathed = breath.nitrogen
@@ -152,7 +152,7 @@
H.apply_damage_type(HUMAN_MAX_OXYLOSS, co2_damage_type) // Lets hurt em a little, let them know we mean business
if(world.time - H.co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good!
H.apply_damage_type(15, co2_damage_type)
- H.throw_alert("too_much_co2", /obj/screen/alert/too_much_co2)
+ H.throw_alert("too_much_co2", /atom/movable/screen/alert/too_much_co2)
if(prob(20)) // Lets give them some chance to know somethings not right though I guess.
H.emote("cough")
@@ -164,7 +164,7 @@
if(safe_co2_min)
if(CO2_pp < safe_co2_min)
gas_breathed = handle_too_little_breath(H, CO2_pp, safe_co2_min, breath.carbon_dioxide)
- H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2)
+ H.throw_alert("not_enough_co2", /atom/movable/screen/alert/not_enough_co2)
else
H.adjustOxyLoss(-HUMAN_MAX_OXYLOSS)
gas_breathed = breath.carbon_dioxide
@@ -183,7 +183,7 @@
if(Toxins_pp > safe_toxins_max)
var/ratio = (breath.toxins / safe_toxins_max) * 10
H.apply_damage_type(clamp(ratio, tox_breath_dam_min, tox_breath_dam_max), tox_damage_type)
- H.throw_alert("too_much_tox", /obj/screen/alert/too_much_tox)
+ H.throw_alert("too_much_tox", /atom/movable/screen/alert/too_much_tox)
else
H.clear_alert("too_much_tox")
@@ -192,7 +192,7 @@
if(safe_toxins_min)
if(Toxins_pp < safe_toxins_min)
gas_breathed = handle_too_little_breath(H, Toxins_pp, safe_toxins_min, breath.toxins)
- H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox)
+ H.throw_alert("not_enough_tox", /atom/movable/screen/alert/not_enough_tox)
else
H.adjustOxyLoss(-HUMAN_MAX_OXYLOSS)
gas_breathed = breath.toxins
diff --git a/code/modules/surgery/organs/organ_external.dm b/code/modules/surgery/organs/organ_external.dm
index 4468194ed88..2f41331f7e4 100644
--- a/code/modules/surgery/organs/organ_external.dm
+++ b/code/modules/surgery/organs/organ_external.dm
@@ -207,7 +207,7 @@
parent.children.Add(src)
if(owner.has_embedded_objects())
- owner.throw_alert("embeddedobject", /obj/screen/alert/embeddedobject)
+ owner.throw_alert("embeddedobject", /atom/movable/screen/alert/embeddedobject)
/obj/item/organ/external/attempt_become_organ(obj/item/organ/external/parent,mob/living/carbon/human/H)
if(parent_organ != parent.limb_name)
@@ -926,7 +926,7 @@ Note that amputating the affected organ does in fact remove the infection from t
forceMove(T)
/obj/item/organ/external/proc/add_embedded_object(obj/item/I)
- owner.throw_alert("embeddedobject", /obj/screen/alert/embeddedobject)
+ owner.throw_alert("embeddedobject", /atom/movable/screen/alert/embeddedobject)
embedded_objects += I
I.forceMove(owner)
RegisterSignal(I, COMSIG_MOVABLE_MOVED, PROC_REF(remove_embedded_object))
diff --git a/code/modules/tooltip/tooltip.dm b/code/modules/tooltip/tooltip.dm
index d6111c01b85..f11341127f1 100644
--- a/code/modules/tooltip/tooltip.dm
+++ b/code/modules/tooltip/tooltip.dm
@@ -13,7 +13,7 @@ Configuration:
Usage:
- Define mouse event procs on your (probably HUD) object and simply call the show and hide procs respectively:
- /obj/screen/hud
+ /atom/movable/screen/hud
MouseEntered(location, control, params)
usr.client.tooltip.show(params, title = src.name, content = src.desc)
diff --git a/code/modules/vote/vote_presets.dm b/code/modules/vote/vote_presets.dm
index 06998674628..6927fa4fea7 100644
--- a/code/modules/vote/vote_presets.dm
+++ b/code/modules/vote/vote_presets.dm
@@ -35,7 +35,7 @@
/datum/vote/map/announce()
..()
for(var/mob/M in GLOB.player_list)
- M.throw_alert("Map Vote", /obj/screen/alert/notify_mapvote, timeout_override = GLOB.configuration.vote.vote_time)
+ M.throw_alert("Map Vote", /atom/movable/screen/alert/notify_mapvote, timeout_override = GLOB.configuration.vote.vote_time)
/datum/vote/map/handle_result(result)
// Find target map.