mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-11 15:14:27 +01:00
Refactors screen objects to /atom/movable (#24068)
* introduce helper + remove unused proc * we love compatibility * Update code/_onclick/hud/action_button.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/action_button.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/alert.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/blob_overmind.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/blob_overmind.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/blob_overmind.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/martial_arts/martial.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/mining/lavaland/loot/tendril_loot.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/mob/living/carbon/human/species/shadow.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/mob/living/carbon/human/species/shadow.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/mob/living/living_update_status.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/screen_objects.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/screen_objects.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/_onclick/hud/screen_objects.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/game/objects/items/weapons/storage/internal.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/game/machinery/computer/camera_advanced.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/game/machinery/computer/camera_advanced.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/game/objects/items/weapons/storage/internal.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/game/mecha/mecha.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * deconflict --------- Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
@@ -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"
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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)]"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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 "<span style=\"[style]\">[copytext_char(blurb_text, segment_start, segment_end)]</span>"
|
||||
|
||||
/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
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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, "<span class='ghostalert'>[message]</span>")
|
||||
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)
|
||||
|
||||
@@ -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
|
||||
..()
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
|
||||
@@ -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")
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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, "<span class='info'>You offer [I] to [receiver].</span>")
|
||||
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.
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)))
|
||||
|
||||
@@ -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")
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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")
|
||||
..()
|
||||
|
||||
@@ -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, "<span class='userdanger'>You are now facing [track ? A : dir2text(forced_look)]. To cancel this, shift-middleclick yourself.</span>")
|
||||
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.
|
||||
|
||||
@@ -163,7 +163,7 @@
|
||||
on_fire = TRUE
|
||||
visible_message("<span class='warning'>[src] catches fire!</span>", "<span class='userdanger'>You're set on fire!</span>")
|
||||
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
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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")
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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, "<span class='warning'>Internal camera is currently being accessed.</span>")
|
||||
|
||||
/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))
|
||||
|
||||
@@ -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 ..()
|
||||
|
||||
|
||||
@@ -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("<span class='danger'>[src] slowly crumbles to dust in this holy place!</span>", \
|
||||
"<span class='danger'>Your shell burns as you crumble to dust in this holy place!</span>")
|
||||
playsound(loc, 'sound/items/welder.ogg', 150, TRUE)
|
||||
|
||||
@@ -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("<span class='notice'>[M] playfully boops [src] on the head!</span>", "<span class='notice'>You playfully boop [src] on the head!</span>")
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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,"<span class='userdanger'>You suddenly freeze up, you cannot move!</span>")
|
||||
|
||||
if(bodytemperature <= (T0C - 50)) // hurt temperature
|
||||
|
||||
@@ -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")
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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, "<span class='warning'>Retract parts first!</span>")
|
||||
@@ -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()
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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"
|
||||
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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)
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user