Skip to content

Commit fda7141

Browse files
author
Matt Atlas
committed
Merge remote-tracking branch 'Aurora/master' into whereabouts_of_the_heart
# Conflicts: # tgui/public/tgui.bundle.js
2 parents d51ea9e + 91226d4 commit fda7141

File tree

144 files changed

+86925
-8763
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

144 files changed

+86925
-8763
lines changed

aurorastation.dme

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2022,6 +2022,7 @@
20222022
#include "code\modules\clothing\masks\xeno\skrell.dm"
20232023
#include "code\modules\clothing\masks\xeno\tajara.dm"
20242024
#include "code\modules\clothing\masks\xeno\unathi.dm"
2025+
#include "code\modules\clothing\pants\highvis.dm"
20252026
#include "code\modules\clothing\pants\pants.dm"
20262027
#include "code\modules\clothing\pants\shorts.dm"
20272028
#include "code\modules\clothing\pants\skirts.dm"
@@ -2082,6 +2083,7 @@
20822083
#include "code\modules\clothing\suits\armor.dm"
20832084
#include "code\modules\clothing\suits\hazardvests.dm"
20842085
#include "code\modules\clothing\suits\hazmat.dm"
2086+
#include "code\modules\clothing\suits\highvis.dm"
20852087
#include "code\modules\clothing\suits\hoodies.dm"
20862088
#include "code\modules\clothing\suits\jobs.dm"
20872089
#include "code\modules\clothing\suits\labcoat.dm"
@@ -3161,6 +3163,7 @@
31613163
#include "code\modules\organs\subtypes\augment\augments\zengu_plate.dm"
31623164
#include "code\modules\organs\subtypes\parasite\_parasite.dm"
31633165
#include "code\modules\organs\subtypes\parasite\black_kois.dm"
3166+
#include "code\modules\organs\subtypes\parasite\greim_eggs.dm"
31643167
#include "code\modules\organs\subtypes\parasite\heart_fluke.dm"
31653168
#include "code\modules\organs\subtypes\parasite\kois.dm"
31663169
#include "code\modules\organs\subtypes\parasite\tumours.dm"
@@ -4200,6 +4203,11 @@
42004203
#include "maps\away\ships\scc\scc_scout_ship_areas.dm"
42014204
#include "maps\away\ships\scc\scc_scout_ship_ghostroles.dm"
42024205
#include "maps\away\ships\scc\scc_scout_ship_landmarks.dm"
4206+
#include "maps\away\ships\sol\sol_frigate\sol_frigateship.dm"
4207+
#include "maps\away\ships\sol\sol_frigate\sol_frigateship_areas.dm"
4208+
#include "maps\away\ships\sol\sol_frigate\sol_frigateship_ghostroles.dm"
4209+
#include "maps\away\ships\sol\sol_frigate\sol_frigateship_landmarks.dm"
4210+
#include "maps\away\ships\sol\sol_frigate\sol_frigateship_shuttle.dm"
42034211
#include "maps\away\ships\sol\sol_merc\fsf_patrol_ship.dm"
42044212
#include "maps\away\ships\sol\sol_merc\fsf_patrol_ship_areas.dm"
42054213
#include "maps\away\ships\sol\sol_merc\fsf_patrol_ship_ghostroles.dm"

code/__DEFINES/access.dm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -888,5 +888,6 @@
888888
desc = "Himean Military Patrol Vessel"
889889

890890
#define ACCESS_QUARANTINED_OUTPOST_ENGINEER 254
891+
/datum/access/quarantined_outpost_engineer
891892
id = ACCESS_QUARANTINED_OUTPOST_ENGINEER
892893
desc = "Outpost Nemora, Engineering Clearance"

code/__DEFINES/mobs.dm

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
#define BP_WORM_NERVE "nerve fluke"
166166
#define BP_TUMOUR_NONSPREADING "benign tumour"
167167
#define BP_TUMOUR_SPREADING "malignant tumour"
168+
#define BP_GREIMORIAN_EGGCLUSTER "greimorian egg cluster"
168169

169170
//Augment organs
170171
#define BP_AUG_ACC_CORDS "modified synthetic vocal cords"
@@ -196,6 +197,13 @@
196197
#define BP_AUG_HAIR "synthetic hair extensions"
197198
#define BP_AUG_HEALTHSCAN "integrated health scanner"
198199
#define BP_AUG_LANGUAGE "integrated language processor"
200+
#define BP_AUG_LANGUAGE_CTHUR "cthur language processor"
201+
#define BP_AUG_LANGUAGE_KLAX "klaxan language processor"
202+
#define BP_AUG_LANGUAGE_MIKUETZ "mikuetz language processor"
203+
#define BP_AUG_LANGUAGE_TRADEBAND "tradeband language processor"
204+
#define BP_AUG_LANGUAGE_VEKATAK "vekatak language processor"
205+
#define BP_AUG_LANGUAGE_ZENG "zeng language processor"
206+
#define BP_AUG_LANGUAGE_ZINO "zino language processor"
199207
#define BP_AUG_LIGHTER "retractable lighter"
200208
#define BP_AUG_MAGBOOT "integrated mag-claws"
201209
#define BP_AUG_MEMORY "memory inhibitor"

code/__DEFINES/projectiles.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
// Delete self without hitting
99
#define PROJECTILE_DELETE_WITHOUT_HITTING 3
1010

11-
// IFF values
11+
// IFF values. As of 2025/11, these are not used by any game mechanics; see 'var/iff_faction' and 'var/iff_capable'
1212
#define IFF_DEFAULT "station"
1313
#define IFF_TCFL "tcfl"
1414
#define IFF_SYNDICATE "syndicate"

code/__HELPERS/text.dm

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -667,6 +667,9 @@
667667
t = replacetext(t, "\[barcode\]", "<img src = barcode[rand(0, 3)].png>")
668668
t = replacetext(t, "\[time\]", "[worldtime2text()]")
669669
t = replacetext(t, "\[date\]", "[worlddate2text()]")
670+
t = replacetext(t, "\[tajtime\]", "[tajaran_time()]")
671+
t = replacetext(t, "\[tajdate\]", "[tajaran_full_date()]")
672+
t = replacetext(t, "\[cr\]", "")
670673
t = replacetext(t, "\[editorbr\]", "<BR>")
671674
t = replacetext(t, @"[image id=([\w]*?\.[\w]*?)]", "<img style=\"display:block;width:90%;\" src = [GLOB.config.docs_image_host]$1></img>")
672675
return t

code/__HELPERS/time.dm

Lines changed: 66 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,27 @@ var/round_start_time
55

66
//Returns the world time in english
77
/proc/worldtime2text(time = world.time, timeshift = 1)
8-
if(!roundstart_hour) roundstart_hour = REALTIMEOFDAY - (TIME_OFFSET HOURS)
8+
if(!roundstart_hour)
9+
roundstart_hour = REALTIMEOFDAY - (TIME_OFFSET HOURS)
910
return timeshift ? time2text(time+roundstart_hour, "hh:mm") : time2text(time, "hh:mm")
1011

1112
/proc/worldtime2hours()
1213
if (!roundstart_hour)
1314
worldtime2text()
14-
. = text2num(time2text(world.time + (roundstart_hour HOURS), "hh"))
15+
. = text2num(time2text(world.time+roundstart_hour, "hh"))
16+
17+
/proc/worldtime2minutes()
18+
if (!roundstart_hour)
19+
worldtime2text()
20+
. = text2num(time2text(world.time+roundstart_hour, "mm"))
1521

1622
/proc/worlddate2text()
1723
return num2text(GLOB.game_year) + "-" + time2text(world.timeofday, "MM-DD")
1824

1925
/proc/time_stamp()
2026
return time2text(world.timeofday, "hh:mm:ss")
2127

28+
2229
/**
2330
* Check if specific day of the year
2431
*
@@ -121,3 +128,60 @@ var/real_round_start_time
121128
if(hour)
122129
hourT = " and [hour] hour[(hour != 1)? "s":""]"
123130
return "[day] day[(day != 1)? "s":""][hourT][minuteT][secondT]"
131+
132+
/**
133+
* The current time on Adhomai
134+
*/
135+
/proc/tajaran_time()
136+
var/adhomian_time = worldtime2hours()
137+
var/adhomian_minute = worldtime2minutes()
138+
var/adhomian_day = tajaran_date()
139+
if(ISEVEN(adhomian_day))
140+
adhomian_time += 24
141+
if(adhomian_minute < 10) // make it display 5:08 instead of 5:8 when the time is in single digits
142+
adhomian_minute = "0[adhomian_minute]"
143+
return "[adhomian_time]:[adhomian_minute]"
144+
145+
/**
146+
* The current month/season on Adhomai
147+
*/
148+
/proc/tajaran_month()
149+
var/static/months = list("Menshe-aysaif", "Sil'nryy-aysaif", "Menshe-rhazzimy", "Sil'nryy-rhazzimy")
150+
151+
var/adhomian_month = text2num(time2text(world.time, "MM"))
152+
153+
adhomian_month = months[Ceiling(adhomian_month/3)]
154+
155+
return adhomian_month
156+
157+
/**
158+
* The current date on Adhomai
159+
*/
160+
/proc/tajaran_date()
161+
var/adhomian_day = text2num(time2text(world.time, "DD"))
162+
var/current_month = text2num(time2text(world.time, "MM"))
163+
switch(current_month)
164+
if(2, 5, 8, 11)
165+
adhomian_day += 31
166+
if(6, 9, 12)
167+
adhomian_day += 61
168+
if(3)
169+
adhomian_day += 59 + isLeap(text2num(time2text(world.realtime, "YYYY"))) // we can conveniently use the result of `isLeap` to add 1 when we are in a leap year
170+
171+
adhomian_day = FLOOR(adhomian_day / 2, 1)
172+
173+
return adhomian_day
174+
175+
/**
176+
* The current year on Adhomai
177+
*/
178+
/proc/tajaran_year()
179+
return GLOB.game_year + 1158
180+
181+
/**
182+
* The full year, month and date on Adhomai
183+
*/
184+
/proc/tajaran_full_date()
185+
var/adhomian_month = text2num(time2text(world.time, "MM"))
186+
adhomian_month = Ceiling(adhomian_month/3)
187+
return "[tajaran_year()]-[adhomian_month]-[tajaran_date()]"

code/__HELPERS/type2type.dm

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,21 @@
109109
if (degree < 315) return WEST
110110
return NORTH|WEST
111111

112+
/**
113+
* Returns the trigonometric degrees of a given direction.
114+
* Use this instead of dir2angle if you're using cos() and sin() to generate a velocity or acceleration vector.
115+
*/
116+
/proc/dir2degree(var/D)
117+
switch (D) // Starting from 0 on a Unit Circle
118+
if (EAST) return 0
119+
if (NORTHEAST) return 45
120+
if (NORTH) return 90
121+
if (NORTHWEST) return 135
122+
if (WEST) return 180
123+
if (SOUTHWEST) return 225
124+
if (SOUTH) return 270
125+
if (SOUTHEAST) return 315
126+
112127
// Returns the north-zero clockwise angle in degrees, given a direction
113128
/proc/dir2angle(var/D)
114129
switch (D)

0 commit comments

Comments
 (0)