Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
157 commits
Select commit Hold shift + click to select a range
7f356a8
Removing extraneous doors.
MistakeNot4892 Jan 25, 2025
9b9d395
Allowing outside status of turfs to be seen in the mapper.
MistakeNot4892 Jan 25, 2025
b57c10b
Adding a basalt floor with sand turf type.
MistakeNot4892 Jan 25, 2025
f6c8709
Allowing downstreams to override skipped food types in CI test.
MistakeNot4892 Jan 25, 2025
a6f2110
Merge pull request #4806 from MistakeNot4892/fork/pyrelight
MistakeNot4892 Jan 25, 2025
459ff16
Allowed refitting to skip renaming the suit.
MistakeNot4892 Jan 25, 2025
8c94709
Pilot voidsuit -> expedition voidsuit.
MistakeNot4892 Jan 25, 2025
8d1a4a7
Updating avian exped suit dir.
MistakeNot4892 Jan 25, 2025
c91871d
Fixes shuttle tag on tradeship explo shuttle.
MistakeNot4892 Jan 25, 2025
4214524
Adds helmsman role to Tradeship.
MistakeNot4892 Jan 25, 2025
43e2411
Fixes incorrect atom in stacker squash message.
MistakeNot4892 Jan 25, 2025
9a8da21
Implant messages use the atom name.
MistakeNot4892 Jan 25, 2025
e9b0097
Added a Jorf! Machine Gun.
MistakeNot4892 Jan 25, 2025
c2fbae0
Removing extraneous icon path from avian shoes.
MistakeNot4892 Jan 25, 2025
5385ff0
Correcting poncho path in corporate modpack.
MistakeNot4892 Jan 25, 2025
d51b2ee
Removed overdose from slime meat.
MistakeNot4892 Jan 25, 2025
4e5131f
Forced human species for CI testing.
MistakeNot4892 Jan 25, 2025
450e559
Removed broken retaliate path from goats.
MistakeNot4892 Jan 25, 2025
5afa3cc
Added default accessories to robes.
MistakeNot4892 Jan 25, 2025
d6a270b
Fixed broken color clear on aprons.
MistakeNot4892 Jan 25, 2025
3b119a1
Gating against runtime in mingle_with_turf()
MistakeNot4892 Jan 25, 2025
914a3cf
Entertainment intercoms now broadcast.
MistakeNot4892 Jan 25, 2025
7a889bc
Small icon tweaks from Scav.
MistakeNot4892 Jan 25, 2025
442c4c5
Merge branch 'staging' of github.com:NebulaSS13/Nebula into devupdate
MistakeNot4892 Jan 27, 2025
cbb7c74
Merge pull request #4820 from MistakeNot4892/devupdate
MistakeNot4892 Jan 27, 2025
bd40ea7
Splitting Bayliens back into individual modpacks.
MistakeNot4892 Jan 26, 2025
0bd0461
Merge pull request #4809 from MistakeNot4892/scav/refit
out-of-phaze Jan 28, 2025
bf5f9b0
Merge pull request #4815 from MistakeNot4892/scav/tradeship
out-of-phaze Jan 28, 2025
174b987
Merge pull request #4817 from MistakeNot4892/rework/bayliens
out-of-phaze Jan 28, 2025
4b3f8db
Adding item-based intent.
MistakeNot4892 Jan 28, 2025
2344d71
Fix lighting on maps loaded after SSlighting init
out-of-phaze Jan 22, 2025
097a2d7
Improve descriptions for atmos machinery
out-of-phaze Jan 26, 2025
db803fb
Improve descriptions for disposals machinery
out-of-phaze Jan 26, 2025
76e40eb
Improve descriptions for pipe/atmospherics fabricator recipes
out-of-phaze Jan 26, 2025
25a1734
Fix grammar issues in a handful of descriptions
out-of-phaze Jan 26, 2025
f55c426
Replace 'recieve' with 'receive' and 'reciept' with 'receipt'
out-of-phaze Jan 26, 2025
d4a2a8b
Remove redundant pipe fabrication descriptions
out-of-phaze Jan 26, 2025
6a488d7
Fix miscellaneous spelling and phrasing issues
out-of-phaze Jan 27, 2025
f1b47a4
Fix more (mostly compound) phrases in descriptions
out-of-phaze Jan 27, 2025
7910ec2
Merge pull request #4819 from out-of-phaze/grammar/desc-cleanups
MistakeNot4892 Jan 28, 2025
fc2dec8
Merge pull request #4797 from out-of-phaze/fix/lighting-post-init
MistakeNot4892 Jan 28, 2025
8821620
Backporting the Bearcat remap from ScavStation.
MistakeNot4892 Jan 25, 2025
240223d
Backporting the Liberia remap from ScavStation.
MistakeNot4892 Jan 25, 2025
ae2aa80
Backporting the Unishi remap from ScavStation.
MistakeNot4892 Jan 25, 2025
84e19da
Backporting the crashed pod remap from ScavStation.
MistakeNot4892 Jan 25, 2025
a4ab995
Backporting remaining ruins tweaks from ScavStation.
MistakeNot4892 Jan 25, 2025
b405ed9
Backporting Exodus map adjustments from ScavStation.
MistakeNot4892 Jan 25, 2025
3cfe3d9
Cleaning up map ports for CI.
MistakeNot4892 Jan 25, 2025
24f44ae
Removes extra security voidsuits from Bearcat.
MistakeNot4892 Jan 28, 2025
f254c08
Nerfs the random hardsuit spawner for non-heist maps.
MistakeNot4892 Jan 28, 2025
9a8b39d
Cleaning up action/action button/item qdels.
MistakeNot4892 Jan 27, 2025
6e871a9
Automatic changelog generation for PR #4811 [ci skip]
NebulaSS13Bot Jan 28, 2025
eec8cb0
Mousing over intent will show a tooltip.
MistakeNot4892 Jan 28, 2025
85a7176
Automatic changelog generation [ci skip]
NebulaSS13Bot Jan 29, 2025
90743f1
Move vis contents init to after SSweather
out-of-phaze Jan 29, 2025
52db96e
Optimize vis_contents queue processing
out-of-phaze Jan 29, 2025
c5b3643
Split light fixture icon update into icon and non-icon procs
out-of-phaze Jan 28, 2025
80f4074
Fix rigged light switches
out-of-phaze Jan 28, 2025
025e9a5
Remove args from glass tank update_icon
out-of-phaze Jan 28, 2025
b7d4698
Remove args from space heater update_icon
out-of-phaze Jan 28, 2025
dc3298a
Remove args from tape recorder update_icon
out-of-phaze Jan 28, 2025
dcd0587
Remove args from air tank update_icon
out-of-phaze Jan 28, 2025
937f340
Remove args from pipe update_icon overrides
out-of-phaze Jan 28, 2025
5792a6a
Remove args from clothing update_icon overrides
out-of-phaze Jan 28, 2025
2f6dca5
Remove args from organ update_icon calls
out-of-phaze Jan 28, 2025
cccf09c
Remove args from folder update_icon overrides
out-of-phaze Jan 28, 2025
de895e9
Remove args from shield effect update_icon override
out-of-phaze Jan 28, 2025
49b8c29
Remove args from railing update_icon override
out-of-phaze Jan 28, 2025
52de180
Remove args from floor update_icon override
out-of-phaze Jan 28, 2025
a8078b2
Remove args from hand of cards update_icon override
out-of-phaze Jan 28, 2025
35cfd95
Remove args from airlock update_icon
out-of-phaze Jan 28, 2025
a790b6c
Remove args from all on_update_icon calls
out-of-phaze Jan 28, 2025
c899a74
Force update_icon calls prior to first SSicon_update flush to queue
out-of-phaze Jan 28, 2025
e31abad
Remove oversafe checks from _fetch_icon_state_cache_entry
out-of-phaze Jan 28, 2025
54c64f9
Fix cable dir init order issues
out-of-phaze Jan 28, 2025
b325b52
Added a quad-barrel shotgun.
MistakeNot4892 Jan 25, 2025
a295725
Falling onto stairs from height, or falling onto obstacles, will now …
MistakeNot4892 Jan 23, 2025
a2c9d93
Passing thrown datum through end_throw().
MistakeNot4892 Jan 25, 2025
2d61878
Non-blacksmithy changes from blacksmithy PR.
MistakeNot4892 Jan 24, 2025
df3dd0a
Nerfing blob defensive values.
MistakeNot4892 Jan 25, 2025
3240db7
Move storage datum code out of extensions folder
out-of-phaze Jan 30, 2025
74fd65f
Unifying space slipping, magboots and slipping checks in general in o…
MistakeNot4892 Jan 22, 2025
cb46375
Fixing issues with robot movement.
MistakeNot4892 Jan 23, 2025
8e34239
Condensing Process_Spacemove().
MistakeNot4892 Jan 23, 2025
6a71008
Trying to clean up Process_Spacemove() to find issues with EVA slipping.
MistakeNot4892 Jan 23, 2025
21e9345
Removing unsimulated shuttle ceilings.
MistakeNot4892 Jan 23, 2025
913e262
Move golems to xenobiology modpack
out-of-phaze Jan 5, 2025
df38126
Move random alien species to modpack
out-of-phaze Jan 5, 2025
70ffb64
Repath rags to not be glasses
out-of-phaze Jan 30, 2025
5964a82
Repath rags in maps
out-of-phaze Jan 30, 2025
e404b96
Fixes stamina bar positioning on new HUD.
MistakeNot4892 Jan 30, 2025
4a3a942
Merge pull request #4822 from MistakeNot4892/rework/intents
out-of-phaze Jan 30, 2025
a85e5dd
Merge pull request #4790 from MistakeNot4892/fixes/slipping
out-of-phaze Jan 30, 2025
20bb1ee
Condensing health indicators onto a root type on the HUD datum.
MistakeNot4892 Jan 21, 2025
9c0b298
Removes max_w_class limit from backpacks of holding.
MistakeNot4892 Jan 25, 2025
467f393
Adding a define to indicate scaling modifiers are included.
MistakeNot4892 Jan 25, 2025
4ce87e8
Porting cinnamon and lavender syrup from ScavStation.
MistakeNot4892 Jan 25, 2025
7b05557
Added carp cubes and adjusted spider cube access.
MistakeNot4892 Jan 25, 2025
b82fd10
Added a loaded camera subtype that spawns with film.
MistakeNot4892 Jan 25, 2025
ce79768
Added a 'fill to capacity' landmark.
MistakeNot4892 Jan 25, 2025
7a6a7d1
Added ion gets to heavy lathe recipes.
MistakeNot4892 Jan 25, 2025
0016ae2
Added an abstract tail clothing item.
MistakeNot4892 Jan 25, 2025
f0d7fc0
Readding grey detective outfit.
MistakeNot4892 Jan 25, 2025
70d6557
Added two barsigns from Scav/tg.
MistakeNot4892 Jan 25, 2025
2ea6370
Addressing tweaks from review.
MistakeNot4892 Jan 30, 2025
824e2b6
Merge pull request #4784 from MistakeNot4892/rework/hud
out-of-phaze Jan 30, 2025
1775c63
Merge pull request #4807 from MistakeNot4892/scavs
out-of-phaze Jan 31, 2025
46a3b39
Fixes not being able to stand up when handcuffed.
MistakeNot4892 Jan 30, 2025
fe609da
Merge pull request #4827 from MistakeNot4892/fix/cuffs
out-of-phaze Jan 31, 2025
5923c5a
Merge pull request #4829 from out-of-phaze/codequality/rag-glass
MistakeNot4892 Feb 1, 2025
5370e95
Merge pull request #4696 from out-of-phaze/modular/misc-species
MistakeNot4892 Feb 1, 2025
7b0e608
Fix FILE_DIR in DME file
out-of-phaze Feb 1, 2025
afa12ce
Fix OpenDream failures not causing CI failures
out-of-phaze Feb 1, 2025
b4af812
Remove useless cache from OpenDream check
out-of-phaze Feb 1, 2025
eab25a9
Add doormats
out-of-phaze Jan 21, 2025
92db1b8
Make on-examine text more flexible
out-of-phaze Jan 21, 2025
bc61312
Add Caves of Qud-inspired procedural coating and liquid names
out-of-phaze Jan 21, 2025
f2423e3
Merge pull request #4830 from out-of-phaze/fix/od-filedir
MistakeNot4892 Feb 1, 2025
0775a3a
Merge pull request #4796 from out-of-phaze/feature/doormats
MistakeNot4892 Feb 1, 2025
a860e61
Move scent extension and decls into a module
out-of-phaze Jan 30, 2025
1e54f10
Rename whistle.dm to hailer.dm
out-of-phaze Jan 30, 2025
9fb7f55
Move scanners into modules
out-of-phaze Jan 30, 2025
64edbb5
Move implants into modules folder
out-of-phaze Jan 30, 2025
7b749f7
Automatic changelog generation for PR #4796 [ci skip]
NebulaSS13Bot Feb 1, 2025
ad76a83
Move projectile effects into projectiles module
out-of-phaze Jan 30, 2025
778ceda
Move posters into modules folder
out-of-phaze Jan 30, 2025
0f76106
Move filter stand into chemistry structure folder
out-of-phaze Jan 30, 2025
70bf242
Break up the stool_bed_chair_nest_sofa folder
out-of-phaze Jan 30, 2025
524a137
Move tools out of items\weapons folder
out-of-phaze Jan 30, 2025
bd22d09
Move circuitboards out of weapons folder
out-of-phaze Jan 30, 2025
61253f6
Move welding content into one folder
out-of-phaze Jan 30, 2025
a09b11a
Rename teleportation.dm to locator.dm
out-of-phaze Jan 30, 2025
030c5b6
Move barricade tape into modules
out-of-phaze Jan 30, 2025
fd44ffc
Merge branch 'staging' of github.com:NebulaSS13/Nebula into devupdate
MistakeNot4892 Feb 1, 2025
0c5d0a0
Merge pull request #4826 from out-of-phaze/codequality/organize-folders
MistakeNot4892 Feb 1, 2025
9fb8057
Merge branch 'dev' of github.com:NebulaSS13/Nebula into devupdate
MistakeNot4892 Feb 1, 2025
7d09291
Merge pull request #4832 from MistakeNot4892/devupdate
MistakeNot4892 Feb 1, 2025
7ce6a1b
Merge branch 'dev' of github.com:NebulaSS13/Nebula into fork/pyrelight
MistakeNot4892 Feb 1, 2025
918f8f2
Update the newscaster to use const vars and OnTopic
out-of-phaze Jan 14, 2025
57a099e
Make the nuclear bomb use OnTopic
out-of-phaze Jan 14, 2025
9d5d99e
Update miscellaneous machinery to use OnTopic
out-of-phaze Jan 14, 2025
3d650f0
Make space heaters use NanoUI
out-of-phaze Jan 14, 2025
bc1228b
Update suit cyclers to use OnTopic
out-of-phaze Jan 14, 2025
13fc720
Fix doc comment for hands topic state
out-of-phaze Jan 14, 2025
a60ecca
Make message monitor use OnTopic
out-of-phaze Jan 14, 2025
4904591
Make docking controllers use OnTopic and TOPIC_ return values
out-of-phaze Jan 15, 2025
f465619
Make atmospherics machinery use OnTopic
out-of-phaze Jan 15, 2025
48abfe8
Make smartfridges use OnTopic
out-of-phaze Jan 15, 2025
e485b39
Update laptop vendor to use consts and OnTopic
out-of-phaze Jan 15, 2025
3e9b61e
Update airlocks to use OnTopic
out-of-phaze Jan 15, 2025
072f19c
Remove remaining (excess) machinery Topic overrides
out-of-phaze Jan 15, 2025
8210331
Replace structure Topic overrides with OnTopic
out-of-phaze Jan 15, 2025
8d77759
Convert cult runes to OnTopic
out-of-phaze Jan 15, 2025
b3e610e
Remove empty proc overrides
out-of-phaze Jan 15, 2025
9ce3e7b
Fix missed atmos computer Topic override
out-of-phaze Jan 16, 2025
602924b
Merge pull request #4746 from out-of-phaze/codequality/ontopic
MistakeNot4892 Feb 1, 2025
730bf71
Merge branch 'dev' of github.com:NebulaSS13/Nebula into fork/pyrelight
MistakeNot4892 Feb 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 1 addition & 6 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,6 @@ jobs:
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Setup Cache
uses: actions/cache@v3
with:
path: $HOME/spaceman_dmm/$SPACEMAN_DMM_VERSION
key: ${{ runner.os }}-spacemandmm-${{ env.SPACEMAN_DMM_VERSION }}
- name: Install OpenDream
uses: robinraju/release-downloader@v1.9
with:
Expand All @@ -71,7 +66,7 @@ jobs:
fileName: "DMCompiler_linux-x64.tar.gz"
extract: true
- name: Run OpenDream
run: ./DMCompiler_linux-x64/DMCompiler nebula.dme --suppress-unimplemented --skip-anything-typecheck --version=${BYOND_MAJOR}.${BYOND_MINOR} | python tools/od_annotator/__main__.py "$@"
run: ./DMCompiler_linux-x64/DMCompiler nebula.dme --define=UNIT_TEST --suppress-unimplemented --skip-anything-typecheck --version=${BYOND_MAJOR}.${BYOND_MINOR} | bash test/annotate_od.sh
Code:
runs-on: ubuntu-22.04
steps:
Expand Down
4 changes: 2 additions & 2 deletions code/__defines/MC.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
if (Datum.is_processing) {\
if(Datum.is_processing != #Processor)\
{\
PRINT_STACK_TRACE("Failed to start processing. [log_info_line(Datum)] is already being processed by [Datum.is_processing] but queue attempt occured on [#Processor]."); \
PRINT_STACK_TRACE("Failed to start processing. [log_info_line(Datum)] is already being processed by [Datum.is_processing] but queue attempt occurred on [#Processor]."); \
}\
} else {\
Datum.is_processing = Processor._internal_name;\
Expand All @@ -36,7 +36,7 @@ if(Datum.is_processing) {\
if(Processor.processing.Remove(Datum)) {\
Datum.is_processing = null;\
} else {\
PRINT_STACK_TRACE("Failed to stop processing. [log_info_line(Datum)] is being processed by [Datum.is_processing] but de-queue attempt occured on [#Processor]."); \
PRINT_STACK_TRACE("Failed to stop processing. [log_info_line(Datum)] is being processed by [Datum.is_processing] but de-queue attempt occurred on [#Processor]."); \
}\
}

Expand Down
2 changes: 1 addition & 1 deletion code/__defines/bodytype.dm
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
// Bodytype feature flags
/// Does not create DNA. Replaces SPECIES_FLAG_NO_SCAN.
#define BODY_FLAG_NO_DNA BITFLAG(0)
/// Cannot suffer halloss/recieves deceptive health indicator.
/// Cannot suffer halloss/receives deceptive health indicator.
#define BODY_FLAG_NO_PAIN BITFLAG(1)
/// Cannot eat food/drink drinks even if a stomach organ is present.
#define BODY_FLAG_NO_EAT BITFLAG(2)
Expand Down
1 change: 1 addition & 0 deletions code/__defines/flags.dm
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ The latter will result in a linter warning and will not work correctly.
#define ITEM_FLAG_PADDED BITFLAG(13) // When set on gloves, will act like pulling punches in unarmed combat.
#define ITEM_FLAG_CAN_TAPE BITFLAG(14) // Whether the item can be taped onto something using tape
#define ITEM_FLAG_IS_WEAPON BITFLAG(15) // Item is considered a weapon. Currently only used for force-based worth calculation.
#define ITEM_FLAG_MAGNETISED BITFLAG(16) // When worn on feet and standing on an appropriate spot, will prevent slipping.

// Flags for pass_flags (/atom/var/pass_flags)
#define PASS_FLAG_TABLE BITFLAG(0)
Expand Down
44 changes: 26 additions & 18 deletions code/__defines/hud.dm
Original file line number Diff line number Diff line change
@@ -1,23 +1,31 @@
// Keys used to set and retrieve icons from the UI decl system.
#define UI_ICON_INTERACTION "icon_interaction"
#define UI_ICON_ZONE_SELECT "icon_zone_sel"
#define UI_ICON_MOVEMENT "icon_movement"
#define UI_ICON_INVENTORY "icon_inventory"
#define UI_ICON_ATTACK "icon_attack"
#define UI_ICON_HANDS "icon_hands"
#define UI_ICON_INTERNALS "icon_internals"
#define UI_ICON_HEALTH "icon_health"
#define UI_ICON_CRIT_MARKER "icon_crit_marker"
#define UI_ICON_NUTRITION "icon_nutrition"
#define UI_ICON_HYDRATION "icon_hydration"
#define UI_ICON_FIRE_INTENT "icon_fire_intent"
#define UI_ICON_UP_HINT "icon_uphint"
#define UI_ICON_STATUS "icon_status"
#define UI_ICON_STATUS_FIRE "icon_status_fire"
#define UI_ICON_CHARGE "icon_charge"
// Keys used to create HUD elements, and to set and retrieve icons from the UI decl system.
#define HUD_STAMINA /decl/hud_element/stamina
#define HUD_DROP /decl/hud_element/drop
#define HUD_RESIST /decl/hud_element/resist
#define HUD_THROW /decl/hud_element/throw_toggle
#define HUD_MANEUVER /decl/hud_element/maneuver
#define HUD_ZONE_SELECT /decl/hud_element/zone_selector
#define HUD_MOVEMENT /decl/hud_element/movement
#define HUD_INVENTORY /decl/hud_element/inventory
#define HUD_ATTACK /decl/hud_element/attack
#define HUD_HANDS /decl/hud_element/hands
#define HUD_INTERNALS /decl/hud_element/internals
#define HUD_HEALTH /decl/hud_element/health
#define HUD_INTENT /decl/hud_element/intent
#define HUD_CRIT_MARKER /decl/hud_element/crit
#define HUD_NUTRITION /decl/hud_element/nutrition
#define HUD_HYDRATION /decl/hud_element/hydration
#define HUD_FIRE_INTENT /decl/hud_element/gun_mode
#define HUD_UP_HINT /decl/hud_element/upward
#define HUD_BODYTEMP /decl/hud_element/bodytemp
#define HUD_PRESSURE /decl/hud_element/pressure
#define HUD_TOX /decl/hud_element/toxins
#define HUD_OXY /decl/hud_element/oxygen
#define HUD_FIRE /decl/hud_element/fire
#define HUD_CHARGE /decl/hud_element/charge
#define HUD_ROBOT_MODULE /decl/hud_element/module_selection

#define GET_HUD_ALERT(M, A) ((istype(M?.hud_used, /datum/hud) && (A in M.hud_used.alerts)) ? M.hud_used.alerts[A] : 0)

#define CLEAR_HUD_ALERTS(M) if(istype(M?.hud_used, /datum/hud) && M.hud_used.alerts) { M.hud_used.alerts = null; }
#define SET_HUD_ALERT(M, A, V) if(istype(M?.hud_used, /datum/hud)) { LAZYSET(M.hud_used.alerts, A, V); }
#define SET_HUD_ALERT_MIN(M, A, V) if(istype(M?.hud_used, /datum/hud) && V < LAZYACCESS(M.hud_used.alerts, A)) { LAZYSET(M.hud_used.alerts, A, V); }
Expand Down
2 changes: 1 addition & 1 deletion code/__defines/machinery.dm
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ var/global/defer_powernet_rebuild = 0 // True if net rebuild will be called
#define PART_CARD /obj/item/stock_parts/computer/card_slot // ID Card slot component of this computer. Mostly for HoP modification console that needs ID slot for modification.
#define PART_PRINTER /obj/item/stock_parts/computer/nano_printer // Nano Printer component of this computer, for your everyday paperwork needs.
#define PART_DRIVE /obj/item/stock_parts/computer/hard_drive/portable // Portable data storage
#define PART_AI /obj/item/stock_parts/computer/ai_slot // AI slot, an intellicard housing that allows modifications of AIs.
#define PART_AI /obj/item/stock_parts/computer/ai_slot // AI slot, an intelliCard housing that allows modifications of AIs.
#define PART_TESLA /obj/item/stock_parts/computer/tesla_link // Tesla Link, Allows remote charging from nearest APC.
#define PART_SCANNER /obj/item/stock_parts/computer/scanner // One of several optional scanner attachments.
#define PART_D_SLOT /obj/item/stock_parts/computer/drive_slot // Portable drive slot.
Expand Down
12 changes: 12 additions & 0 deletions code/__defines/misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,11 @@
#define CONFIG_SERVER_JOIN_WHITELIST 3
#define CONFIG_SERVER_CONNECT_WHITELIST 4

// Coating name color config enums
#define CONFIG_COATING_COLOR_NONE 1
#define CONFIG_COATING_COLOR_MIXTURE 2
#define CONFIG_COATING_COLOR_COMPONENTS 3

// Location for server whitelist file to load from.
#define CONFIG_SERVER_WHITELIST_FILE "config/server_whitelist.txt"

Expand Down Expand Up @@ -252,6 +257,7 @@

//Inserts 'a' or 'an' before X in ways \a doesn't allow
#define ADD_ARTICLE(X) "[(lowertext(X[1]) in global.vowels) ? "an" : "a"] [X]"
#define ADD_ARTICLE_GENDER(X, GENDER) (GENDER == PLURAL ? "some [X]" : ADD_ARTICLE(X))

//Request Console Department Types
#define RC_ASSIST 1 //Request Assistance
Expand Down Expand Up @@ -376,5 +382,11 @@
#define CRAYON_DRAW_LETTER "letter"
#define CRAYON_DRAW_ARROW "arrow"

// Enum for results of is_space_movement_permitted()
#define SPACE_MOVE_SUPPORTED (-1)
#define SPACE_MOVE_FORBIDDEN 0
#define SPACE_MOVE_PERMITTED 1

// Default UI style applied to client prefs.
#define DEFAULT_UI_STYLE /decl/ui_style/midnight

2 changes: 0 additions & 2 deletions code/__defines/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -272,8 +272,6 @@

#define SPECIES_HUMAN "Human"
#define SPECIES_MONKEY "Monkey"
#define SPECIES_ALIEN "Humanoid"
#define SPECIES_GOLEM "Golem"

#define SURGERY_CLOSED 0
#define SURGERY_OPEN 1
Expand Down
16 changes: 8 additions & 8 deletions code/__defines/subsystems.dm
Original file line number Diff line number Diff line change
Expand Up @@ -43,14 +43,14 @@
#define SS_INIT_OVERLAY 1
#define SS_INIT_DEFAULT 0
#define SS_INIT_AIR -1
#define SS_INIT_VIS_CONTENTS -2
#define SS_INIT_MISC_LATE -3
#define SS_INIT_MISC_CODEX -4
#define SS_INIT_ALARM -5
#define SS_INIT_SHUTTLE -6
#define SS_INIT_GOALS -7
#define SS_INIT_LIGHTING -8
#define SS_INIT_WEATHER -9
#define SS_INIT_MISC_LATE -2
#define SS_INIT_MISC_CODEX -3
#define SS_INIT_ALARM -4
#define SS_INIT_SHUTTLE -5
#define SS_INIT_GOALS -6
#define SS_INIT_LIGHTING -7
#define SS_INIT_WEATHER -8
#define SS_INIT_VIS_CONTENTS -9
#define SS_INIT_ZCOPY -10
#define SS_INIT_HOLOMAP -11
#define SS_INIT_XENOARCH -12
Expand Down
13 changes: 11 additions & 2 deletions code/_helpers/animations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -69,11 +69,20 @@
animate(time = 1)
animate(alpha = 0, time = 3, easing = CIRCULAR_EASING|EASE_OUT)

// Shake animation stolen from Polaris.
/atom
/// How much to shake the atom when struck.
/// Larger objs should have smaller numbers or it looks weird.
var/shake_animation_degrees = 4

/atom/proc/shake_animation(var/intensity = 8)
var/init_px = pixel_x
var/shake_dir = pick(-1, 1)
animate(src, transform=turn(matrix(), intensity*shake_dir), pixel_x=init_px + 2*shake_dir, time=1)
animate(transform=null, pixel_x=init_px, time=6, easing=ELASTIC_EASING)
var/matrix/M = matrix()
M.Scale(icon_scale_x, icon_scale_y)
M.Translate(0, 16*(icon_scale_y-1))
animate(src, transform=turn(M, shake_animation_degrees * shake_dir), pixel_x=init_px + 2*shake_dir, time=1)
animate(transform=M, pixel_x=init_px, time=6, easing=ELASTIC_EASING)

/atom/proc/SpinAnimation(speed = 10, loops = -1, clockwise = 1, segments = 3, parallel = TRUE)
if(!segments)
Expand Down
4 changes: 2 additions & 2 deletions code/_helpers/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
var/user_loc = user.loc

var/drifting = 0
if(!user.Process_Spacemove(0) && user.inertia_dir)
if(user.is_space_movement_permitted() == SPACE_MOVE_FORBIDDEN && user.inertia_dir)
drifting = 1

var/target_loc = target.loc
Expand Down Expand Up @@ -101,7 +101,7 @@
var/atom/original_loc = user.loc

var/drifting = 0
if(!user.Process_Spacemove(0) && user.inertia_dir)
if(user.is_space_movement_permitted() == SPACE_MOVE_FORBIDDEN && user.inertia_dir)
drifting = 1

var/holding = user.get_active_held_item()
Expand Down
2 changes: 1 addition & 1 deletion code/_helpers/text.dm
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@

//Run sanitize(), but remove <, >, " first to prevent displaying them as &gt; &lt; &34; in some places after html_encode().
//Best used for sanitize object names, window titles.
//If you have a problem with sanitize() in chat, when quotes and >, < are displayed as html entites -
//If you have a problem with sanitize() in chat, when quotes and >, < are displayed as html entities -
//this is a problem of double-encode(when & becomes &amp;), use sanitize() with encode=0, but not the sanitize_safe()!
/proc/sanitize_safe(input, max_length = MAX_MESSAGE_LEN, encode = TRUE, trim = TRUE, extra = TRUE, ascii_only = FALSE)
return sanitize(replace_characters(input, list(">"=" ","<"=" ", "\""="'")), max_length, encode, trim, extra, ascii_only)
Expand Down
2 changes: 1 addition & 1 deletion code/_helpers/unsorted.dm
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@ Turf and target are seperate in case you want to teleport some distance from a t
return 0
return 1

//Ensure the frequency is within bounds of what it should be sending/recieving at
//Ensure the frequency is within bounds of what it should be sending/receiving at
/proc/sanitize_frequency(var/f, var/low = PUBLIC_LOW_FREQ, var/high = PUBLIC_HIGH_FREQ)
return clamp(round(f), low, high)

Expand Down
7 changes: 5 additions & 2 deletions code/_helpers/visual_filters.dm
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
// These involve BYOND's built in filters that do visual effects, and not stuff that distinguishes between things.
// These involve BYOND's built-in filters that do visual effects, and not stuff that distinguishes between things.

// All of this ported from TG.
// And then ported to Nebula from Polaris.
/atom/movable
var/list/filter_data // For handling persistent filters
VAR_PRIVATE/list/filter_data // For handling persistent filters

// Defining this for future proofing and ease of searching for erroneous usage.
/image/proc/add_filter(filter_name, priority, list/params)
filters += filter(arglist(params))
return TRUE

/atom/movable/proc/has_filter(filter_name)
return (name in filter_data)

/atom/movable/proc/add_filter(filter_name, priority, list/params, force_update = FALSE)

// Check if we already have a filter and hence don't need to rebuild filters.
Expand Down
2 changes: 1 addition & 1 deletion code/_onclick/click.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@

After that, mostly just check your state, check whether you're holding an item,
check whether you're adjacent to the target, then pass off the click to whoever
is recieving it.
is receiving it.
The most common are:
* mob/UnarmedAttack(atom,adjacent) - used here only when adjacent, with no item in hand; in the case of humans, checks gloves
* atom/attackby(item,user) - used only when adjacent
Expand Down
2 changes: 1 addition & 1 deletion code/_onclick/drag_drop.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
The below procs are called on the atom you're dragging. In a lot of circumstances we want to use the
recieving object instead, so that's the default action. This allows you to drag
receiving object instead, so that's the default action. This allows you to drag
almost anything into a trash can.
*/

Expand Down
49 changes: 14 additions & 35 deletions code/_onclick/hud/_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -32,17 +32,13 @@
#define ui_storage1 "RIGHT-3:16,BOTTOM:5"
#define ui_storage2 "RIGHT-4:16,BOTTOM:5"

#define ui_alien_head "CENTER-3:12,BOTTOM:5" //aliens
#define ui_alien_oclothing "CENTER-2:14,BOTTOM:5"//aliens

#define ui_inv1 "CENTER-1,BOTTOM:5" //borgs
#define ui_inv2 "CENTER,BOTTOM:5" //borgs
#define ui_inv3 "CENTER+1,BOTTOM:5" //borgs
#define ui_borg_store "CENTER+2,BOTTOM:5" //borgs
#define ui_borg_inventory "CENTER-2,BOTTOM:5"//borgs
#define ui_borg_drop_grab "CENTER-3,BOTTOM:5"//borgs
#define ui_monkey_mask "LEFT+4:14,BOTTOM:5" //monkey
#define ui_monkey_back "LEFT+5:14,BOTTOM:5" //monkey
// Robot defines.
#define ui_inv1 "CENTER-1,BOTTOM:21"
#define ui_inv2 "CENTER,BOTTOM:21"
#define ui_inv3 "CENTER+1,BOTTOM:21"
#define ui_borg_store "CENTER+2,BOTTOM:21"
#define ui_borg_inventory "CENTER-2,BOTTOM:21"
#define ui_borg_drop_grab "CENTER-3,BOTTOM:21"

#define ui_construct_health "RIGHT:00,CENTER:15" //same height as humans, hugging the right border
#define ui_construct_fire "RIGHT-1:16,CENTER+1:13" //above health, slightly to the left
Expand All @@ -57,18 +53,17 @@
#define ui_attack_selector "RIGHT-2:27,BOTTOM+2:9"
#define ui_zonesel "RIGHT-1:28,BOTTOM:5"
#define ui_acti_alt "RIGHT-1:28,BOTTOM:5" //alternative intent switcher for when the interface is hidden
#define ui_stamina "RIGHT-3:24,BOTTOM+1:5"
#define ui_stamina "RIGHT-2:24,BOTTOM:8"

#define ui_borg_pull "RIGHT-3:24,BOTTOM+1:7"
#define ui_borg_module "RIGHT-2:26,BOTTOM+1:7"
#define ui_borg_panel "RIGHT-1:28,BOTTOM+1:7"

//Gun buttons
#define ui_gun1 "RIGHT-2:26,BOTTOM+2:7"
#define ui_gun2 "RIGHT-1:28, BOTTOM+3:7"
#define ui_gun3 "RIGHT-2:26,BOTTOM+3:7"
#define ui_gun1 "RIGHT-1:28,BOTTOM+3:7"
#define ui_gun2 "RIGHT-2:28,BOTTOM+3:7"
#define ui_gun3 "RIGHT-3:28,BOTTOM+3:7"
#define ui_gun_select "RIGHT-1:28,BOTTOM+2:7"
#define ui_gun4 "RIGHT-3:24,BOTTOM+2:7"

//Upper-middle right (damage indicators and up hint)
#define ui_up_hint "RIGHT-1:28,TOP-1:29"
Expand All @@ -87,9 +82,9 @@
#define ui_temp "RIGHT-1:28,CENTER-1:13"
#define ui_health "RIGHT-1:28,CENTER:15"
#define ui_internal "RIGHT-1:28,CENTER+1:17"
//borgs
#define ui_borg_health "RIGHT-1:28,CENTER-1:13" //borgs have the health display where humans have the pressure damage indicator.
#define ui_alien_health "RIGHT-1:28,CENTER-1:13" //aliens have the health display where humans have the pressure damage indicator.

// Robots have the health display where humans have the pressure damage indicator.
#define ui_borg_health "RIGHT-1:28,CENTER-1:13"

//Pop-up inventory
#define ui_shoes "LEFT+1:8,BOTTOM:5"
Expand All @@ -105,22 +100,6 @@

#define ui_head "LEFT+1:8,BOTTOM+3:11"

//Intent small buttons
#define ui_help_small "RIGHT-3:8,BOTTOM:1"
#define ui_disarm_small "RIGHT-3:15,BOTTOM:18"
#define ui_grab_small "RIGHT-3:32,BOTTOM:18"
#define ui_harm_small "RIGHT-3:39,BOTTOM:1"

//#define ui_swapbutton "6:-16,1:5" //Unused

//#define ui_headset "BOTTOM,8"
#define ui_hand "CENTER-1:14,BOTTOM:5"
#define ui_hstore1 "CENTER-2,CENTER-2"
//#define ui_resist "RIGHT+1,BOTTOM-1"
#define ui_sleep "RIGHT+1, TOP-13"
#define ui_rest "RIGHT+1, TOP-14"


#define ui_iarrowleft "BOTTOM-1,RIGHT-4"
#define ui_iarrowright "BOTTOM-1,RIGHT-2"

Expand Down
6 changes: 6 additions & 0 deletions code/_onclick/hud/action.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@
/datum/action/Destroy()
if(owner)
Remove(owner)
QDEL_NULL(button)
if(target)
var/obj/item/target_item = target
if(istype(target_item) && target_item.action == src)
target_item.action = null
target = null
return ..()

/datum/action/proc/SetTarget(var/atom/Target)
Expand Down
11 changes: 0 additions & 11 deletions code/_onclick/hud/ai.dm

This file was deleted.

14 changes: 0 additions & 14 deletions code/_onclick/hud/animal.dm

This file was deleted.

Loading
Loading