* Machine list is now stored in SSmachines | Remove excessive use of global lists for specific machine types
* Resolve merge conflicts
* Modular adjustments
* destroy this double return on destroy
---------
Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
* [MDB IGNORE] Gets rid of the /brig shuttle floor subtype (#74100)
## About The Pull Request
Removes the /brig red plastitanium shuttle floor, replaces the checks
related to it with checking if the area is the shuttle brig
From what I checked in vscode, all the shuttles that use this floor
already also have the shuttle brig area on the same tiles so it changes
nothing (and might even fix things if shuttles don't use this floor type
for their shuttle brig)
## Why It's Good For The Game
Why the fuck are we checking for a TURF
## Changelog
Not player facing
* [MDB IGNORE] Gets rid of the /brig shuttle floor subtype
* rest the affected maps
* Update emergency_outpost.dmm
---------
Co-authored-by: SgtHunk <68669754+SgtHunk@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Fixes hijacked shuttles not counting as escaped, cleans up associated code (#73623)
## About The Pull Request
Fixes#72240
So, in the past, `onCentCom` ran a check at the end that said "if we're
on centcom z, in centcom area, or in shuttle that is endgame launched:
return TRUE"
Meanwhile its brother `onSyndieBase` did not need to run the same
checks, because it was also on the centcom z-level.
This meant that for the purposes of `considered_escaped`, `onCentCom`
pretty much entirely eclipsed `onSyndieBase`, only mattering for, well,
Nuke Ops
So the fix was simple - add the check for "in shuttle that is engame
launched" to `onSyndieBase`.
I took this opportunity to do a quick audit of associated "escaped" and
"alive" code. Did you know that hardcore random only checked that you
were on centcom to award survival points? Instead of any other checks
for escaped like stat?
Also the ancient "romerol zombies can't be used as an easy way to
greentext escape" was broken, because it checked the wrong species ID?
Bonus performance optimization: `in area` -> `in
area.get_contained_turfs()`
## Why It's Good For The Game
Hijack does not turn around to become an L
## Changelog
🆑 Melbert
fix: Hijacked shuttles now count as "escaping alive" once agian
fix: Hardcore random survival now actually checks that you've escaped
alive, and not just made it to centcom
fix: Intelligent zombies can now escape.
fix: Infectious zombies now don't count as escaped as intended.
/🆑
* Fixes hijacked shuttles not counting as escaped, cleans up associated code
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Escape pod early launch fixes (#73442)
## About The Pull Request
Ever since dynamic shuttle dock size calculation, escape pods failed to
select the random lavaland/icemoon docking ports as a valid target, as
those ports had no shuttle attached to them, and thus, their dimensions
were stuck at 0. This PR makes permits these to be always a valid
target, similar to hyperspace transit docking ports.
Also, the various pods connected to the pod computer multiple times.
Each of them has added pod_lavaland as its valid destination lists, and
then when the escape pod port's id got updated with a counter to ensure
a unique ID, they have added pod_[counter]_lavaland to its destination.
This meant that every pod past the first had a dropdown, so they could
select which destination they could land at, instead of just the one
intended for solely them. This is also fixed.
Also autodocs two vars, and replaces some single letter vars.
## Why It's Good For The Game
fixes#72966
## Changelog
🆑
fix: emagged/delta pods properly fly to lavaland
/🆑
* Escape pod early launch fixes
---------
Co-authored-by: Profakos <profakos@gmail.com>
[NO GBP] Lazy Template Cordoning | Double Runtime Fix (#72709)
## About The Pull Request
Adds automatic cordoning to block reservations.
Also fixes an issue where ChangeTurf would cause SSicon_smoothing to
throw runtimes by calling QUEUE_SMOOTH regardless of initialization
completion
## Why It's Good For The Game
## Changelog
---------
Signed-off-by: GitHub <noreply@github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Abstract away stuff that acts on baseturfs directly into their own procs, and kills some dead code related to baseturfs + tests (#72117)
Adds some new procs relating to baseturfs that replaces some code that
reads and sets them directly. Moves them to their own file. **To
reviewers: Any proc in baseturfs.dm that is snake_case is mine, anything
else is just moved**.
Adds tests for the existing procs of baseturfs.
I'm going to be doing some optimizations to baseturfs that change the
actual representation of baseturfs, and so I'm prepping these to be
implementation agnostic.
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Adds two new whiteships, the "Personal Transit Shuttle" and the "Obelisk" (#71093)
* Adds two new whiteships, the "Personal Transit Shuttle" and the "Obelisk"
Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
* [MDB IGNORE] Shuttle engines part 2: Engines are now machines (#69793)
* Makes engines machines instead of structures
* Updates the maps
* Fixes boards and anchoring
* Removes 2 unused engine types
Router was actually used a total of once, so I just replaced it with propulsion.
I think cutting down on these useless engine types that make no difference in-game would be a nice first step to adding more functionalities to them.
* Don't use power (since shuttles dont have)
Shuttles don't have APCs, instead they just have infinite power, so I'm removing their power usage for now. I'm hoping this can be removed when unique mechanics are added to engines, because I would like them to make use of power like other machines.
* re-organizes vars
* deletes deleted dm file
* Slightly improves cargo selling code
* Renames the updatepaths
* Removes in_wall engines
I hate this stupid engine it sucks it's useless it's used solely for the tram it provides nothing of benefit to the server
replaces them with regular engines
* [MDB IGNORE] Shuttle engines part 2: Engines are now machines
* should fix that
* THEY. REMOVED IN WALL ENGINES. THE BASTARDS.
* common mining shuttle
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Illiterate human-like mobs can send shuttles to a random destination + refactors snowflake checks on the shuttle consoles
* update modular
* and undo unnecessary arrival shuttle edit
* Fixes the stuff that didn't compile :)
Co-authored-by: VexingRaven <msgerbs@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Fixes emergency pods not working (#69892)
* Fixes emergency pods not working
* ``get_control_console()`` currently doesn't work because it's runtiming instead of properly finding the shuttle computer, which would cause pod's request() to return and call parent, but parent handles sending the pods off, so I fixed it by not calling parent if they didn't have a console, and also fixed it finding its console.
* wtf emagged shuttles can just go?
* replaces || with &&
* Fixes emergency pods not working
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Fixes inconsistencies in engine thrust (#69826)
current_engines and initial_engines were actually their thrust power, which I was unaware of because of undocumented vars.
I renamed the, documented them, and fixed them.
* Fixes inconsistencies in engine thrust
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* addresses reviews on the tram pr made after merge, fixes diagonal movement bugs (#68033)
* addresses reviews on the tram pr made after merge, fixes diagonal movement bugs
* wew
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* (code bounty) The tram is now unstoppably powerful. it cannot be stopped, it cannot be slowed, it cannot be reasoned with. YOU HAVE NO IDEA HOW READY YOU ARE
* fex
* fex
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Renames the `change_area` proc to be more accurate (#65758)
* Renames the `change_area` proc to be more accurate
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
* Add tram whiteship to the list of potential whiteships (#60165)
The Tramstation was added to our collection of shuttles but there's no chance for it to spawn on its own like the other ships. This fixes that.
* Adds tram whiteship to the list of potential whiteships
Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
* Layer overhaul (#57915)
## About The Pull Request
Changes up some layer and plane defines for no particular reason lol
## Why It's Good For The Game
Planes actually override layers, and layers control ordering within planes. A lot of the usage of plane and layer was wholly unnecessary. This refactor helps future maintainability while also being needed staging for _future features._
* Layer overhaul
* aaaaaaaaa
a
Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* adds a bitflag for no random pixel shift on dropping, adds turf_flags var to replace usage of flags_1 on turfs (#57263)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* adds a bitflag for no random pixel shift on dropping, adds turf_flags var to replace usage of flags_1 on turfs
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* repaths plasteel tiles to iron
* Update robot_modules.dm
* a
* fuck me
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>