Skip to content

Commit 81e8724

Browse files
authored
[MDB Ignore] Readds le cryo sleeper for le despawning and le latejoining (#762)
1 parent 8282d00 commit 81e8724

19 files changed

Lines changed: 16156 additions & 15744 deletions

File tree

_maps/map_files/IceBoxStation/IceBoxStation.dmm

Lines changed: 159 additions & 53 deletions
Large diffs are not rendered by default.

_maps/map_files/KiloStation/KiloStation.dmm

Lines changed: 8162 additions & 8136 deletions
Large diffs are not rendered by default.

_maps/map_files/LimaStation/LimaStation.dmm

Lines changed: 4294 additions & 4287 deletions
Large diffs are not rendered by default.

_maps/map_files/MetaStation/MetaStation.dmm

Lines changed: 314 additions & 226 deletions
Large diffs are not rendered by default.

_maps/map_files/NebulaStation/NebulaStation.dmm

Lines changed: 164 additions & 264 deletions
Large diffs are not rendered by default.

_maps/map_files/PubbyStation/PubbyStation.dmm

Lines changed: 2740 additions & 2733 deletions
Large diffs are not rendered by default.

code/__DEFINES/preferences.dm

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,10 @@
186186
#define MIDDLE_LIP "Middle"
187187
#define LOWER_LIP "Lower"
188188

189+
// Latejoin Spawnpoints
190+
#define SPAWNPOINT_CRYO "Long-Term Crew Storage"
191+
#define SPAWNPOINT_ARRIVALS "Arrivals Shuttle"
192+
189193
// Job greyscale colors for loadout items
190194
#define COLOR_JOB_ASSISTANT /obj/item/clothing/under/color/grey::greyscale_colors
191195
#define COLOR_JOB_BOTANIST "#33cc33"

code/_onclick/hud/alert.dm

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,10 @@
113113
/// Boolean. If TRUE, the Click() proc will attempt to Click() on the master first if there is a master.
114114
var/click_master = TRUE
115115

116+
/atom/movable/screen/alert/Initialize(mapload, datum/hud/hud_owner)
117+
. = ..()
118+
if(mouse_over_pointer == MOUSE_HAND_POINTER)
119+
add_filter("clickglow", 2, outline_filter(color = COLOR_GOLD, size = 1))
116120

117121
/atom/movable/screen/alert/MouseEntered(location,control,params)
118122
. = ..()

code/datums/records/manifest.dm

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,23 +104,39 @@ GLOBAL_DATUM_INIT(manifest, /datum/manifest, new)
104104
if(!(person.mind?.assigned_role.job_flags & JOB_CREW_MANIFEST))
105105
return
106106

107+
// replace any existing record with a fresh one
108+
// this has the obvious glaring issue that two people with the same name will result in one record,
109+
// but records have that issue in general so it's not exactly a new problem
110+
var/datum/record/crew/existing_record = find_record(person.real_name, FALSE)
111+
if(existing_record)
112+
qdel(existing_record)
113+
var/datum/record/locked/existing_locked = find_record(person.real_name, TRUE)
114+
if(existing_locked)
115+
qdel(existing_locked)
116+
107117
// Attempt to get assignment from ID, otherwise default to mind.
108118
var/obj/item/card/id/id_card = person.get_idcard(hand_first = FALSE)
109119
var/assignment = id_card?.assignment || id_card?.trim?.assignment || person.mind.assigned_role.title
110120
var/mutable_appearance/character_appearance = new(person.appearance)
121+
// some niche circumstances can result in us being lying down before injection - we need to undo that for the photo
122+
if(person.body_position == LYING_DOWN)
123+
UNLINT(character_appearance.transform = character_appearance.transform.Turn(-person.lying_angle))
124+
111125
var/person_gender = "Other"
112-
if(person.gender == "male")
126+
if(person.gender == MALE)
113127
person_gender = "Male"
114-
if(person.gender == "female")
128+
if(person.gender == FEMALE)
115129
person_gender = "Female"
130+
person_gender += " ([person.p_they()]/[person.p_them()])"
131+
116132
var/datum/dna/stored/record_dna = new()
117133
person.dna.copy_dna(record_dna)
118134

119135
SEND_SIGNAL(src, COMSIG_MANIFEST_HUMAN_INJECTED, person)
120136

121137
var/datum/record/locked/lockfile = new(
122138
age = person.age,
123-
blood_type = "[person.get_blood_type() || "None"]", // NON-MODULE CHANGE / NEEDS TESTING
139+
blood_type = "[person.get_blood_type() || "None"]",
124140
character_appearance = character_appearance,
125141
dna_string = record_dna.unique_enzymes,
126142
fingerprint = md5(record_dna.unique_identity),
@@ -137,7 +153,7 @@ GLOBAL_DATUM_INIT(manifest, /datum/manifest, new)
137153

138154
new /datum/record/crew(
139155
age = person.age,
140-
blood_type = "[person.get_blood_type() || "None"]", // NON-MODULE CHANGE / NEEDS TESTING
156+
blood_type = "[person.get_blood_type() || "None"]",
141157
character_appearance = character_appearance,
142158
dna_string = record_dna.unique_enzymes,
143159
fingerprint = md5(record_dna.unique_identity),

code/game/machinery/announcement_system.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ GLOBAL_LIST_EMPTY(announcement_systems)
9191
message = CompileText(newhead, user, rank)
9292
else if(message_type == "ARRIVALS_BROKEN")
9393
message = "The arrivals shuttle has been damaged. Docking for repairs..."
94+
else if(message_type == "DESPAWN")
95+
message = CompileText("%PERSON, %RANK, has entered long-term crew storage.", user, rank)
9496

9597
broadcast(message, channels)
9698

0 commit comments

Comments
 (0)