* grass touch protocol - Rebases to latest master to fix conflicts
* aight local tests are passing lets see if our golf works
* It is 5 am and our ass COMPLETELY overcomplicated this lmaooo
* Addresses feedback - Clarifies comments, swaps internal var names for grasstouchless and selfdestructive, makes the third tier a little less demanding, and fixes 1 hours
* Addresses review - conflict fix
* This too
* Axes playtime exclusion for ghosts
* Use switch expression
code style nit
* Refactor/cleanup
Use IGameTiming.RealTime to track time instead of DateTime. Use nullable instead of magic values.
Expose the current day value through a property that is always up to date, instead of making the API to read the CVar that updates at inconsistent times. This also makes it trivial to debug with VV.
Other minor cleanup like using string interp, code style fixes, comments, etc.
---------
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
* Disable parallax texture preloading
Many parallax layers are specific to a single map and will likely never be loaded for the duration of the game. Save VRAM by not loading them always.
Requires engine master
* Put generated parallax identifier in texture name
Makes it show up properly in debugging tools
* Don't load generated parallaxes multiple times
Many parallax prototypes re-use the same generated parallax configs. These generated parallaxes were being loaded multiple times at once, which was a massive waste of VRAM.
We now move these into a separate cache for deduplication. I had to write a lot of logic to handle loading cancellation and ref counting. Yay.
Also fixes some spaghetti with the previous parallax loading system: cancellation didn't work properly, give proper names to generated texture names, etc.
This saves like 100+ MB of VRAM.
* Add mapping editor (#757)
* Remove mapping actions, never again
* Cleanup actions system
* Jarvis, remove all references to CM14
* Fix InventoryUIController crashing when an InventoryGui is not found
* Rename mapping1 to mapping
* Clean up context calls
* Add doc comments
* Add delegate for hiding decals in the mapping screen
* Jarvis mission failed
* a
* Add test
* Fix not flushing save stream in mapping manager
* change
* Fix verbs
* fixes
* localise
---------
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
The F3 coords manager is blocked if you're not an admin. This check happened even when playing a replay, where you actually aren't. There's now a check to make sure you are actually server-connected-to-game before running the logic.
Also moved it to a manager because this *shouldn't be a bloody entity system in the first place*.
* Vox stuff
* Species loadouts and lobby refactor
The control flow for lobby is all over the shop so I pulled it all up from the individual controls so now they handle the bare minimum required and LobbyUIController handles the rest.
* a
* Bulk changes
* a
* weh
* Character import / export
* finalise
* woops this stuff too
* Also datafield exporting
* comments
* Review
* Fix some bugs in stations and do a little cleanup.
* Begin backporting the guidebook.
* wow that's a lot of work.
* More work, gives the monkey some more interactions.
* disco monkye.
* monky
* jobs entry.
* more writing.
* disco
* im being harassed
* fix spacing.
* i hate writing.
* Update Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
* builds again
* a
* pilfer changes from AL
* fix and remove unused code
* pilfer actual guide changes from AL
* localization
* more error logs & safety checks
* replace controls button with command
* add test
* todos
* pidgin parsing
* remove old parser
* Move files and change tree sorting
* add localization and public methods.
* Add help component/verb
* rename ITag to IDocumentTag
* Fix yml and tweak tooltips
* autoclose tooltip
* Split container
* Fancier-tree
* Hover color
* txt to xml
* oops
* Curse you hidden merge conflicts
* Rename parsing manager
* Stricter arg parsing
tag args must now be of the form key="value"
* Change default args
* Moar tests
* nullable enable
* Even fancier tree
* extremely fancy trees
* better indent icons
* stricter xml and subheadings
* tweak embed margin
* Fix parsing bugs
* quick fixes.
* spain.
* ogh
* hn bmvdsyc
Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
* Rejig Actions
* fix merge errors
* lambda-b-gon
* fix PAI, add innate actions
* Revert "fix PAI, add innate actions"
This reverts commit 4b501ac083e979e31ebd98d7b98077e0dbdd344b.
* Just fix by making nullable.
if only require: true actually did something somehow.
* Make AddActions() ensure an actions component
and misc comments
* misc cleanup
* Limit range even when not checking for obstructions
* remove old guardian code
* rename function and make EntityUid nullable
* fix magboot bug
* fix action search menu
* make targeting toggle all equivalent actions
* fix combat popups (enabling <-> disabling)
* fix networking
* Allow action locking
* prevent telepathy
* Rejig Actions
* fix merge errors
* lambda-b-gon
* fix PAI, add innate actions
* Revert "fix PAI, add innate actions"
This reverts commit 4b501ac083e979e31ebd98d7b98077e0dbdd344b.
* Just fix by making nullable.
if only require: true actually did something somehow.
* Make AddActions() ensure an actions component
and misc comments
* misc cleanup
* Limit range even when not checking for obstructions
* remove old guardian code
* rename function and make EntityUid nullable
* fix magboot bug
* fix action search menu
* make targeting toggle all equivalent actions
* fix combat popups (enabling <-> disabling)
* Implement showing rules on first connection
* Clean up RulesManager
* Change changelog and rules unread to use CVars
* Fix missing change
* Rename InfoWindow to RulesAndInfoWindow
* Change default server.id to unknown
* Fix invalid file contents and getting CVar
* GameTicker turned into an EntitySystem
* Turns ClientGameTicker into an EntitySystem, turn NetMessages into events
* Change event names to be more consistent with the rest.
* YAML linter uses the dummy gameticker CVar override.
* Fix game ticker initialization order
* Dummy ticker won't spawn players.
* Fix character creation test