Skip to content

Updating from Neb dev. #92

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 491 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
491 commits
Select commit Hold shift + click to select a range
2fbb646
Replacing many R variables with robot or similar.
MistakeNot4892 Feb 17, 2025
da40763
R -> relation
MistakeNot4892 Feb 17, 2025
8cee422
Many single-letter vars changed in list helpers.
MistakeNot4892 Feb 17, 2025
6030ea6
L -> my_queue
MistakeNot4892 Feb 17, 2025
a1ce33c
Lots of bespoke single-letter var replacement.
MistakeNot4892 Feb 17, 2025
94df212
Generalising some bodybag code.
MistakeNot4892 Feb 17, 2025
eea5d03
Tweaks from review, squash before merge.
MistakeNot4892 Feb 18, 2025
7b8c583
Moves priority queue files into _helpers, privates vars.
MistakeNot4892 Feb 18, 2025
294cf92
C -> cell
MistakeNot4892 Feb 18, 2025
e8dd8f7
Makes airlock helpers for buttons actually work.
Neerti Feb 18, 2025
5e3ef78
Merge pull request #4872 from Neerti/nebula_airlock_helper_button_fix
MistakeNot4892 Feb 19, 2025
6596dad
Merge pull request #4869 from MistakeNot4892/tweak/bodybags
out-of-phaze Feb 19, 2025
35b73be
Fix humans and unathi having the wrong brightness
out-of-phaze Feb 21, 2025
b11faf1
Fix recipe unit test not catching conflicts for each category
out-of-phaze Feb 21, 2025
7680cd5
Fix conflict between waffle and plain cake recipe
out-of-phaze Feb 21, 2025
3b8cea5
Fix shields becoming frames when damaged
out-of-phaze Feb 21, 2025
6fe5b00
Merge pull request #4868 from MistakeNot4892/tweak/robit
out-of-phaze Feb 21, 2025
2ce565c
W -> used_item, inserting, removing, various
MistakeNot4892 Feb 18, 2025
bbd66b2
Auditing remaining attackby() overrides to use used_item.
MistakeNot4892 Feb 18, 2025
6cbe41d
Fixing seed storage var shadowing.
MistakeNot4892 Feb 18, 2025
18f6e00
Fix uses of initial(reagent.name)
out-of-phaze Feb 18, 2025
9509557
Remove unused SSmaterials.materials var
out-of-phaze Feb 18, 2025
4bb27b6
Make category datums not use initial(name)
out-of-phaze Feb 18, 2025
7e4acf4
Remove a number of uses of initial(name)
out-of-phaze Feb 18, 2025
8fa9955
Replace several instances of initial(desc)
out-of-phaze Feb 20, 2025
d3a9ee4
Allow slag to show up in the codex
out-of-phaze Feb 21, 2025
0e4f73c
Add a test to check for missing stat_immune flags on machines
out-of-phaze Feb 21, 2025
6fc525a
Fix alien whitelist not filtering displayed species
out-of-phaze Feb 21, 2025
9ea82af
Prevent href hacking of non-whitelisted species in character setup
out-of-phaze Feb 21, 2025
d2a78f6
Fix arguments to change_appearance
out-of-phaze Feb 21, 2025
2b563c7
Automatic changelog generation [ci skip]
NebulaSS13Bot Feb 22, 2025
8bf491a
Fix plural name for kobaloi species
out-of-phaze Feb 22, 2025
04bcf91
Merge pull request #4887 from out-of-phaze/fix/shield-decon
MistakeNot4892 Feb 23, 2025
41ee1c5
Merge pull request #4886 from out-of-phaze/fix/human-skin-tone
MistakeNot4892 Feb 23, 2025
2bd45f4
Merge pull request #4885 from out-of-phaze/fix/recipe-category-conflicts
MistakeNot4892 Feb 23, 2025
e74fde0
Automatic changelog generation for PR #4886 [ci skip]
NebulaSS13Bot Feb 23, 2025
46bd1d0
Merge pull request #4870 from MistakeNot4892/tweak/singlevars
out-of-phaze Feb 23, 2025
5b45891
Revert "Force update_icon calls prior to first SSicon_update flush to…
out-of-phaze Feb 22, 2025
a8ca18b
Fix ammo magazine lazyloaded matter values
out-of-phaze Feb 21, 2025
a5a4662
Fix unnecessary cache misses in the atom info repository
out-of-phaze Feb 21, 2025
333a652
Remove remaining uses of modified types in code
out-of-phaze Feb 21, 2025
6f920ad
Add NOSCREEN and NOINPUT immunity to various machines
out-of-phaze Feb 21, 2025
c8a98eb
Automatic changelog generation [ci skip]
NebulaSS13Bot Feb 24, 2025
c7203b7
Partially merging mob examine with atom examine.
MistakeNot4892 Feb 24, 2025
0b111a2
Fixes unarmed attack defaults being wonky.
MistakeNot4892 Feb 24, 2025
c0f547c
Merge pull request #4877 from out-of-phaze/codequality/no-initial
MistakeNot4892 Feb 24, 2025
82d5d44
Merge pull request #4892 from out-of-phaze/fix/alien-whitelist
MistakeNot4892 Feb 24, 2025
f6cee1f
Merge pull request #4893 from out-of-phaze/fix/appearance-changer
MistakeNot4892 Feb 24, 2025
479a075
Merge pull request #4895 from out-of-phaze/fix/kobaloi-pl
MistakeNot4892 Feb 24, 2025
5bbae04
Merge pull request #4888 from out-of-phaze/fix/recharger-screen
MistakeNot4892 Feb 24, 2025
5087870
Supply shuttle ignores non-dense obstacles.
MistakeNot4892 Feb 23, 2025
93c98f2
Merge branch 'stable' of github.com:NebulaSS13/Nebula into stagingupdate
MistakeNot4892 Feb 24, 2025
2cef3cb
Merge branch 'stagingupdate' of github.com:MistakeNot4892/Nebula into…
MistakeNot4892 Feb 24, 2025
0db19a3
Merge pull request #4902 from MistakeNot4892/stagingupdate
MistakeNot4892 Feb 24, 2025
b4dce67
Centrifuge needs input devices.
MistakeNot4892 Feb 24, 2025
e2a85c1
Merge pull request #4903 from MistakeNot4892/devupdate
MistakeNot4892 Feb 24, 2025
e9a3221
Improve hotplate heating for cooking vessels
out-of-phaze Feb 25, 2025
7ecef36
Make sub-tick cooling and reheating not break pot boiling overlay
out-of-phaze Feb 25, 2025
16629e3
Fix the skybox becoming blank after a full HUD reset
out-of-phaze Feb 25, 2025
30c3a0f
Rename single and double-letter loadout option variables
out-of-phaze Feb 18, 2025
78fa03a
Improve variable names and code quality in supply code
out-of-phaze Feb 18, 2025
a73bf4c
Clean up vehicle engine code
out-of-phaze Feb 18, 2025
68cd764
Clean up variable names in memory code
out-of-phaze Feb 18, 2025
aeb7c18
Fix two-letter decl variable names
out-of-phaze Feb 18, 2025
3974d5f
Optimize global event cleanup
out-of-phaze Feb 18, 2025
2f438f9
Remove RAISE_EVENT_REPEAT macro
out-of-phaze Feb 18, 2025
993f766
Fix manuals not initializing properly
out-of-phaze Feb 19, 2025
c6d2d19
Add CHECK_TICK to various procs that can block init
out-of-phaze Feb 19, 2025
c6deefa
Reduce unnecessary turf initialization on new levels
out-of-phaze Feb 19, 2025
b04cefd
Improve profiling
out-of-phaze Feb 19, 2025
66b27b3
Move event bookkeeping onto datums
out-of-phaze Feb 19, 2025
8eb902b
Fix observation unit tests for datum-based registration
out-of-phaze Feb 19, 2025
b72ac84
Simplify event registration cleanup
out-of-phaze Feb 19, 2025
c02467e
Preserve event bookkeeping vars through ChangeTurf
out-of-phaze Feb 22, 2025
35815d7
Merge pull request #4871 from out-of-phaze/codequality/misc-singlevar
MistakeNot4892 Feb 25, 2025
93ec59d
Merge pull request #4875 from out-of-phaze/optimization/event-registr…
MistakeNot4892 Feb 25, 2025
02861e8
Reagent datum now uses material instances instead of types as keys.
MistakeNot4892 Feb 19, 2025
6a4e655
Replace the global uplink singleton with a decl
out-of-phaze Feb 18, 2025
2db73f0
Break up global_lists.dm
out-of-phaze Feb 18, 2025
8ec5fd1
Consolidate or remove old global variables
out-of-phaze Feb 18, 2025
b36f610
Fix setup_human breaking when passed supplied_appearance
out-of-phaze Feb 20, 2025
5b92c93
Fix mob test bodytype validation
out-of-phaze Feb 20, 2025
c0cc10e
Fix parent_organ_data's has_children list increasing indefinitely
out-of-phaze Feb 21, 2025
1b2284b
Fix mob and organ unit tests
out-of-phaze Feb 21, 2025
e9aa067
Merge pull request #4876 from out-of-phaze/codequality/global-vars
MistakeNot4892 Feb 25, 2025
6da620f
Add UIDs to species decls
out-of-phaze Feb 21, 2025
07a6458
Make species procs use UID instead of name
out-of-phaze Feb 22, 2025
5a1c2b9
Fixing some overlooked uses of abstract wood.
MistakeNot4892 Feb 25, 2025
8aa430b
Merge pull request #4901 from MistakeNot4892/fixes/melee
out-of-phaze Feb 26, 2025
f42cc19
Merge pull request #4905 from out-of-phaze/fix/blank-skybox
MistakeNot4892 Feb 26, 2025
b5f1249
Merge pull request #4904 from out-of-phaze/fix/hotplate-boil
MistakeNot4892 Feb 26, 2025
7f533fd
Merge pull request #4900 from MistakeNot4892/fix/animal_examine
out-of-phaze Feb 26, 2025
1d824d3
Merge pull request #4906 from MistakeNot4892/fix/wood
out-of-phaze Feb 27, 2025
a1aad58
Swapping robot modules out for grippers.
MistakeNot4892 Feb 17, 2025
c4f645c
Merge pull request #4856 from MistakeNot4892/rework/robot_inventory
out-of-phaze Mar 1, 2025
66534bd
Automatic changelog generation for PR #4856 [ci skip]
NebulaSS13Bot Mar 1, 2025
b0047ef
Add compatibility for name-based species whitelists
out-of-phaze Mar 1, 2025
205bcaf
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 2, 2025
ace2725
Fix missing clothing modifiers unit test
out-of-phaze Feb 23, 2025
0e254b8
Add missing open states to NT black jacket
out-of-phaze Feb 23, 2025
2a63647
Add open state to letterman jacket
out-of-phaze Feb 23, 2025
20af0cd
Fix misnamed labcoat icon states
out-of-phaze Feb 23, 2025
41f3494
Add open state to the brown suit jacket
out-of-phaze Feb 23, 2025
8f391f9
Add kitbashed rolled world states for prisoner jumpsuit
out-of-phaze Feb 23, 2025
a67f70e
Add kitbashed rolled world states for quantum mechanic jumpsuit
out-of-phaze Feb 23, 2025
c59f991
Repath colorable bowties to the base bowtie type
out-of-phaze Feb 23, 2025
904460f
Fixes token ordering on letterman sleeve states.
MistakeNot4892 Feb 23, 2025
fd4c421
Corrects ordering of quantum jumpsuit state tokens.
MistakeNot4892 Feb 23, 2025
5f59295
Adding sleeve and rolled states for jumpshorts.
MistakeNot4892 Feb 23, 2025
2ae9035
Adding (bad) world states for hazard jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
77deeb2
Added world states for sterile jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
db7da7d
Added world states for captain jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
2e989f6
Added world states for QM jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
672a12f
Added world states for cargo jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
91260c5
Added world states for chaplain jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
e46aacc
Added world states for HOP jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
fb47d31
Added world states for hydro jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
b97fa73
Added world states for janitor jumpsuit modifiers.
MistakeNot4892 Feb 23, 2025
ed64ed3
Added world states for miner jumpsuit modifiers.
MistakeNot4892 Feb 24, 2025
7d5c9f5
Added world states for CE jumpsuit modifiers.
MistakeNot4892 Feb 24, 2025
68ff213
Add missing modifier sprites for many jumpsuits
out-of-phaze Feb 24, 2025
251cb8d
Repath RD alt suit to costume
out-of-phaze Feb 24, 2025
3c8ddff
Fix clothing unit test marking state false positives
out-of-phaze Feb 24, 2025
464db40
Add kitbashed modifier world states for some corporate security jumps…
out-of-phaze Feb 24, 2025
7ac23d0
Repath various bespoke jumpsuits to /costume
out-of-phaze Feb 26, 2025
98a0a61
Add kitbashed rolled states for rainbow jumpsuit
out-of-phaze Feb 26, 2025
c67e8fa
Add kitbashed rolled states for SWAT jumpsuit
out-of-phaze Feb 26, 2025
745f2eb
Add a few missing jumpsuit sprites in the corporate modpack
out-of-phaze Feb 26, 2025
47bd882
Added rolled/sleeve states to Focal jumpsuit.
MistakeNot4892 Mar 1, 2025
8dc7c0d
Added rolled/sleeve states to Hephaestus jumpsuit.
MistakeNot4892 Mar 1, 2025
dcf9bac
Added rolled/sleeve states to Ward-Takahashi jumpsuit.
MistakeNot4892 Mar 1, 2025
9a9ca58
Added missing states to corpo work jumpsuits.
MistakeNot4892 Mar 1, 2025
7128772
Added missing states to corpo pilot jumpsuits.
MistakeNot4892 Mar 1, 2025
53ad4b3
Adding missing states to Skrell jumpsuit.
MistakeNot4892 Mar 1, 2025
f91158b
Merge pull request #4880 from MistakeNot4892/rework/decls
out-of-phaze Mar 3, 2025
0668830
Merge pull request #4898 from out-of-phaze/fix/clothing-modifiers
MistakeNot4892 Mar 3, 2025
d6716f7
Merge pull request #4894 from out-of-phaze/refactor/species-uid
MistakeNot4892 Mar 3, 2025
eb2bedf
Fixed robot module icon test.
MistakeNot4892 Mar 5, 2025
9ae53d9
Backported citizenship from the Polaris Neb fork.
MistakeNot4892 Mar 5, 2025
45d4f13
Added a background flag completeness unit test.
MistakeNot4892 Mar 5, 2025
8527309
Fixed bad dels on reference robot modules.
MistakeNot4892 Mar 5, 2025
d8ddaf5
Fix surgery checking surgeon's clothing for blockage instead of patie…
Typhin Feb 24, 2025
2d6a1eb
Tweaking Typhin's surgery wording slightly.
MistakeNot4892 Mar 5, 2025
71f5846
Organs squelch.
MistakeNot4892 Feb 26, 2025
0fac5aa
Corrects args in stun_effect_act() apply_damage().
MistakeNot4892 Feb 26, 2025
dddb542
Canisters should no longer complain about not receiving power.
MistakeNot4892 Mar 5, 2025
9cbb843
Player panel uses a language ref instead of language name.
MistakeNot4892 Mar 5, 2025
0d99dd0
Suit cyclers now handle space suits in general.
MistakeNot4892 Mar 5, 2025
7f4029b
Vitals sensor alt interaction is more selective.
MistakeNot4892 Mar 5, 2025
8547dcf
Slightly cleans up assembly Destroy() logic.
MistakeNot4892 Mar 5, 2025
e9663cf
Updates damage overlays on organ dismemberment.
MistakeNot4892 Mar 5, 2025
1a81c9f
Fix for moving in space while self-grabbed.
MistakeNot4892 Mar 5, 2025
f5553b5
Fix for runtimes in bottle overlays.
MistakeNot4892 Mar 5, 2025
70b8ece
Fixes runtime with qdeleted items dropped into a recycler.
MistakeNot4892 Mar 5, 2025
9390c07
Added relaymove() override for suit cyclers.
MistakeNot4892 Mar 5, 2025
2f1b14c
Restricted ERT and Merc cameras from station camera monitoring.
MistakeNot4892 Mar 5, 2025
7874639
Disables client spinning verbs.
MistakeNot4892 Mar 5, 2025
131a157
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 7, 2025
f3854a1
Various Polaris sprite ports
Cerebulon Mar 5, 2025
1309022
Remove stray grenades from grenade lights
Cerebulon Mar 6, 2025
85b5894
Automatic changelog generation for PR #4930 [ci skip]
NebulaSS13Bot Mar 8, 2025
2463862
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 9, 2025
08bd524
Converting the Tajaran modpack back to old sprite style
Cerebulon Mar 9, 2025
cc2f26d
Readjust clothing, markings etc. to fit old sprite and multiplicative…
Cerebulon Mar 9, 2025
644a142
Converting Taj ears to Neb ears accessory.
MistakeNot4892 Mar 9, 2025
1c77f25
Merge pull request #1 from MistakeNot4892/tajarandesprite
Cerebulon Mar 9, 2025
d3e31a4
Merge pull request #4924 from MistakeNot4892/fixes/staging
out-of-phaze Mar 9, 2025
cfd0742
Resolve unit test failures
Cerebulon Mar 9, 2025
6893bfa
Resolve unit test failures
Cerebulon Mar 9, 2025
9504590
Merge branch 'tajarandesprite' of https://github.com/Cerebulon-NebUp/…
Cerebulon Mar 9, 2025
a29aa46
Merge pull request #4916 from MistakeNot4892/fix/robot_module_test
out-of-phaze Mar 9, 2025
1453b73
Merge pull request #4923 from MistakeNot4892/fix/surgery
out-of-phaze Mar 9, 2025
7d6a3ba
Fix scanner components blocking machinery interactions
out-of-phaze Mar 9, 2025
a237bc4
Fix machinery components break naming #4933
out-of-phaze Mar 11, 2025
a0ed0d2
Fix attaching an assembly to a tank causes overlaying issue #4908
out-of-phaze Mar 11, 2025
0b1bd2d
Add better null guards to NanoUI code
out-of-phaze Mar 11, 2025
b4b722d
Fix runtime-generated Z levels
out-of-phaze Feb 28, 2025
670850b
Fix crates shaking excessively when opened
out-of-phaze Feb 28, 2025
ead64cb
Fix UI colors
out-of-phaze Feb 28, 2025
cee8fb3
Improve redundant icon updates during init
out-of-phaze Feb 28, 2025
60aa77d
Fix atmos grief fixer verb
out-of-phaze Feb 28, 2025
7607021
Move masks referencing Bay lore into SCG modpack
out-of-phaze Feb 26, 2025
9805791
Move religious insignia into modern Earth modpack
out-of-phaze Feb 26, 2025
56ad126
Modpack references to Solgov and the GCC
out-of-phaze Feb 27, 2025
f866565
Move a reference to Britain into the modern Earth modpack
out-of-phaze Feb 27, 2025
b5150ea
Remove unused clothing items
out-of-phaze Mar 11, 2025
423b621
Refactor base_desc into item base class.
martin509 Mar 7, 2025
e6a512f
Port writing on pill bottles.
martin509 Mar 7, 2025
2c3ba89
remove commented-out base_desc
martin509 Mar 11, 2025
2ac0d97
Merge pull request #4938 from Cerebulon-NebUp/tajarandesprite
MistakeNot4892 Mar 11, 2025
00a0157
Automatic changelog generation for PR #4938 [ci skip]
NebulaSS13Bot Mar 11, 2025
8a987c0
Merge pull request #4941 from out-of-phaze/fix/dev-bugs-03-11-25
MistakeNot4892 Mar 11, 2025
c8cf527
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 12, 2025
2c98d17
Fix some items inventory slot overlays are shifted #4932
out-of-phaze Mar 11, 2025
1220767
Fix when picking up a stool the pickup animation image is not colored…
out-of-phaze Mar 11, 2025
a5f953f
Fix meat gas planets
out-of-phaze Feb 28, 2025
b9de88b
Remove parent calls from bot UnarmedAttack overrides
out-of-phaze Mar 11, 2025
af60124
Fix engine control console plus and minus buttons dont work #4920
out-of-phaze Mar 11, 2025
721ba73
Fix stacking powders (scraps) leaves an empty slot #4914
out-of-phaze Mar 11, 2025
fa7989f
Fix randpixel applying when transferring between inventory slots
out-of-phaze Mar 11, 2025
6bddf4c
Fix ice being called water in reagent grinders/blenders
out-of-phaze Feb 28, 2025
6072095
Fix onmob overlays of suit cyclers don't rotate when you fly a shuttl…
out-of-phaze Mar 11, 2025
dd17bb2
Merge pull request #4917 from MistakeNot4892/port/citizenship
out-of-phaze Mar 12, 2025
3cca3c7
Fix inverted can_slip check
out-of-phaze Mar 12, 2025
ab08596
Fix #4947
out-of-phaze Mar 12, 2025
67801e3
Fix loading old saves failing to deserialize species from name
out-of-phaze Mar 12, 2025
7575a55
Fix runtimes from non-blood footprints
out-of-phaze Mar 12, 2025
b7cbbe9
Fix ambient lighting artifacts on Shaded Hills
out-of-phaze Mar 12, 2025
288a666
Fix HUD not refreshing when adjusting UI highlight color
out-of-phaze Mar 12, 2025
ee3fb63
poster init streamlining
martin509 Mar 12, 2025
6559845
clean up pen code, ink use, literacy
martin509 Mar 12, 2025
b18a6f0
Fix get_topmost_flooring not working properly for wildgrass
out-of-phaze Mar 12, 2025
ae06da1
Merge pull request #4912 from out-of-phaze/removal/unused-clothes
MistakeNot4892 Mar 12, 2025
9f902e0
Fix setting ambient light multiplier to 0 not working
out-of-phaze Mar 12, 2025
34219c8
Set Shaded Hills default UI style to UWII
out-of-phaze Mar 12, 2025
3dfdeaa
Adjust Shaded Hills ambient light strength
out-of-phaze Mar 12, 2025
849532d
Fix carpet tile icons
out-of-phaze Mar 12, 2025
819badd
Fix placing carpets always placing orange carpet
out-of-phaze Mar 13, 2025
06219f8
redundant call removal
martin509 Mar 13, 2025
4846fa0
Update biogenerator.dm
Typhin Mar 13, 2025
c9d8027
Merge pull request #4954 from Typhin/BiogeneratorFix
out-of-phaze Mar 13, 2025
70c31a6
Automatic changelog generation for PR #4954 [ci skip]
NebulaSS13Bot Mar 13, 2025
a2bb812
Merge pull request #4948 from out-of-phaze/stable-fix/door-locking
MistakeNot4892 Mar 13, 2025
bf4ab09
Merge pull request #4949 from out-of-phaze/staging-fix/spread-slip
MistakeNot4892 Mar 13, 2025
4ce080b
Merge pull request #4950 from out-of-phaze/fix/species-id-migrate
MistakeNot4892 Mar 13, 2025
9a83ca5
Merge pull request #4952 from out-of-phaze/staging-fix/carpet-tile
MistakeNot4892 Mar 13, 2025
057a025
Merge branch 'stable' of https://github.com/NebulaSS13/Nebula into ne…
out-of-phaze Mar 13, 2025
84f5f1f
Merge pull request #4956 from out-of-phaze/neb/stagingupdate
out-of-phaze Mar 13, 2025
dd03e2d
Merge branch 'staging' of https://github.com/NebulaSS13/Nebula into n…
out-of-phaze Mar 13, 2025
9a42df6
Merge pull request #4957 from out-of-phaze/neb/devupdate
out-of-phaze Mar 13, 2025
5be5f39
Add check for panel opening to machinery unit test
out-of-phaze Mar 13, 2025
1b3130e
Fix incorrect state transition when opening firedoors or breaking air…
out-of-phaze Mar 13, 2025
c8ada39
change over fully to label system
martin509 Mar 14, 2025
8ce9529
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 14, 2025
0000692
Fix robot modules in storage capacity test
out-of-phaze Mar 13, 2025
09a9c76
Fix issues with machine deconstruction
out-of-phaze Mar 14, 2025
1429dc4
Remove pump mode restriction from disposal deconstruction
out-of-phaze Mar 14, 2025
13164da
Fix AI slot component preventing computer deconstruction
out-of-phaze Mar 14, 2025
96f108c
Merge pull request #4945 from martin509/pill-labels
MistakeNot4892 Mar 14, 2025
1679472
Merge pull request #4955 from out-of-phaze/codequality/machine-state-…
MistakeNot4892 Mar 15, 2025
67b56ff
Readd missing can_be_shackled var to utility frames
out-of-phaze Mar 15, 2025
8849430
Change the default choice when being given an item to 'yes'
out-of-phaze Mar 15, 2025
0c4c57c
Fix #4932 properly
out-of-phaze Mar 14, 2025
5bd79ae
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 19, 2025
d38c085
Automatic changelog generation [ci skip]
NebulaSS13Bot Mar 20, 2025
bb9b781
Merge branch 'stable' of github.com:NebulaSS13/Nebula into stagingupdate
MistakeNot4892 Mar 21, 2025
4a8a8d1
Merge pull request #4963 from MistakeNot4892/stagingupdate
MistakeNot4892 Mar 21, 2025
cc1c303
Merge branch 'staging' of github.com:NebulaSS13/Nebula into devupdate
MistakeNot4892 Mar 21, 2025
12baa17
Merge pull request #4964 from MistakeNot4892/devupdate
MistakeNot4892 Mar 21, 2025
c886d2f
Merge branch 'dev' of github.com:NebulaSS13/Nebula into poldev
MistakeNot4892 Mar 22, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion code/_onclick/hud/hud_types/_hud.dm
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
hud_used = new hud_used(src)
if(istype(hud_used))
hud_used.refresh_hud_icons()
refresh_lighting_master()

/datum/hud
/// A reference to our owning mob.
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_drop.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
name = "drop"
icon_state = "act_drop"
screen_loc = ui_drop_throw
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/drop/handle_click(mob/user, params)
if(user.client)
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_equip.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
/obj/screen/equip
name = "equip"
icon_state = "act_equip"
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/equip/handle_click(mob/user, params)
if(ishuman(user))
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_gun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
icon = 'icons/mob/screen/styles/midnight/fire_intent.dmi'
dir = SOUTH
abstract_type = /obj/screen/gun
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE
var/base_icon_state
var/toggle_flag

Expand Down
14 changes: 10 additions & 4 deletions code/_onclick/hud/screen/screen_inventory.dm
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,17 @@
MA.plane = HUD_PLANE
MA.alpha = 80
MA.color = mouse_over_atom.mob_can_equip(owner, slot_id, TRUE) ? COLOR_GREEN : COLOR_RED
MA.pixel_x = mouse_over_atom.default_pixel_x
MA.pixel_y = mouse_over_atom.default_pixel_y
MA.pixel_w = mouse_over_atom.default_pixel_w
MA.pixel_z = mouse_over_atom.default_pixel_z
// We don't respect default_pixel_x or similar here because items should always be centered in their slots; defaults are for world-space.
MA.pixel_x = 0
MA.pixel_y = 0
MA.pixel_w = 0
MA.pixel_z = 0
MA.appearance_flags |= (KEEP_TOGETHER | RESET_COLOR)
// We need to color the entire thing, overlays and underlays included.
for(var/image/overlay in MA.overlays)
overlay.appearance_flags &= ~(KEEP_TOGETHER | RESET_COLOR)
for(var/image/underlay in MA.underlays)
underlay.appearance_flags &= ~(KEEP_TOGETHER | RESET_COLOR)
add_overlay(MA)
else
mouse_over_atom_ref = null
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_maneuver.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
name = "Prepare Maneuver"
icon_state = "maneuver_off"
screen_loc = ui_pull_resist
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/maneuver/handle_click(mob/user, params)
if(isliving(user))
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_resist.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
name = "resist"
icon_state = "act_resist"
screen_loc = ui_pull_resist
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/resist/handle_click(mob/user, params)
if(isliving(user))
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_throw.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
name = "throw"
icon_state = "act_throw_off"
screen_loc = ui_drop_throw
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/throw_toggle/handle_click(mob/user, params)
if(!user.stat && isturf(user.loc) && !user.restrained())
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_toggle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
name = "toggle"
icon_state = "other"
screen_loc = ui_inventory
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/toggle/handle_click(mob/user, params)
if(!user.hud_used)
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/screen/screen_zone_selector.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
name = "damage zone"
icon_state = "zone_sel_tail"
screen_loc = ui_zonesel
use_supplied_ui_color = TRUE
use_supplied_ui_alpha = TRUE

/obj/screen/zone_selector/handle_click(mob/user, params)
var/list/PL = params2list(params)
Expand Down
2 changes: 1 addition & 1 deletion code/datums/daycycle/time_of_day.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
name = "daytime"
announcement = "The sun rises over the horizon, beginning another day."
period = 0.4
power = 1
power = 0.8
color = COLOR_DAYLIGHT

/datum/daycycle_period/sunset
Expand Down
6 changes: 3 additions & 3 deletions code/datums/supplypacks/nonessent.dm
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@
/obj/item/clothing/pants/slacks/purple,
/obj/item/clothing/shirt/button,
/obj/item/clothing/suit/jacket/vest/black,
/obj/item/clothing/jumpsuit/mailman,
/obj/item/clothing/costume/mailman,
/obj/item/clothing/dress/saloon,
/obj/item/clothing/suspenders,
/obj/item/clothing/suit/toggle/labcoat/mad,
Expand All @@ -103,7 +103,7 @@
/obj/item/clothing/costume/owl,
/obj/item/clothing/pants/slacks/black,
/obj/item/clothing/shirt/button,
/obj/item/clothing/neck/tie/bow/color/red,
/obj/item/clothing/neck/tie/bow/red,
/obj/item/clothing/suit/jacket/vest/blue,
/obj/item/clothing/costume/gladiator,
/obj/item/clothing/costume/soviet,
Expand All @@ -115,7 +115,7 @@
/obj/item/clothing/costume/kilt,
/obj/item/clothing/costume/savage_hunter,
/obj/item/clothing/costume/savage_hunter/female,
/obj/item/clothing/jumpsuit/wetsuit)
/obj/item/clothing/costume/wetsuit)
name = "Costume - Random"
containername = "actor costumes crate"
supply_method = /decl/supply_method/randomized
Expand Down
10 changes: 10 additions & 0 deletions code/game/atoms.dm
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,16 @@
if(event_listeners?[/decl/observ/updated_icon])
raise_event_non_global(/decl/observ/updated_icon)

/**
* Update this atom's icon.
* If prior to SSicon_update's first flush, queues.
* Otherwise, updates instantly.
*/
/atom/proc/lazy_update_icon()
if(SSicon_update.init_state != SS_INITSTATE_NONE)
return update_icon()
queue_icon_update()

/**
Update this atom's icon.

Expand Down
8 changes: 5 additions & 3 deletions code/game/atoms_init.dm
Original file line number Diff line number Diff line change
Expand Up @@ -89,10 +89,7 @@
updateVisibility(src)
if(atom_codex_ref && atom_codex_ref != TRUE) // may be null, TRUE or a datum instance
QDEL_NULL(atom_codex_ref)
var/atom/oldloc = loc
. = ..()
if(isatom(oldloc) && oldloc.storage && !QDELETED(loc.storage))
oldloc.storage.on_item_post_deletion(src) // must be done after deletion
// This might need to be moved onto a Del() override at some point.
QDEL_NULL(storage)

Expand Down Expand Up @@ -135,6 +132,7 @@

. = ..()

var/atom/oldloc = loc
forceMove(null)

if(LAZYLEN(movement_handlers) && !ispath(movement_handlers[1]))
Expand All @@ -151,6 +149,10 @@
if(!QDELETED(mask))
qdel(mask)

// This has to be done for movables because atoms can't be in storage.
if(isatom(oldloc) && !QDELETED(oldloc?.storage))
oldloc.storage.on_item_post_deletion(src) // must be done after deletion

/atom/GetCloneArgs()
return list(loc)

Expand Down
9 changes: 6 additions & 3 deletions code/game/atoms_movable.dm
Original file line number Diff line number Diff line change
Expand Up @@ -61,20 +61,23 @@
SSspacedrift.processing[src] = src
return 1

//return 0 to space drift, 1 to stop, -1 for mobs to handle space slips
//return SPACE_MOVE_FORBIDDEN to space drift, SPACE_MOVE_PERMITTED to stop, SPACE_MOVE_SUPPORTED for mobs to handle space slips
/atom/movable/proc/is_space_movement_permitted(allow_movement = FALSE)
if(!simulated)
return SPACE_MOVE_PERMITTED
if(has_gravity())
return SPACE_MOVE_PERMITTED
if(length(grabbed_by))
return SPACE_MOVE_PERMITTED
if(throwing)
return SPACE_MOVE_PERMITTED
if(anchored)
return SPACE_MOVE_PERMITTED
if(!isturf(loc))
return SPACE_MOVE_PERMITTED
if(length(grabbed_by))
for(var/obj/item/grab/grab as anything in grabbed_by)
if(grab.assailant == src)
continue
return SPACE_MOVE_PERMITTED
if(locate(/obj/structure/lattice) in range(1, get_turf(src))) //Not realistic but makes pushing things in space easier
return SPACE_MOVE_SUPPORTED
return SPACE_MOVE_FORBIDDEN
Expand Down
22 changes: 22 additions & 0 deletions code/game/machinery/_machines_base/machine_construction/airlock.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,28 @@
down_state = /decl/machine_construction/default/panel_open/door
var/hacking_state = /decl/machine_construction/default/panel_closed/door/hacking

/decl/machine_construction/default/panel_closed/door/fail_test_state_transfer(obj/machinery/machine, mob/user)
var/static/obj/item/screwdriver/screwdriver = new
// Prevent access locks on doors from interfering with our interactions.
for(var/obj/item/stock_parts/access_lock/lock in machine.get_all_components_of_type(/obj/item/stock_parts/access_lock))
lock.locked = FALSE
// Test hacking state
if(!machine.attackby(screwdriver, user))
return "Machine [log_info_line(machine)] did not respond to attackby with screwdriver."
if(machine.construct_state.type != hacking_state)
return "Machine [log_info_line(machine)] had a construct_state of type [machine.construct_state.type] after screwdriver interaction (expected [hacking_state])."
// Do it again to reverse that state change.
if(!machine.attackby(screwdriver, user))
return "Machine [log_info_line(machine)] did not respond to attackby with screwdriver on a second try."
if(machine.construct_state != src)
return "Machine [log_info_line(machine)] had a construct_state of type [machine.construct_state.type] after screwdriver interaction (expected [type])."
// Now test the down state
var/obj/item/wrench/wrench = new
if(!machine.attackby(wrench, user))
return "Machine [log_info_line(machine)] did not respond to attackby with wrench."
if(machine.construct_state.type != down_state)
return "Machine [log_info_line(machine)] had a construct_state of type [machine.construct_state.type] after screwdriver interaction (expected [down_state])."

/decl/machine_construction/default/panel_closed/door/attackby(obj/item/used_item, mob/user, obj/machinery/machine)
if(IS_SCREWDRIVER(used_item))
TRANSFER_STATE(hacking_state)
Expand Down
13 changes: 13 additions & 0 deletions code/game/machinery/_machines_base/machine_construction/default.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,19 @@
visible_components = FALSE
locked = TRUE

/decl/machine_construction/default/panel_closed/fail_unit_test(obj/machinery/machine)
if((. = ..()))
return
var/static/mob/living/human/user = new
return fail_test_state_transfer(machine, user)

/decl/machine_construction/default/panel_closed/proc/fail_test_state_transfer(obj/machinery/machine, mob/user)
var/static/obj/item/screwdriver/screwdriver = new
if(!machine.attackby(screwdriver, user))
return "Machine [log_info_line(machine)] did not respond to attackby with screwdriver."
if(machine.construct_state.type != down_state)
return "Machine [log_info_line(machine)] had a construct_state of type [machine.construct_state.type] after screwdriver interaction (expected [down_state])."

/decl/machine_construction/default/panel_closed/state_is_valid(obj/machinery/machine)
return !machine.panel_open

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,12 @@
if(ELECTROCUTE)
cause = "sparks"
visible_message(SPAN_WARNING("Something [cause] inside \the [machine]."), range = 2)
SetName("broken [name]")
update_name()

/obj/item/stock_parts/update_name()
. = ..()
if(!is_functional())
SetName("broken [name]") // prepend 'broken' to the results

/obj/item/stock_parts/proc/is_functional()
return (!can_take_damage()) || (current_health > 0)
Expand Down
28 changes: 14 additions & 14 deletions code/game/machinery/atmoalter/canister.dm
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
/obj/machinery/portable_atmospherics/canister
name = "canister"
icon = 'icons/obj/atmos.dmi'
icon_state = "yellow"
density = TRUE
max_health = 100
obj_flags = OBJ_FLAG_CONDUCTIBLE
w_class = ITEM_SIZE_GARGANTUAN
construct_state = /decl/machine_construction/pipe/welder
uncreated_component_parts = null
start_pressure = 45 ATM
volume = 1000
interact_offline = TRUE
matter = list(
name = "canister"
icon = 'icons/obj/atmos.dmi'
icon_state = "yellow"
density = TRUE
max_health = 100
obj_flags = OBJ_FLAG_CONDUCTIBLE
w_class = ITEM_SIZE_GARGANTUAN
construct_state = /decl/machine_construction/pipe/welder
stat_immune = NOSCREEN | NOINPUT | NOPOWER
start_pressure = 45 ATM
volume = 1000
interact_offline = TRUE
matter = list(
/decl/material/solid/metal/steel = 10 * SHEET_MATERIAL_AMOUNT
)

uncreated_component_parts = null
var/valve_open = FALSE
var/release_pressure = ONE_ATMOSPHERE
var/release_flow_rate = ATMOS_DEFAULT_VOLUME_PUMP //in L/s
Expand Down
3 changes: 3 additions & 0 deletions code/game/machinery/biogenerator.dm
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,9 @@

/obj/machinery/biogenerator/attackby(var/obj/item/used_item, var/mob/user)

if(panel_open || IS_SCREWDRIVER(used_item))
return ..()

if(processing)
if((. = component_attackby(used_item, user)))
return
Expand Down
14 changes: 8 additions & 6 deletions code/game/machinery/doors/airlock.dm
Original file line number Diff line number Diff line change
Expand Up @@ -889,7 +889,7 @@ About the new airlock wires panel:
panel_open = TRUE
if(istype(construct_state, /decl/machine_construction/default/panel_closed))
var/decl/machine_construction/default/panel_closed/closed = construct_state
construct_state = closed.down_state
construct_state = GET_DECL(closed.down_state)
construct_state.validate_state(src)
if (secured_wires)
lock()
Expand Down Expand Up @@ -987,28 +987,30 @@ About the new airlock wires panel:

if (lock_cut_state == BOLTS_CUT) return FALSE //what bolts?

src.locked = TRUE
locked = TRUE
locking = FALSE
playsound(src, bolts_dropping, 30, 0, -6)
audible_message("You hear a click from the bottom of the door.", hearing_distance = 1)
update_icon()
toggle_input_toggle() // this sends an update to anything listening for our status, like docking/airlock controllers
return TRUE

/obj/machinery/door/airlock/proc/unlock(var/forced=0)
if(!src.locked)
if(!locked)
return FALSE

if (!forced)
if(!src.arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_DOOR_BOLTS))
if(!arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_DOOR_BOLTS))
return FALSE
if(operating)
locking = FALSE
unlocking = TRUE
return FALSE
if(operating || !src.arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_DOOR_BOLTS))
if(!arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_DOOR_BOLTS))
return FALSE

src.locked = FALSE
locked = FALSE
unlocking = FALSE
playsound(src, bolts_rising, 30, 0, -6)
audible_message("You hear a click from the bottom of the door.", hearing_distance = 1)
update_icon()
Expand Down
2 changes: 1 addition & 1 deletion code/game/machinery/doors/firedoor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -348,7 +348,7 @@
panel_open = FALSE
if(istype(construct_state, /decl/machine_construction/default/panel_open))
var/decl/machine_construction/default/panel_open/open = construct_state
construct_state = open.up_state
construct_state = GET_DECL(open.up_state)
construct_state.validate_state(src)
visible_message("The maintenance hatch of \the [src] closes.")
update_icon()
Expand Down
Loading
Loading