A complete rewrite of the dock proc for shuttles to make it more maintainable and readable and also bring over some new features while we're at it. This allows for multi-area shuttles and more control over the effects of anything being moved.
Areas, and movable atoms all have (before|on|after)ShuttleMove procs, turfs have (from|to)ShuttleMove procs which are called the same as beforeShuttleMove.
All ShuttleMove procs have been moved to a single file in the shuttle module.
Stationary docks will have their baseturf_type and area_type modified in maps once the problems have been worked out.
* adds round table to replace tacking some data in feedback table
* removes obsolete code for acolytes_survived
* uses a better query
* corrects var name
* uses actual sql queries
* adds commit column and connected checks before queries
Still very important, still a victim of Github memes.
Tried to push to Militairies version but it had like a million commits so fuck that. This accounts for Jordie0608's requested changes. The latest changes moves the "no recall" aspect to the emergency shuttle subsystem so now any future code can simply set SSshuttle.emergencyNoRecall to TRUE if they want to prevent recalls from taking place.
See #27228 for references to the last 3 PR's.
tweak: Gang mode now calls a 4 minute unrecallable shuttle once 60% of the crew is dead
* Add the system for managed global variables
* Travis ban old globals
* So you CAN inline proccall, that's neat
* Fix that
* master.dm
* Remove the hack procs
* Move InitGlobals to the proper spot
* configuration.dm
* Fix the missing pre-slash
* clockcult.dm
* This is probably for the best
* Doy
* Fix shit
* Rest of the DEFINES tree
* Fix
* Use global. for access
* Update find_references_in_globals
Always hated that proc
Whoever made it must've bee a r e a l idiot...
* __HELPERS tree
* Move global initialization to master.
Fix the declaration
* database.dm
* Dat newline
* I said DECLARATIVE order!
* Here's something you can chew on @Iamgoofball
* game_modes.dm
* Fix this
* genetics.dm
* flavor_misc.dm
* More stuff
* Do it mso's way. Keep the controllers as global
* Make master actually see it
* Fix
* Finish _globalvars/lists
* Finish the rest of the _globalvars tree
* This is weird
* Migrate the controllers
* SLOTH -> GLOB
* Lighting globals
* round_start_time -> ticker
* PAI card list -> pai SS
* record_id_num -> static
* Diseases list -> SSdisease
* More disease globals to the SS
* More disease stuff
* Emote list
* Better and better
* Bluh
* So much stuff
* Ahh
* Wires
* dview
* station_areas
* Teleportlocs
* blood_splatter_icons
* Stuff and such
* More stuff
* RAD IO
* More stuff and such
* Blob shit
* Changeling stuff
* Add "Balance" to changelogs
* Balance for changelog compiler + Auto Tagging
* Update the PR template
* hivemind_bank
* Bip
* sacrificed
* Good shit
* Better define
* More cult shit
* Devil shit
* Gang shit
* > borers
Fix shit
* Rename the define
* Nuke
* Objectives
* Sandbox
* Multiverse sword
* Announce systems
* Stuff and such
* TC con
* Airlock
* doppllllerrrrrr
* holopads
* Shut up byond you inconsistent fuck
* Sneaky fuck
* Burp
* Bip
* Fixnshit
* Port without regard
* askdlfjs;
* asdfjasoidojfi
* Protected globals and more
* SO MANY
* ajsimkvahsaoisd
* akfdsiaopwimfeoiwafaw
* gsdfigjosidjfgiosdg
* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!
* facerolll
* ASDFASDFASDF
* Removes the unused parts of dmm_suite
* WIP
* Fix quote
* asdfjauwfnkjs
* afwlunhskjfda
* asfjlaiwuefhaf
* SO CLOSE
* wwwweeeeeewwwww
* agdgmoewranwg
* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?
* Fix syntax errors
* 100 errors
* Another 100
* So many...
* Ugh
* More shit
* kilme
* Stuuuuuufffff
* ajrgmrlshio;djfa;sdkl
* jkbhkhjbmjvjmh
* soi soi soi
* butt
* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING
* lllllllllllllllllllllllllllllllllllllllllll
* afsdijfiawhnflnjhnwsdfs
* yugykihlugk,kj
* time to go
* STUFFF!!!
* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!
* ngoaijdjlfkamsdlkf
* Break time
* aufjsdklfalsjfi
* CONTROL KAY AND PRAY
* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
* Goteem
* Fix testing mode
* This does not belong in this PR
* Convert it to a controller
* Eh, fuck this option
* Revert controllerization Ill do it some other time
* Fix
* Working controllerization
* FOR THE LOVE OF CHRIST PROTECT THE LOGS
* Protect admins and deadmins
* Use the inbuilt proc
🆑 coiax
fix: Emergency shuttles will now forget early launch authorizations if
they cannot launch due to a hostile environment.
/🆑
This isn't intended behaviour. And it's kind of punishing people for
leaving the shuttle to go deal with the hostile environment, and then
fucking off without them.
* Highlight docking ports in TESTING
* Buckle arrivals to their seats
* Fixes shuttle/Initialize not calling the base
* Arrivals docking
* Use forceMove so the shuttle effect starts
* Forgot this check
* Fixes
* Needful
* Fix this shit
* Line endings?
* Double check, fix sound
* Remove empty if
* Fucking lists
* Fix parallax and ghosts
* Ghost fix
* GHOST
* Fix shit
* Fix parallax + config
* I lied slightly
* Hyperspace sound refactor
* Finish fixing the maps + doors
* Fix the sound not playing
* Consoles + area fix
* Updates default config
* Fix line endings
* Safety checks
* Damage checks
* This should be down here
* Clean some stuff up
* Fix a few things on Delta and Omega
* Delete the useless air alarm on Pubby's shuttle
* Fixes#24727
* Always the fucking line endings
* Fix this negative check
* LINE ENDINGS!!!!!
* Revert to master
* Redo the changes
* Fix the sound not repeating
* Readds the shuttle door
* Fix people disabling latejoins
* Refactors atom/Initialize
Captialized for compiling correctness and to be more inline with Destroy
Will now be called from atom/New if the world initialization loop in SSobj has already run. Should always call the base.
Now comes with the `roundstart` parameter indicating whether or not it was called by SSobj or atom/New
Other fixes/tweaks:
- Renamed a proc called Initialize in abduction consoles to Setup
- Removed /obj/item/device/radio/headset/headset_sec/department: Broken and referenced literally nowhere in the code
- Removed a spawn from the Initialize of turbine_computer which made literally zero sense
- Generalized the proc which fixes RND servers with no id set
Reasoning: It's better to check roundstart per function than to have to duplicate code in New and Initialize. Think of it as a safer New for atoms. If we move enough stuff to it, initial map load performance will increase due to less New calls
* Fixed a thing
* Actually, fuck the police
* >Expecting a merge without errors
* >Not calling ..() in New
* Sanic
* Fix the headset bug
* Makes sure the map loaders dew it right
* Fixes ruins being initialized twice
* Rename roundstart -> mapload
* Revert "Rename roundstart -> mapload"
This reverts commit 667c327fd2ccfa3ce4f4db52eac03f9e8b0f6812.
* Remove unrelated change
* A more direct solution to map loads
* And now we shouldnt need this warning
* Add the new var to SSobj recovery
* Revert "Revert "Rename roundstart -> mapload""
This reverts commit dee07dbd5e4696554ac43aae5b91cce743b9b9e0.
* Line endings
* Makes shuttle repeal message work also changes the message itself.
* Fixed a spelling mistake.
* Made alert message more clear to players.
* Fixes grammar issue & de-linebreaks some code.
* Did not know how github reviews worked...
* Ports Space Parallax from vg/yogs
* KILL ME
* fuck shit
* fixes
* rgfkbjhkefrhjkfrejhkfds
* Parallax, part 2.
* Gotta get these defines in before remie notices!
* DAMN IT! SHE FOUND ONE!
* fixes orbits
* fix orbits take 2
* Fixes some things with parallax
* Refactors parallax shuttle animations.
* Added a Syndicate dock for the Emergency Shuttle
* Removes window from doorway to syndicate base
* Diverts shuttle if the hijack conditions are met
* Fixes incorrect define
* Shuttle needs people on it to hijack
* Redoes the syndicate base extension
* Centcom always lies
* Captain can buy a new escape shuttle
* A messy way to fix/avoid the issue
* Hopefully fixes potential href exploit
* Makes the code better so oranges wont yell at me anymore
* Shuttle SS keeps track of hostile environments
Instead of changing SSshuttle.emergencyNoEscape manually, datums now
register and clear themselves with the SS, and a hostile environment is
if any datums are registered.
Note that it's datums that can be registered, as rev and blob gamemodes
register themselves.
Overhauling this means that you can have multiple sources of no-recall,
which although can't happen at present, may do so in the future whenever
multi-antag rounds happen.
🆑 coiax
tweak: The AI doomsday device timer is more accurate.
fix: Fixes a bug where the doomsday device would take twice as long as
it should.
/🆑
AI doomsday timer uses world.time, uses fastprocess to make sure the
announcements go out on time, added observer countdown for
the AI doomsday device.
* Fixes bugs