Skip to content

Commit c216ddc

Browse files
Merge branch 'dev' of github.com:NebulaSS13/Nebula into fork/pyrelight
2 parents 2e90d19 + 471587d commit c216ddc

File tree

479 files changed

+2978
-2255
lines changed

Some content is hidden

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

479 files changed

+2978
-2255
lines changed
Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
// The default value for all uses of set background. Set background can cause gradual lag and is recommended you only turn this on if necessary.
2-
// 1 will enable set background. 0 will disable set background.
3-
#define BACKGROUND_ENABLED 0
4-
51
// If REFTRACK_IN_CI is defined, the reftracker will run in CI.
62
#define REFTRACK_IN_CI
73
#if defined(REFTRACK_IN_CI) && defined(UNIT_TEST) && !defined(SPACEMAN_DMM)

code/__defines/ZAS.dm

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -57,29 +57,25 @@
5757
}
5858

5959
#ifdef MULTIZAS
60-
61-
var/global/list/csrfz_check = list(NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST, NORTHUP, EASTUP, WESTUP, SOUTHUP, NORTHDOWN, EASTDOWN, WESTDOWN, SOUTHDOWN)
62-
var/global/list/gzn_check = list(NORTH, SOUTH, EAST, WEST, UP, DOWN)
60+
#define ZAS_CSRFZ_CHECK global.cornerdirsz
61+
#define ZAS_GZN_CHECK global.cardinalz
6362

6463
#define ATMOS_CANPASS_TURF(ret, A, B) \
6564
if (A.blocks_air & AIR_BLOCKED || B.blocks_air & AIR_BLOCKED) { \
6665
ret = BLOCKED; \
6766
} \
68-
else if (B.z != A.z) { \
69-
if (B.z < A.z) { \
70-
ret = (A.z_flags & ZM_ALLOW_ATMOS) ? ZONE_BLOCKED : BLOCKED; \
71-
} \
72-
else { \
73-
ret = (B.z_flags & ZM_ALLOW_ATMOS) ? ZONE_BLOCKED : BLOCKED; \
74-
} \
67+
else if (B.z < A.z) { \
68+
ret = (A.z_flags & ZM_ALLOW_ATMOS) ? ZONE_BLOCKED : BLOCKED; \
7569
} \
76-
else if (A.blocks_air & ZONE_BLOCKED || B.blocks_air & ZONE_BLOCKED) { \
77-
ret = (A.z == B.z) ? ZONE_BLOCKED : AIR_BLOCKED; \
70+
else if(B.z > A.z) { \
71+
ret = (B.z_flags & ZM_ALLOW_ATMOS) ? ZONE_BLOCKED : BLOCKED; \
7872
} \
79-
else if (A.contents.len) { \
73+
else if ((A.blocks_air & ZONE_BLOCKED) || (B.blocks_air & ZONE_BLOCKED)) { \
74+
ret = ZONE_BLOCKED; \
75+
} \
76+
else if (length(A.contents)) { \
8077
ret = 0;\
81-
for (var/thing in A) { \
82-
var/atom/movable/AM = thing; \
78+
for (var/atom/movable/AM as anything in A) { \
8379
ATMOS_CANPASS_MOVABLE(ret, AM, B); \
8480
if (ret == BLOCKED) { \
8581
break;\
@@ -88,8 +84,8 @@ var/global/list/gzn_check = list(NORTH, SOUTH, EAST, WEST, UP, DOWN)
8884
}
8985
#else
9086

91-
var/global/list/csrfz_check = list(NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST)
92-
var/global/list/gzn_check = list(NORTH, SOUTH, EAST, WEST)
87+
#define ZAS_CSRFZ_CHECK global.cornerdirs
88+
#define ZAS_GZN_CHECK global.cardinal
9389

9490
#define ATMOS_CANPASS_TURF(ret, A, B) \
9591
if (A.blocks_air & AIR_BLOCKED || B.blocks_air & AIR_BLOCKED) { \
@@ -98,7 +94,7 @@ var/global/list/gzn_check = list(NORTH, SOUTH, EAST, WEST)
9894
else if (A.blocks_air & ZONE_BLOCKED || B.blocks_air & ZONE_BLOCKED) { \
9995
ret = ZONE_BLOCKED; \
10096
} \
101-
else if (A.contents.len) { \
97+
else if (length(A.contents)) { \
10298
ret = 0;\
10399
for (var/thing in A) { \
104100
var/atom/movable/AM = thing; \

code/__defines/flags.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ The latter will result in a linter warning and will not work correctly.
8484
#define ITEM_FLAG_NOCUFFS BITFLAG(11) // Gloves that have this flag prevent cuffs being applied
8585
#define ITEM_FLAG_CAN_HIDE_IN_SHOES BITFLAG(12) // Items that can be hidden in shoes that permit it
8686
#define ITEM_FLAG_PADDED BITFLAG(13) // When set on gloves, will act like pulling punches in unarmed combat.
87-
#define ITEM_FLAG_CAN_TAPE BITFLAG(14) // Whether the item can be be taped onto something using tape
87+
#define ITEM_FLAG_CAN_TAPE BITFLAG(14) // Whether the item can be taped onto something using tape
8888
#define ITEM_FLAG_IS_WEAPON BITFLAG(15) // Item is considered a weapon. Currently only used for force-based worth calculation.
8989

9090
// Flags for pass_flags (/atom/var/pass_flags)

code/__defines/gamemode.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#define CHOOSE_GAMEMODE_RETRY 2 // The gamemode could not be chosen; we will use the next most popular option voted in, or the default.
44
#define CHOOSE_GAMEMODE_REVOTE 3 // The gamemode could not be chosen; we need to have a revote.
55
#define CHOOSE_GAMEMODE_RESTART 4 // The gamemode could not be chosen; we will restart the server.
6-
#define CHOOSE_GAMEMODE_SILENT_REDO 5 // The gamemode could not be chosen; we request to have the the proc rerun on the next tick.
6+
#define CHOOSE_GAMEMODE_SILENT_REDO 5 // The gamemode could not be chosen; we request to have the proc rerun on the next tick.
77

88
//End game state, to manage round end.
99
#define END_GAME_NOT_OVER 1

code/__defines/item_effects.dm

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Identifiers for various categories of item effects.
2+
#define IE_CAT_DAMAGE "weff_damage"
3+
#define IE_CAT_STRIKE "weff_strike"
4+
#define IE_CAT_PARRY "weff_parry"
5+
#define IE_CAT_USED "weff_used"
6+
#define IE_CAT_WIELDED "weff_wield"
7+
#define IE_CAT_VISUAL "weff_visual"
8+
#define IE_CAT_LISTENER "weff_listener"
9+
#define IE_CAT_EXAMINE "weff_visible"
10+
#define IE_CAT_RANGED "weff_ranged"
11+
#define IE_CAT_PROCESS "weff_process"
12+
13+
// Identifiers for parameters for item effects.
14+
#define IE_PAR_USES "uses"
15+
#define IE_PAR_MAX_USES "max_uses"

code/__defines/qdel.dm

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,25 @@
2121
#define GC_QUEUE_ITEM_GCD_DESTROYED 3 //! Item's gc_destroyed var value. Used to detect ref reuse.
2222
#define GC_QUEUE_ITEM_INDEX_COUNT 3 //! Number of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index
2323

24-
#define GC_QUEUED_FOR_HARD_DEL -1
25-
#define GC_CURRENTLY_BEING_QDELETED -2
24+
// Defines for the time an item has to get its reference cleaned before it fails the queue and moves to the next.
25+
#define GC_FILTER_QUEUE (1 SECONDS)
26+
#define GC_CHECK_QUEUE (5 MINUTES)
27+
#define GC_DEL_QUEUE (10 SECONDS)
28+
29+
#define GC_CURRENTLY_BEING_QDELETED -1
2630

2731
#define QDELING(X) (X.gc_destroyed)
2832
#define QDELETED(X) (isnull(X) || QDELING(X))
2933
#define QDESTROYING(X) (isnull(X) || X.gc_destroyed == GC_CURRENTLY_BEING_QDELETED)
3034

3135
//Qdel helper macros.
32-
#define QDEL_IN(item, time) if(!isnull(item)) {addtimer(CALLBACK(item, TYPE_PROC_REF(/datum, qdel_self)), time, TIMER_STOPPABLE)}
33-
#define QDEL_IN_CLIENT_TIME(item, time) if(!isnull(item)) {addtimer(CALLBACK(item, TYPE_PROC_REF(/datum, qdel_self)), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME)}
36+
#define QDEL_IN(item, time) if(!isnull(item)) {addtimer(CALLBACK(item, TYPE_PROC_REF(/datum, qdel_self)), time)}
37+
#define QDEL_IN_CLIENT_TIME(item, time) if(!isnull(item)) {addtimer(CALLBACK(item, TYPE_PROC_REF(/datum, qdel_self)), time, TIMER_CLIENT_TIME)}
3438
#define QDEL_NULL(item) if(item) {qdel(item); item = null}
3539
#define QDEL_NULL_SCREEN(item) if(client) { client.screen -= item; }; QDEL_NULL(item)
3640
#define QDEL_NULL_LIST(x) if(x) { for(var/y in x) { qdel(y) }}; if(x) {x.Cut(); x = null } // Second x check to handle items that LAZYREMOVE on qdel.
3741
#define QDEL_LIST(L) if(L) { for(var/I in L) qdel(I); L.Cut(); }
38-
#define QDEL_LIST_IN(L, time) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(______qdel_list_wrapper), L), time, TIMER_STOPPABLE)
42+
#define QDEL_LIST_IN(L, time) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(______qdel_list_wrapper), L), time)
3943
#define QDEL_LIST_ASSOC(L) if(L) { for(var/I in L) { qdel(L[I]); qdel(I); } L.Cut(); }
4044
#define QDEL_LIST_ASSOC_VAL(L) if(L) { for(var/I in L) qdel(L[I]); L.Cut(); }
4145

code/__defines/research.dm

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
#define HOLLOW_OBJECT_MATTER_MULTIPLIER 0.05
2020
#define BASE_OBJECT_MATTER_MULTPLIER 0.25
2121

22-
#define GENERIC_SMELTING_HEAT_POINT 1350 CELSIUS
22+
#define LOW_SMELTING_HEAT_POINT 1150 CELSIUS // Reachable with coal in a kiln on the medieval maps.
23+
#define GENERIC_SMELTING_HEAT_POINT 1350 CELSIUS // Reachable with coal and a bellows in a kiln on medieval maps.
2324
#define HIGH_SMELTING_HEAT_POINT 4000 CELSIUS // must be at least 4074K (3800 C) to melt graphite
2425

2526
#define TECH_MATERIAL "materials"

code/__defines/species.dm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
#define SPECIES_FLAG_NO_BLOCK BITFLAG(6) // Unable to block or defend itself from attackers.
99
#define SPECIES_FLAG_NEED_DIRECT_ABSORB BITFLAG(7) // This species can only have their DNA taken by direct absorption.
1010
#define SPECIES_FLAG_LOW_GRAV_ADAPTED BITFLAG(8) // This species is used to lower than standard gravity, affecting stamina in high-grav
11+
#define SPECIES_FLAG_ABSORB_ELECTRICITY BITFLAG(9) // This species can absorb electricity; snowflake flag for old slime people.
1112

1213
// Species spawn flags
1314
#define SPECIES_IS_WHITELISTED BITFLAG(0) // Must be whitelisted to play.

code/__defines/subsystems.dm

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
#define INITIALIZATION_INSSATOMS 0 //New should not call Initialize
2-
#define INITIALIZATION_INSSATOMS_LATE 1 //New should not call Initialize; after the first pass is complete (handled differently)
3-
#define INITIALIZATION_INNEW_MAPLOAD 2 //New should call Initialize(TRUE)
4-
#define INITIALIZATION_INNEW_REGULAR 3 //New should call Initialize(FALSE)
2+
#define INITIALIZATION_INNEW_MAPLOAD 1 //New should call Initialize(TRUE)
3+
#define INITIALIZATION_INNEW_REGULAR 2 //New should call Initialize(FALSE)
54

65
#define INITIALIZE_HINT_NORMAL 0 //Nothing happens
76
#define INITIALIZE_HINT_LATELOAD 1 //Call LateInitialize

code/_helpers/files.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//Sends resource files to client cache
22
/client/proc/getFiles()
33
for(var/file in args)
4-
direct_output(src, browse_rsc(file))
4+
send_rsc(src, file, null)
55

66
/client/proc/browse_files(root="data/logs/", max_iterations=10, list/valid_extensions=list(".txt",".log",".htm"))
77
var/path = root

0 commit comments

Comments
 (0)