mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-27 15:17:01 +01:00
[MIRROR] Bitrunning: Tweaks, QoL and removals (#28309)
* Bitrunning: Tweaks, QoL and removals * Update mob_spawn.dm * Update skin.dmf * Update mob_spawn.dm --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com>
This commit is contained in:
co-authored by
Jeremiah
SpaceLoveSs13
parent
a131c53f30
commit
8f6729abd9
@@ -8,11 +8,37 @@
|
||||
obj_flags = BLOCK_Z_OUT_DOWN
|
||||
/// Time req to disconnect properly
|
||||
var/travel_time = 3 SECONDS
|
||||
/// Uses this to teleport observers back to the origin server
|
||||
var/datum/weakref/server_ref
|
||||
|
||||
/obj/structure/hololadder/Initialize(mapload)
|
||||
|
||||
/obj/structure/hololadder/Initialize(mapload, obj/machinery/quantum_server/origin)
|
||||
. = ..()
|
||||
|
||||
RegisterSignal(loc, COMSIG_ATOM_ENTERED, PROC_REF(on_enter))
|
||||
server_ref = WEAKREF(origin)
|
||||
register_context()
|
||||
|
||||
|
||||
/obj/structure/hololadder/add_context(atom/source, list/context, obj/item/held_item, mob/user)
|
||||
. = ..()
|
||||
|
||||
context[SCREENTIP_CONTEXT_LMB] = "Disconnect"
|
||||
|
||||
|
||||
/obj/structure/hololadder/examine(mob/user)
|
||||
. = ..()
|
||||
|
||||
if(isnull(server_ref.resolve()))
|
||||
. += span_infoplain("It's not connected to anything.")
|
||||
return
|
||||
|
||||
if(isobserver(user))
|
||||
. += span_notice("Left click to view the server that this ladder is connected to.")
|
||||
return
|
||||
|
||||
. += span_infoplain("This ladder is connected to a server. You can click on it or walk over it to disconnect.")
|
||||
|
||||
|
||||
/obj/structure/hololadder/attack_hand(mob/user, list/modifiers)
|
||||
. = ..()
|
||||
@@ -24,19 +50,29 @@
|
||||
|
||||
disconnect(user)
|
||||
|
||||
|
||||
/obj/structure/hololadder/attack_ghost(mob/dead/observer/ghostie)
|
||||
var/our_server = server_ref?.resolve()
|
||||
if(isnull(our_server))
|
||||
return ..()
|
||||
|
||||
ghostie.abstract_move(get_turf(our_server))
|
||||
|
||||
|
||||
/// If there's a pilot ref- send the disconnect signal
|
||||
/obj/structure/hololadder/proc/disconnect(mob/user)
|
||||
if(isnull(user.mind))
|
||||
return
|
||||
|
||||
if(!HAS_TRAIT(user, TRAIT_TEMPORARY_BODY))
|
||||
balloon_alert(user, "no connection detected.")
|
||||
balloon_alert(user, "no connection detected")
|
||||
return
|
||||
|
||||
balloon_alert(user, "disconnecting...")
|
||||
if(do_after(user, travel_time, src))
|
||||
SEND_SIGNAL(user, COMSIG_BITRUNNER_LADDER_SEVER)
|
||||
|
||||
|
||||
/// Helper for times when you dont have hands (gondola??)
|
||||
/obj/structure/hololadder/proc/on_enter(datum/source, atom/movable/arrived, turf/old_loc)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
@@ -52,17 +52,25 @@
|
||||
. += span_infoplain("Netpods must be built within 4 tiles of a server.")
|
||||
return
|
||||
|
||||
. += span_infoplain("Drag yourself into the pod to engage the link.")
|
||||
. += span_infoplain("It has limited resuscitation capabilities. Remaining in the pod can heal some injuries.")
|
||||
. += span_infoplain("It has a security system that will alert the occupant if it is tampered with.")
|
||||
if(!isobserver(user))
|
||||
. += span_infoplain("Drag yourself into the pod to engage the link.")
|
||||
. += span_infoplain("It has limited resuscitation capabilities. Remaining in the pod can heal some injuries.")
|
||||
. += span_infoplain("It has a security system that will alert the occupant if it is tampered with.")
|
||||
|
||||
if(isnull(occupant))
|
||||
. += span_notice("It is currently unoccupied.")
|
||||
. += span_infoplain("It's currently unoccupied.")
|
||||
return
|
||||
|
||||
. += span_infoplain("It's currently occupied by [occupant].")
|
||||
|
||||
if(isobserver(user))
|
||||
. += span_notice("As an observer, you can click this netpod to jump to its avatar.")
|
||||
return
|
||||
|
||||
. += span_notice("It is currently occupied by [occupant].")
|
||||
. += span_notice("It can be pried open with a crowbar, but its safety mechanisms will alert the occupant.")
|
||||
|
||||
|
||||
|
||||
/obj/machinery/netpod/add_context(atom/source, list/context, obj/item/held_item, mob/user)
|
||||
. = ..()
|
||||
|
||||
@@ -74,7 +82,6 @@
|
||||
context[SCREENTIP_CONTEXT_LMB] = "Pry Open"
|
||||
return CONTEXTUAL_SCREENTIP_SET
|
||||
|
||||
return CONTEXTUAL_SCREENTIP_SET
|
||||
|
||||
/obj/machinery/netpod/update_icon_state()
|
||||
if(!is_operational)
|
||||
|
||||
Reference in New Issue
Block a user