Skip to content

Commit 2fa8147

Browse files
authored
Merge branch 'DaedalusDock:master' into hair-edits
2 parents 796b9bb + 78b96dc commit 2fa8147

File tree

345 files changed

+4757
-1697
lines changed

Some content is hidden

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

345 files changed

+4757
-1697
lines changed

.github/workflows/run_integration_tests.yml

-8
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,6 @@ on:
1616
jobs:
1717
run_integration_tests:
1818
runs-on: ubuntu-latest
19-
services:
20-
mysql:
21-
image: mysql:latest
22-
env:
23-
MYSQL_ROOT_PASSWORD: root
24-
ports:
25-
- 3306
26-
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
2719
steps:
2820
- uses: actions/checkout@v4
2921
- name: Restore BYOND cache

_maps/map_files/Theseus/Theseus.dmm

+34-5
Original file line numberDiff line numberDiff line change
@@ -15248,6 +15248,9 @@
1524815248
},
1524915249
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
1525015250
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
15251+
/obj/structure/cable/yellow{
15252+
icon_state = "12"
15253+
},
1525115254
/turf/open/floor/iron,
1525215255
/area/station/hallway/primary/aft)
1525315256
"fCV" = (
@@ -18108,9 +18111,6 @@
1810818111
/turf/open/floor/plating,
1810918112
/area/station/medical/virology)
1811018113
"gHq" = (
18111-
/obj/machinery/modular_computer/console/preset/command{
18112-
dir = 8
18113-
},
1811418114
/obj/structure/disposalpipe/segment{
1811518115
dir = 4
1811618116
},
@@ -18120,6 +18120,9 @@
1812018120
/obj/structure/cable/yellow{
1812118121
icon_state = "9"
1812218122
},
18123+
/obj/machinery/computer/pager/aether{
18124+
dir = 8
18125+
},
1812318126
/turf/open/floor/carpet/blue,
1812418127
/area/station/command/heads_quarters/cmo)
1812518128
"gHx" = (
@@ -20240,6 +20243,15 @@
2024020243
/obj/structure/overfloor_catwalk/iron_dark,
2024120244
/turf/open/floor/plating,
2024220245
/area/station/engineering/main)
20246+
"hHn" = (
20247+
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
20248+
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
20249+
/obj/structure/overfloor_catwalk/iron_dark,
20250+
/obj/structure/cable/yellow{
20251+
icon_state = "10"
20252+
},
20253+
/turf/open/floor/plating,
20254+
/area/station/service/janitor)
2024320255
"hHy" = (
2024420256
/obj/machinery/disposal/bin,
2024520257
/obj/machinery/firealarm/directional/west,
@@ -23258,6 +23270,17 @@
2325823270
/obj/effect/turf_decal/stripes/line,
2325923271
/turf/open/floor/iron,
2326023272
/area/station/command/gateway)
23273+
"iLU" = (
23274+
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
23275+
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
23276+
/obj/structure/cable/yellow{
23277+
icon_state = "3"
23278+
},
23279+
/obj/structure/cable/yellow{
23280+
icon_state = "5"
23281+
},
23282+
/turf/open/floor/iron,
23283+
/area/station/hallway/primary/aft)
2326123284
"iMi" = (
2326223285
/obj/effect/spawner/structure/window/reinforced,
2326323286
/obj/effect/mapping_helpers/paint_wall/medical,
@@ -32824,6 +32847,9 @@
3282432847
/obj/machinery/camera/directional/west{
3282532848
c_tag = "Custodial Closet"
3282632849
},
32850+
/obj/structure/cable/yellow{
32851+
icon_state = "1"
32852+
},
3282732853
/turf/open/floor/iron,
3282832854
/area/station/service/janitor)
3282932855
"mqo" = (
@@ -42601,6 +42627,9 @@
4260142627
},
4260242628
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
4260342629
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
42630+
/obj/structure/cable/yellow{
42631+
icon_state = "12"
42632+
},
4260442633
/turf/open/floor/iron,
4260542634
/area/station/service/janitor)
4260642635
"pRf" = (
@@ -95664,7 +95693,7 @@ bZK
9566495693
gNa
9566595694
bZK
9566695695
bZK
95667-
bZK
95696+
iLU
9566895697
xLD
9566995698
bZK
9567095699
bZK
@@ -96435,7 +96464,7 @@ cKc
9643596464
aLs
9643696465
acg
9643796466
nRZ
96438-
qGh
96467+
hHn
9643996468
mqi
9644096469
thq
9644196470
eBp

code/__DEFINES/_helpers.dm

+3
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,6 @@
2424
// Custom types that we define don't get a unique id, but this is useful for identifying
2525
// types that don't normally have a way to run istype() on them.
2626
#define TYPEID(thing) copytext(REF(thing), 4, 6)
27+
28+
/// Abstraction over using mob.client to just check if there's a connected player.
29+
#define HAS_CONNECTED_PLAYER(mob) (mob.client)

code/__DEFINES/aether_runes.dm

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
// Generic BB keys
2+
#define RUNE_BB_INVOKER "user"
3+
#define RUNE_BB_TOME "tome"
4+
#define RUNE_BB_CANCEL_REASON "cancel_reason"
5+
#define RUNE_BB_CANCEL_SOURCE "cancel_source"
6+
#define RUNE_BB_TARGET_MOB "target_mob"
7+
/// The reagent container containing the blood required.
8+
#define RUNE_BB_BLOOD_CONTAINER "revival_blood_container"
9+
10+
// Exchange rune
11+
/// The list of parts to exchange for the exchange rune.
12+
#define RUNE_BB_EXCHANGE_PARTS "exchange_parts"
13+
14+
// Revival rune
15+
/// The heart used.
16+
#define RUNE_BB_REVIVAL_HEART "revival_heart"
17+
/// The reagent container containing Woundseal used.
18+
#define RUNE_BB_REVIVAL_WOUNDSEAL_CONTAINER "revival_woundseal_container"
19+
20+
// Heal rune
21+
/// List of reagents containers containing tinctures.
22+
#define RUNE_BB_HEAL_REAGENT_CONTAINERS "heal_reagent_containers"
23+
24+
/// Graceful fails should have NO SIDE EFFECTS.
25+
#define RUNE_FAIL_GRACEFUL "graceful_fail"
26+
27+
// ~& Global failure states, handle these always! &~//
28+
#define RUNE_FAIL_INVOKER_INCAP "invoker_incap"
29+
/// Helper removed their hand from the rune.
30+
#define RUNE_FAIL_HELPER_REMOVED_HAND "helper_incap"
31+
/// Target mob moved off the center.
32+
#define RUNE_FAIL_TARGET_MOB_MOVED "target_mob_moved"
33+
/// Target stood up.
34+
#define RUNE_FAIL_TARGET_STOOD_UP "target_stood_up"
35+
#define RUNE_FAIL_TOME_GONE "tome_gone"
36+
/// An item has moved out of the rune.
37+
#define RUNE_FAIL_TARGET_ITEM_OUT_OF_RUNE "item_out_of_rune"
38+
39+
/// Special failure condition where the revival target was revived mid ritual.
40+
#define RUNE_FAIL_REVIVAL_TARGET_ALIVE "revival_target_alive"
41+
42+
#define RUNE_INVOKING_PENDING_CANCEL -1
43+
#define RUNE_INVOKING_IDLE 0
44+
#define RUNE_INVOKING_ACTIVE 1

code/__DEFINES/dream.dm

+8-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1-
/// Dream is generic, and rollable by anyone.
2-
#define DREAM_GENERIC (1<<0)
31
/// Dream can only be dreampt once per round per mind.
4-
#define DREAM_ONCE_PER_ROUND (1<<1)
2+
#define DREAM_ONCE_PER_ROUND (1<<0)
53
/// Dream is considered complete even if cut short.
6-
#define DREAM_CUT_SHORT_IS_COMPLETE (1<<2)
4+
#define DREAM_CUT_SHORT_IS_COMPLETE (1<<1)
5+
6+
/// Rollable by anyone
7+
#define DREAM_CLASS_GENERIC "generic_dream"
8+
#define DREAM_CLASS_DETECTIVE "detective_dream"
9+
#define DREAM_CLASS_AETHERITE "aether_dream"
10+
#define DREAM_CLASS_VAMPIRE "vampire_dream"

code/__DEFINES/economy.dm

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
#define ACCOUNT_ENG "ENG"
2222
#define ACCOUNT_ENG_NAME "Daedalus Industries Funds"
2323
#define ACCOUNT_MED "MED"
24-
#define ACCOUNT_MED_NAME "Aether Pharmaceuticals Funds"
24+
#define ACCOUNT_MED_NAME "Aether Association Funds"
2525
#define ACCOUNT_SRV "SRV"
2626
#define ACCOUNT_CAR "CAR"
2727
#define ACCOUNT_CAR_NAME "Hermes Galactic Freight Funds"

code/__DEFINES/inventory.dm

+4
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@
114114
//defines for the index of hands
115115
#define LEFT_HANDS 1
116116
#define RIGHT_HANDS 2
117+
/// Checks if the value is "left" - same as ISEVEN, but used primarily for hand or foot index contexts
118+
#define IS_RIGHT_INDEX(value) (value % 2 == 0)
119+
/// Checks if the value is "right" - same as ISODD, but used primarily for hand or foot index contexts
120+
#define IS_LEFT_INDEX(value) (value % 2 != 0)
117121

118122
//flags for female outfits: How much the game can safely "take off" the uniform without it looking weird
119123
/// For when there's simply no need for a female version of this uniform.

code/__DEFINES/jobs.dm

+3-3
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@
5252
#define JOB_STATION_ENGINEER "Station Engineer"
5353
#define JOB_ATMOSPHERIC_TECHNICIAN "Atmospheric Technician"
5454
//Medical
55-
#define JOB_MEDICAL_DIRECTOR "Medical Director"
56-
#define JOB_MEDICAL_DOCTOR "General Practitioner"
55+
#define JOB_AUGUR "Augur"
56+
#define JOB_ACOLYTE "Acolyte"
5757
#define JOB_PARAMEDIC "Paramedic"
5858
#define JOB_CHEMIST "Chemist"
5959
#define JOB_VIROLOGIST "Virologist"
@@ -109,7 +109,7 @@
109109
#define DEPARTMENT_BITFLAG_SCIENCE (1<<5)
110110
#define DEPARTMENT_SCIENCE "Science"
111111
#define DEPARTMENT_BITFLAG_MEDICAL (1<<6)
112-
#define DEPARTMENT_MEDICAL "Aether Pharmaceuticals"
112+
#define DEPARTMENT_MEDICAL "Aether Association"
113113
#define DEPARTMENT_BITFLAG_SILICON (1<<7)
114114
#define DEPARTMENT_SILICON "Silicon"
115115
#define DEPARTMENT_BITFLAG_ASSISTANT (1<<8)

code/__DEFINES/magic.dm

+2
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
#define SCHOOL_NECROMANCY "necromancy"
2727
/// Other forbidden magics, such as heretic spells
2828
#define SCHOOL_FORBIDDEN "forbidden"
29+
/// Blood magic
30+
#define SCHOOL_BLOOD "blood"
2931

3032
// Invocation types - what does the wizard need to do to invoke (cast) the spell?
3133
/// Allows being able to cast the spell without saying or doing anything.

code/__DEFINES/maps.dm

-6
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,6 @@ require only minor tweaks.
6767
#define ZTRAIT_ICE_RUINS_UNDERGROUND "Ice Ruins Underground"
6868
#define ZTRAIT_ISOLATED_RUINS "Isolated Ruins" //Placing ruins on z levels with this trait will use turf reservation instead of usual placement.
6969

70-
// boolean - Is this Z-level used to house shuttles during transport
71-
#define ZTRAIT_TRANSIT "Transit"
72-
7370
// boolean - weather types that occur on the level
7471
#define ZTRAIT_SNOWSTORM "Weather_Snowstorm"
7572
#define ZTRAIT_VOIDSTORM "Weather_Voidstorm"
@@ -117,9 +114,6 @@ require only minor tweaks.
117114
///Z level traits for Secret Away Missions
118115
#define ZTRAITS_AWAY_SECRET list(ZTRAIT_AWAY = TRUE, ZTRAIT_SECRET = TRUE, ZTRAIT_NOPHASE = TRUE)
119116

120-
///Z level traits for the transit z level
121-
#define ZTRAITS_TRANSIT list(ZTRAIT_RESERVED = TRUE, ZTRAIT_TRANSIT = TRUE)
122-
123117
#define DL_NAME "name"
124118
#define DL_TRAITS "traits"
125119
#define DECLARE_LEVEL(NAME, TRAITS) list(DL_NAME = NAME, DL_TRAITS = TRAITS)

code/__DEFINES/packetnet.dm

+6
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@
3838
/// Network Class of a device, used as part of ping replies.
3939
#define PACKET_NETCLASS "netclass"
4040

41+
// Pagers
42+
/// Packet arg for pager types
43+
#define PACKET_ARG_PAGER_CLASS "pager_class"
44+
/// Packet arg for the message sent
45+
#define PACKET_ARG_PAGER_MESSAGE "pager_message"
46+
4147
// Special addresses
4248
#define NET_ADDRESS_PING "ping"
4349

code/__DEFINES/pager_defines.dm

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#define PAGER_CLASS_AETHER "aetherpager"
2+
#define PAGER_CLASS_MARS "marspager"
3+
#define PAGER_CLASS_MANAGEMENT "managementpager"

code/__DEFINES/pain.dm

+12-5
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
/// Chance to drop your held item passed here
2-
#define PAIN_THRESHOLD_DROP_ITEM 50
3-
/// Chance to reduce paralysis duration passed here
4-
#define PAIN_THRESHOLD_REDUCE_PARALYSIS 10
51
/// Stage at
62
#define SHOCK_MIN_PAIN_TO_BEGIN 30
73

@@ -24,12 +20,23 @@
2420

2521
/// The amount of pain where movement slowdown beings
2622
#define PAIN_AMT_BEGIN_SLOWDOWN (PAIN_AMT_PASSOUT * 0.075)
27-
#define PAIN_MAX_SLOWDOWN 5
23+
#define PAIN_MAX_SLOWDOWN 3
2824

2925
#define PAIN_AMT_LOW (PAIN_AMT_PASSOUT * 0.05)
3026
#define PAIN_AMT_MEDIUM (PAIN_AMT_PASSOUT * 0.35)
3127
#define PAIN_AMT_AGONIZING (PAIN_AMT_PASSOUT * 0.85)
3228

29+
#define PAIN_CLASS_NONE "none"
30+
#define PAIN_CLASS_NEGLIGIBLE "negligible"
31+
#define PAIN_CLASS_LOW "low"
32+
#define PAIN_CLASS_MEDIUM "medium"
33+
#define PAIN_CLASS_AGONIZING "agonizing"
34+
35+
/// Chance to drop your held item passed here
36+
#define PAIN_THRESHOLD_DROP_ITEM 75
37+
/// Chance to reduce sleep duration passed here
38+
#define PAIN_THRESHOLD_REDUCE_SLEEP 10
39+
3340
/// max_damage * this value is the amount of pain constantly applied when the limb bone is broken
3441
#define BROKEN_BONE_PAIN_FACTOR 0.1
3542
/// max_damage * this value is the amount of pain constantly applied when the limb is dislocated

code/__DEFINES/radio.dm

+1
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@
107107
#define RADIO_AIRLOCK "airlock"
108108
#define RADIO_MAGNETS "magnets"
109109
#define RADIO_PDAMESSAGE "pdamessage"
110+
#define RADIO_PAGER_MESSAGE "pager_message"
110111

111112
#define DEFAULT_SIGNALER_CODE 30
112113

code/__DEFINES/stamina.dm

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,4 +70,4 @@
7070
///The amount of stamina required to sprint
7171
#define STAMINA_MIN2SPRINT_MODIFER 0.4 //Same as exhaustion threshold
7272
///How much stamina is taken per tile while sprinting
73-
#define STAMINA_SPRINT_COST 4
73+
#define STAMINA_SPRINT_COST 8

code/__DEFINES/status_effects.dm

+6
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
#define STATUS_EFFECT_REPLACE 2
77
/// if it only allows one, and new instances just instead refresh the timer
88
#define STATUS_EFFECT_REFRESH 3
9+
/// if it only allows one, and new instances add to the timer
10+
#define STATUS_EFFECT_EXTEND 4
911

1012
///Processing flags - used to define the speed at which the status will work
1113
///This is fast - 0.2s between ticks (I believe!)
@@ -43,7 +45,11 @@
4345

4446
#define STASIS_DEBUG_HEALTH "stasis_debug_health"
4547

48+
/// Head fracture
4649
#define BROKEN_SKULL_EFFECT "broken_head"
50+
/// Missing or dead liver.
51+
#define DEAD_LIVER_EFFECT "dead_liver"
52+
4753
#define VAMPIRE_EFFECT "vampire_effect"
4854

4955
// Status effect application helpers.

code/__DEFINES/subsystems.dm

+1
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@
238238
#define FIRE_PRIORITY_GARBAGE 10
239239
#define FIRE_PRIORITY_AMBIENCE 5
240240
#define FIRE_PRIORITY_CODEX 5
241+
#define FIRE_PRIORITY_TITLE 5
241242

242243

243244

code/__DEFINES/traits.dm

+6-1
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,9 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
270270
/// Stops all slipping and sliding from ocurring
271271
#define TRAIT_NO_SLIP_ALL "noslip_all"
272272

273+
/// Invoking a Miracle rune
274+
#define TRAIT_INVOKING_MIRACLE "invokingmiracle"
275+
273276
#define TRAIT_NODEATH "nodeath"
274277
#define TRAIT_NOHARDCRIT "nohardcrit"
275278
#define TRAIT_NOSOFTCRIT "nosoftcrit"
@@ -470,6 +473,9 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
470473
/// Maybe worth generalizing into a general "is sneaky" / "is stealth" trait in the future.
471474
#define TRAIT_ALIEN_SNEAK "sneaking_alien"
472475

476+
/// Smoke temporarily cannot affect this mob.
477+
#define TRAIT_AFFECTED_BY_SMOKE_RECENTLY "affected_by_smoke_recently"
478+
473479
// METABOLISMS
474480
// Various jobs on the station have historically had better reactions
475481
// to various drinks and foodstuffs. Security liking donuts is a classic
@@ -507,7 +513,6 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
507513
#define TRAIT_LIGHTBULB_REMOVER "lightbulb_remover"
508514
#define TRAIT_KNOW_CYBORG_WIRES "know_cyborg_wires"
509515
#define TRAIT_KNOW_ENGI_WIRES "know_engi_wires"
510-
#define TRAIT_ENTRAILS_READER "entrails_reader"
511516
/// this skillchip trait lets you wash brains in washing machines to heal them
512517
#define TRAIT_BRAINWASHING "brainwashing"
513518

code/__DEFINES/traits_job.dm

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/// A trait given to Aether members on job spawn.
2+
#define TRAIT_AETHERITE "aetherite"

0 commit comments

Comments
 (0)