mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-15 10:04:30 +01:00
Merge remote-tracking branch 'tgstation/master' into upstream-2025-11-29
# Conflicts: # _maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm # _maps/RandomRuins/SpaceRuins/garbagetruck2.dmm # _maps/map_files/CatwalkStation/CatwalkStation_2023.dmm # _maps/map_files/tramstation/tramstation.dmm # code/_onclick/hud/new_player.dm # code/datums/components/squashable.dm # code/datums/diseases/advance/symptoms/heal.dm # code/datums/diseases/chronic_illness.dm # code/datums/status_effects/buffs.dm # code/datums/status_effects/debuffs/drunk.dm # code/datums/status_effects/debuffs/stamcrit.dm # code/game/machinery/computer/crew.dm # code/game/objects/items/devices/scanners/health_analyzer.dm # code/game/objects/items/wall_mounted.dm # code/game/turfs/closed/indestructible.dm # code/modules/admin/view_variables/filterrific.dm # code/modules/antagonists/heretic/influences.dm # code/modules/cargo/orderconsole.dm # code/modules/client/preferences.dm # code/modules/events/space_vines/vine_mutations.dm # code/modules/mob/dead/new_player/new_player.dm # code/modules/mob/living/carbon/human/death.dm # code/modules/mob/living/carbon/human/species_types/jellypeople.dm # code/modules/mob/living/damage_procs.dm # code/modules/mob/living/living.dm # code/modules/mob_spawn/ghost_roles/mining_roles.dm # code/modules/mob_spawn/mob_spawn.dm # code/modules/projectiles/ammunition/energy/laser.dm # code/modules/projectiles/guns/ballistic/launchers.dm # code/modules/projectiles/guns/energy/laser.dm # code/modules/reagents/chemistry/machinery/chem_dispenser.dm # code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm # code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm # code/modules/reagents/chemistry/reagents/medicine_reagents.dm # code/modules/surgery/healing.dm # code/modules/unit_tests/designs.dm # icons/mob/inhands/items_lefthand.dmi # icons/mob/inhands/items_righthand.dmi # tgui/packages/tgui/interfaces/ChemDispenser.tsx
This commit is contained in:
@@ -58,7 +58,7 @@
|
||||
icon_state = "cordon"
|
||||
static_lighting = FALSE
|
||||
base_lighting_alpha = 255
|
||||
area_flags = UNIQUE_AREA|NOTELEPORT|HIDDEN_AREA
|
||||
area_flags = NOTELEPORT|HIDDEN_AREA
|
||||
requires_power = FALSE
|
||||
|
||||
/area/misc/cordon/Entered(atom/movable/arrived, area/old_area)
|
||||
|
||||
@@ -1,71 +1,45 @@
|
||||
/*An alternative to exit gateways, signposts send you back to somewhere safe onstation with their semiotic magic.*/
|
||||
/obj/structure/signpost
|
||||
name = "signpost"
|
||||
desc = "Won't somebody give me a sign?"
|
||||
icon = 'icons/obj/fluff/general.dmi'
|
||||
icon_state = "signpost"
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
var/question = "Travel back?"
|
||||
var/list/zlevels
|
||||
|
||||
/// Whether or not this enables the Houlihan element.
|
||||
var/teleports = FALSE
|
||||
/// Optional replacement for the teleport question.
|
||||
var/question = null
|
||||
/// Optional list of z-levels that the Houlihan element can send us to. Modify this on Initialize().
|
||||
VAR_FINAL/list/zlevels = null
|
||||
|
||||
/obj/structure/signpost/Initialize(mapload)
|
||||
. = ..()
|
||||
..()
|
||||
set_light(2)
|
||||
zlevels = SSmapping.levels_by_trait(ZTRAIT_STATION)
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/obj/structure/signpost/interact(mob/user)
|
||||
. = ..()
|
||||
if(.)
|
||||
return
|
||||
if(tgui_alert(usr,question,name,list("Yes","No")) != "Yes" && !Adjacent(user))
|
||||
return
|
||||
/obj/structure/signpost/LateInitialize()
|
||||
// This is here cause we wanna be super sure zlevels is properly initialized
|
||||
if(teleports)
|
||||
AddComponent(/datum/component/houlihan_teleport, question, zlevels)
|
||||
|
||||
var/turf/safe_dropoff = zlevels ? find_safe_turf(zlevels) : get_safe_random_station_turf_equal_weight()
|
||||
if(!safe_dropoff)
|
||||
to_chat(user, "Nothing happens. You feel that this is a bad sign.")
|
||||
return
|
||||
|
||||
var/atom/movable/pulled = user.pulling
|
||||
user.forceMove(safe_dropoff)
|
||||
if(pulled)
|
||||
pulled.forceMove(safe_dropoff)
|
||||
user.start_pulling(pulled)
|
||||
to_chat(user, span_notice("You blink and find yourself in [get_area_name(safe_dropoff)]."))
|
||||
|
||||
/obj/structure/signpost/attackby(obj/item/W, mob/user, list/modifiers, list/attack_modifiers)
|
||||
return interact(user)
|
||||
|
||||
/obj/structure/signpost/attack_paw(mob/user, list/modifiers)
|
||||
return interact(user)
|
||||
|
||||
/obj/structure/signpost/attack_hulk(mob/user)
|
||||
return
|
||||
|
||||
/obj/structure/signpost/attack_larva(mob/user, list/modifiers)
|
||||
return interact(user)
|
||||
|
||||
/obj/structure/signpost/attack_robot(mob/user)
|
||||
if (Adjacent(user))
|
||||
return interact(user)
|
||||
|
||||
/obj/structure/signpost/attack_animal(mob/user, list/modifiers)
|
||||
return interact(user)
|
||||
/* ----------------- */
|
||||
|
||||
/obj/structure/signpost/salvation
|
||||
name = "\proper salvation"
|
||||
desc = "In the darkest times, we will find our way home."
|
||||
resistance_flags = INDESTRUCTIBLE
|
||||
teleports = TRUE
|
||||
|
||||
/obj/structure/signpost/exit
|
||||
name = "exit"
|
||||
desc = "Make sure to bring all your belongings with you when you \
|
||||
exit the area."
|
||||
question = "Leave? You might never come back."
|
||||
/obj/structure/signpost/void
|
||||
name = "signpost at the edge of the universe"
|
||||
desc = "A direction in the directionless void."
|
||||
density = FALSE
|
||||
/// Brightness of the signpost.
|
||||
var/range = 2
|
||||
/// Light power of the signpost.
|
||||
var/power = 0.8
|
||||
|
||||
/obj/structure/signpost/exit/Initialize(mapload)
|
||||
/obj/structure/signpost/void/Initialize(mapload)
|
||||
. = ..()
|
||||
zlevels = list()
|
||||
for(var/i in 1 to world.maxz)
|
||||
zlevels += i
|
||||
zlevels -= SSmapping.levels_by_trait(ZTRAIT_CENTCOM) // no easy victory, even with meme signposts
|
||||
// also, could you think of the horror if they ended up in a holodeck
|
||||
// template or something
|
||||
set_light(range, power)
|
||||
|
||||
Reference in New Issue
Block a user