* Remove the unnecessary NetID property from ComponentState.
* Remove Component.NetworkSynchronizeExistence.
* Removed Component.NetID.
* Adds component netID automatic generation.
* Removed NetIdAttribute from serverside components with no corresponding clientside registration.
* Completely remove static NetIds.
* Renamed NetIDAttribute to NetworkedComponentAttribute.
* Add GenerateNetIds calls to client and server entry points.
Add test to make sure auto generated NetIds are identical.
* Component changes when rebasing that I am too lazy to rewrite into the branch.
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
* HandsGuiState
* Gui state setting methods
* code cleanup
* Removes TryGetHands
* ClientHand
* Gui Hands
* Refactor WIP 1
* Hand index
* refactors 2
* wip 3
* wip 4
* wiip 4
* wip 5
* wip 6
* wip 7
* wip 8
* wip 9
* wip 11
* Hand ui mostly looks fine
* hands gui cleanup 1
* cleanup 2
* wip 13
* hand enabled
* stuff
* Hands gui gap fix
* onpressed test
* hand gui buttons events work
* bag activation works
* fix item use
* todo comment
* hands activate fix
* Moves Client Hands back to using strings to identify active hand
* fixes action hand highlighting
* diff fix
* serverhand
* SharedHand
* SharedHand, IReadOnlyHand
* Client Hands only stores SharedHand
* cleanup server hands
* server hand container shutdown
* misc renames, refactors of serverhand
* stuff 1
* stuff 3
* server hand refactor 1
* Undo API changes to remove massive diff
* More API name fixes
* server hands cleanup 2
* cleanup 3
* dropping cleanup
* Cleanup 4
* MoveItemFromHand
* Stuff
* region sorting
* Hand Putter methods cleanup
* stuff 2
* Merges all of serverhand and clienthand into sharedhand
* Other hands systems, hack to make inhands update (gui state set every frame, visualzier updated every frame)
* GetFinalDropCoordinates cleanup
* SwapHands cleanup
* Moves server hands code to shared hands
* Fixed hand selected and deselected
* Naming fixes
* Server hands system cleanup
* Hands privacy fixes
* Client hand updates when containers are modified
* HeldItemVisualizer
* Fixes hand gui item status panel
* method name fix
* Swap hands prediction
* Dropping prediction
* Fixes pickup entity animation
* Fixes HeldItemsVisualizer
* moves item pickup to shared
* PR cleanup
* fixes hand enabling/disabling
* build fix
* Conflict fixes
* Fixes pickup animation
* Uses component directed message subscriptions
* event unsubscriptions in hand system
* unsubscribe fix
* CanInsertEntityIntoHand checks if hand is enabled
* Moving items from one hand to another checks if the hands can pick up and drop
* Fixes stop pulling not re-enabling hand
* Fixes pickup animation for entities containers on the floor
* Fixes using held items
* Fixes multiple hands guis appearing
* test fix
* removes obsolete system sunsubscribes
* Checks IsFirstTimePredicted before playing drop animation
* fixes hand item deleted crash
* Uses Get to get other system
* Replaces AppearanceComponent with SharedAppearanceComponent
* Replaces EnsureComponent with TryGetComponent
* Improves event class names
* Moves property up to top of class
* Moves code for determining the hand visualizer rsi state into the visualizer instead of being determined on hand component
* Eventbus todo comment
* Yaml fix for changed visualizer name
* Makes HandsVisuals a byte
* Removes state from HandsVisualizer
* Fixes hand using interaction method name
* Namespace changes fixes
* Fix for changed hand interaction method
* missing }
* conflict build fix
* Moves cleint HandsSystem to correct folder
* Moved namespace fix for interaction test
* Moves Handsvisualizer ot correct folder
* Moves SharedHandsSystem to correct folder
* Fixes errors from moving namespace of hand systems
* Fixes PDA component changes
* Fixes ActionsComponent diff
* Fixes inventory component diff
* fixes null ref
* Replaces obsolete Loc.GetString usage with fluent translations
* Fluent for hands disarming
* SwapHands and Drop user input specify to the server which hand
* Pickup animation WorldPosiiton todo
* Cleans up hands gui subscription handling
* Fixes change in ActionBlockerSystem access
* Namespace references fixes
* HandsComponent PlayerAttached/Detached messages are handled through eventbus
* Fixes GasCanisterSystem drop method usage
* Fix gameticker equipping method at new location
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Converted all SnapGridPositionChangedEvent subscriptions to AnchorStateChangedEvent.
* Fixes power tests with new anchored requirements.
* Moved AnchorableComponent into construction.
AnchorableComponent now uses Transform.Anchored.
* Fixed bug with nodes, power works again.
* Adds lifetime stages to Component.
* Update Engine to v0.4.70.
* Import bird sprites and define basic mob.
* SKREEEEEEEEE
* Move hair styles to new sprite accessory prototypes.
Basic stuff, no multi-species stuff yet.
* Vox hair styles and clothes
* Make HumanoidCharacterProfile.Default() a static default to fix tests.
Usages that wanted the previous random behavior now call Random().
* Remove names from hair style prototypes.
(They're in localization files)
* Update Content.Shared/Actions/ActionType.cs
(sk)reeee github
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* All good except the combat doll
* Makes the HUD inventory less terrible
* Cleanup, nuke the Combat Mode button
* Harm icon
* Switch the icon
* Basic goon hud
* Toggleable
* Nuke the popup, properly centers it
* Fix clicking the button
* Nuke some old code
* missed a comment
* Remove defaults
* Localization
* Nuke some old yaml
* New sprites
Co-authored-by: ike709 <sparebytes@protonmail.com>
* serv3 in shared pt 1
* beginning of deepclone api
* progress in implementing ideepclone & serv3 in content
* adds target
* its cant hurt you it cant hurt you
* more changes to content.server
* adds dataclasses
* almost there
* renamed & edited entry
* finishes refactoring content to use serv3
* gasmixture runtimes, next: reagentunit
* fucin hell that was an annoying one
* adds flags
* fixes some yaml errors
* removes comment
* fixes generic components for now
* removes todo
actually clones values my god paul
fixes bug involving resolving custom data classes from other proj
renames dataclass
fixes spritecomp
adds WithFormat.Constants support
* adds deepclone to ResistanceSet
* adds a bunch of deepclone implementations
adds a deepclone analyzer (TODO)
adds a deep clone fallback for classes & structs
* fixes a bunch of runtimes
* adds deepclone to entityuid
* adds generator to sln
* gets rid of warnings
* fixes
* argh
* componentdata refactors
* more deepclone impl
* heck me i reworked all of content deepclone
* renames custom dataclasstarget
* misc
* reworks prototypes
* deepclone nuke
* renamed customdataclass attribute
* fixes everything
* misc fixed
* the killcommit
* getting there
* changed yamlfieldattribute namespace
* adds back iselfserialize
* renames everything to data(field/definition)
* ouch
* Fix most errors on content
* Fix more errors in content
* Fix some components
* work on tests
* fixes some customdataclasses
* fuggin shit
* yes
* yeas
* Remove data classes
* Data field naming fixes
* arg
* Git resetti RobustToolbox
* Merge fixes
* General fixes
* Fix startup serialization errors
* Fix DamageContainerPrototype when supported classes or types are null
* Implement construction graph step type serializer
* Fix up construction serialization
* Fix up construction serialization part 2
* Fix null list in technology database component
* Fix body serialization
* Fix entity storage serialization
* Fix actions serialization
* Fix AI serialization
* Fix reaction serialization
* Fix body serialization
* Fix grid atmosphere serialization
* Rename IServ3Manager to ISerializationManager
* Convert every non generic serializer to the new format, general fixes
* Serialization and body system fix
* pushinheritance fix
* Update all prototypes to have a parent and have consistent id/parent properties
* Merge fixes
* smh my head
* cuddling slaps
* Content commit for engine PR
* stuff
* more fixes
* argh
* yes even you are fixed
* changelog fixes
* fixes seeds
* argh
* Test fixes
* Add writing for alert order prototype
* Fix alert order writing
* FIX
* its been alot ok
* Fix the rest of the visualizers
* Fix server alerts component tests
* Fix alert prototype tests not using the read value
* Fix alert prototype tests initializing serialization multiple times
* THIS IS AN AMERICAN CODEBASE GOD BLESS THE USA
* Add ImplicitDataDefinitionForInheritors to IMechanismBehavior
Fixes the behaviors not being found
* Fix NRE in strap component
Good night to the 1 buckle optimization
* Fix clothing component slot flags serialization tag
* Fix body component in all components test
* Merge fixes
* ffs
* Make construction graph prototype use serialization hooks
* human yaml linted
* a
* Do the thing for construction
* stuff
* a
* monke see yaml linter
* LINT HARDER
* Remove redundant todo
* yes
* Add skip hook argument to readers and copiers
* we gamin
* test/datafield fixes
* adds more verbose validation
* moves linter to action
* Improve construction graph step type serializer error message
* Fix ammo box component NRE
* gamin
* some updates to the linter
* yes
* removes that test
* misc fixes
* array fix
priority fix
misc fixes
* adds proper info the validation
* adds alwaysrelevant usa
* Make yaml linter take half as long to run (~50% less)
* Make yaml linter 5 times faster (~80% less execution time)
* based vera being based
* fixes mapsaving
* warning cleanup & moves surpressor
* removes old msbuild targets
* Revert "Make yaml linter 5 times faster (~80% less execution time)"
This reverts commit 3e6091359a26252c3e98828199553de668031c63.
* Add -nowarn to yaml linter run configuration
* Improve yaml linter message feedback
* Make dependencies an argument instead of a property on the serialization manager
* yamllinting slaps
* Clean up type serializers
* Move yaml linter code to its own method
* Fix yaml errors
* Change yaml linter action name and remove -nowarn
* yaml linter please shut
* Git resetti robust toolbox
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Add nullable to some Content.Shared files.
* Use [NotNullWhen(true)]
* Undo adding now redundant !'s
* Forgot one
* Add a ton more nullable
* You can guess
* Fix some issues
* It actually compiles now
* Auto stash before merge of "null2" and "origin/master"
* I lied
* enable annotations -> enable
* Revert ActionBlockerSystem.cs to original
* Fix ActionBlockerSystem.cs
* More nullable
* Undo some added exclamation marks
* Fix issues
* Update Content.Shared/Maps/ContentTileDefinition.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Resolve some issues
* Remove unused method
* Fix more issues
* Fix more issues
* Fix more issues
* Fix more issues
* Fix issue, rollback SharedGhostComponent.cs
* Update submodule
* Fix issue, invert some if-statements to reduce nesting
* Revert RobustToolbox
* FIx things broken by merge
* Some fixes
- Replaced with string.Empty
- Remove some exclamation marks
- Revert file
* Some fixes
* Trivial #nullable enable
* Fix null ables
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* Light now use visualizer
* Added ghost actions
* Add hotkey input for ghosts
* no message
* Testing blinking animation
* Better animation
* Better customization
* No abuse
* Reversed sln
* No fun for ghosts
* No fun for ghosts x2
* Cooldown for lights
* Moved to component deps
* This tollist is unnecessary
* Enums to byte
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Some lights can ignore ghosts now
Co-authored-by: Alex Evgrashin <evgrashin.adl@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Engine namespace changes.
* Automated remove redundant using statements.
* Simplified Graphics namespace.
* Apparently the container system stores full type names in the map file.😞 This updates those names.
* API Changes to LocalizationManager.LoadCulture.
* Update submodule to v0.3.2