* Move entity solution entity systems to shared
* Move SolutionComponents to Server
* Fix namespaces
* Remove Networked Component.
* Fixes
* Add components to ignore list
* Remove WireNet node group from cables
Implement extension cable components and system
Remove connection over distance logic from ApcPower... components
* Add extension cable components to prototypes
* Implement ApcNetwork
Implement ApcNetSwitch
* Fix ignoredComponents.cs
* Add friend attribute to new components
* Add construction graph for a light switch
* Address reviews
* Fix broken test
* Move ConnectionType enum to DeviceNetworkComponent
Change netId data definition to use the ConnectionType enum values
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
* Work on DeviceNetworkSystem
* Implement device networking as ecs
Remove mailing unit code for now
Remove device network metadata
* Implement integration tests for device networking
* Remove manual updating DeviceNetworkSystem and use WaitRunTicks
* Fix wrong component name in ignored components
* Apply suggestions from code review
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
* Rename NetworkUtils to DeviceNetworkConstants
Change connection type constants to enum
Remove create function from network payload class
* Change broken nodegroup check in wirenet to grid check
* Change ComponentManager to entity manager in DeviceNetworkSystem
* Fix smaller mistakes
* Wtf random test fail pls run them again smh
* Fix DataField in DeviceNetworkComponent
* Fix yaml in DeviceNetworkTest
* Fix DeviceNetworkComponent DeviceNetId property
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
* Moved pen slot to separate component
* Moved it all to more generic item slot class
* Add sounds
* Item slots now supports many slots
* Some clean-up
* Refactored slots a bit
* Moving ID card out
* Moving pda to system
* Moving PDA owner to ECS
* Moved PDA flashlight to separate component
* Toggle lights work through events
* Fixing UI
* Moving uplink to separate component
* Continue moving uplink to separate component
* More cleaning
* Removing pda shared
* Nuked shared pda component
* Fixed flashlight
* Pen slot now showed in UI
* Light toggle now shows correctly in UI
* Small refactoring of item slots
* Added contained entity
* Fixed tests
* Finished with PDA
* Moving PDA uplink to separate window
* Adding-removing uplink should show new button
* Working on a better debug
* Debug command to add uplink
* Uplink send state to UI
* Almost working UI
* Uplink correcty updates when you buy-sell items
* Ups
* Moved localization to separate file
* Minor fixes
* Removed item slots methods events
* Removed PDA owner name
* Removed one uplink event
* Deleted all uplink events
* Removed flashlight events
* Update Content.Shared/Traitor/Uplink/UplinkVisuals.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Server/Containers/ItemSlot/ItemSlotsSystem.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Server/Containers/ItemSlot/ItemSlotsSystem.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Server/GameTicking/Presets/PresetTraitorDeathMatch.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Item slots system review
* Flashlight review
* PDA to XAML
* Move UplinkMenu to seperate class, fix WeightedColors methods
* Move UI to XAML
* Moved events to entity id
* Address review
* Removed uplink extensions
* Minor fix
* Moved item slots to shared
* My bad Robust...
* Fixed pda sound
* Fixed pda tests
* Fixed pda test again
Co-authored-by: Alexander Evgrashin <evgrashin.adl@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Visne <vincefvanwijk@gmail.com>
* wielding kinda works
* rough out all the edges, wielding works nicely
* popups + loc
* increase damage & extra damage against whitelist
* small fixes
* forgot to actually do that
* reviews
* reviews + thing
* use resistances and not extradamageagainstwhitelist
* slashy
* make increasedamageonwield and melee hit events work with modifiersets
* Silly individual
* Add draggable tabletop component
* Use EntityCoordinates instead
* Don't send coordinates every frame
* Add chessboard + verb WIP
* Add documentation, verb networking works now
* Work so far
Need PVS refactor before being able to continue
Current code is broken
* viewsubscriber magic
* yes
* Fix map creation
* Add chess pieces, attempt prediction
* Add chess sprites and yml
* Clamping + other stuff
* fix
* stuff
* StopDragging() StartDragging()
* add piece grabbing
* Refactor dragging player to seperate event
* 🤣 Who did this 🤣💯👌
* 📮 sussy 📮
* Update chessboard sprite, scale piece while dragging
* yes
* ye
* y
* Close tabletop window when player dies
* Make interaction check more sane
* Fix funny behaviour when stunned
* Add icon
* Fix rsi
* Make time passed check more accurate
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Use EyeManager.PixelsPerMeter
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Add missing import
* Move viewport properties to XAML
* Make shared system and component abstract
* Use built in EntityManager
* Use RaiseNetworkEvent instead of SendSystemNetworkMessage
* Cache ViewSubscriberSystem
* Move unnecessary code to prototype
* Delete map on component shutdown instead of round restart
* Make documentation match rest of codebase
* Use ComponentManager instead of TryGetComponent
* Use TryGetComponent instead of GetComponent
* Add nullspace check to ClampPositionToViewport()
* Set world pos instead of local pos
* Improve server side verification
* Use visualizer
* Add netsync: false to sprites using visualizer
* Close window when chessboard is picked up
* Update to master
* Fix bug when opening window while another is opened
* Use ComponentManager
* Use TryGetValue
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Refactors flashes to ECS, sunglasses protect you from being flashed.
* VV ReadWrite for FlashImmunity Enabled.
* Use cached IEntityLookup.
* Consistent formatting.
* Fix flashbang duration.
Flash duration is a mess.
* Small area flash code cleanup.
* Flashable state is only sent to attached player.
* Ambient sound system
Client-side system that plays audio from nearby objects that are randomly sampled.
* Decent
* Tweaks
* Tweaks
* Comment this out for now
* reduce VM sound
* Fix rolloff
* Fixes
* Volume tweak
* Rename SolutionContainerCaps -> Capability
* Move IExamine event to Chemistry System.
* ECS the ISolutionChange into SolutionChangeEvent
* Unify SolutionContainer into a single shared component
* Replace ISolutionInteraction with SolutionContainerComponent
* Move all methods from SolutionContainer to ChemistrySystem
* Refactor EntitySystem calls to Dependencies
* Refactor SolutionContainer to SolutionManager
* Fix yamls
* Fix test fails
* Fix post merge issues
* Fix various issues with SolutionManager
* More fixes
* Fix more components
* Fix events not being directed
* Fixes for Hypospray
* Separate removal and iteration on Metabolism
* Fix creampie problems
* Address some of sloth's issues
* Refactors for Systems
* Refactored solution location
* Fix tests
* Address more sloth issues
* Fix dependency
* Fix merge conflicts
* Add xmldocs for Capabilities components
* Remove HasSolution/TryGetDefaultSolution and Add/Remove Drainable/Refillable
* Replace Grindable/Juiceable with Extractable
* Refactor field names
* Fix Drainable
* Fix some issues with spillable and injector
* Fix issues with Grinder
* Fix Beaker having duplicate solutions
* Fix foaming
* Address some MGS issues
* Fix Uid issues
* Fix errors in solution Tranfer
* Fixed some extra values constant values
* Cola is drinkable now
* Add sprites
* Lock system now raises lock toggle events
* Add prototype and barrier system
* Toggle lock on click
* Barrier blocks bullets (like a real wall)
* Barrier now destroyable
* Fancy visualzer and lighting. Also unlock by default
* Deleted comma
* Ignored components?
* Update Resources/Prototypes/Entities/Objects/Specific/Security/barrier.yml
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Objects/Specific/Security/barrier.yml
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Toggle Lock no longer handled
* Made it much easier to move through airlocks
Co-authored-by: Swept <sweptwastaken@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Remove PillComponent
* Make food without any solution left delete and create trash
* Replace PillComponent references with a Pill tag
* Clean up
* Add swallow message to food
* Change to eatMessage override
* Change FoodComponent transferAmount to nullable
* Change properties to private
* metabolism -> respirator, add reageanteffect and reagenteffectcondition, start on metabolizercomp/system
* move LiverBehavior metabolism logic to Metabolizer
* minor tweaks and update all YAML
* how about actually taking conditions into account
* off by one
* removals
* reviews
* #4420 moved sound components to a better spot in the project
* MWF-4420 - ported SecureEntityStorageComponent to new ECS system, as a LockComponent
* MWF-4420 - removed unused usings
* #4420 removed dumb ToggleLockVerb override workaround
* #4420 added SoundSpecifier to LockComponent
* Initial
* Cleanup a bunch of things
* some changes dunno
* RequireAnchored
* a
* stuff
* more work
* Lots of progress
* delete pipe visualizer
* a
* b
* pipenet and pipenode cleanup
* Fixes
* Adds GasValve
* Adds GasMiner
* Fix stuff, maybe?
* More fixes
* Ignored components on the client
* Adds thermomachine behavior, change a bunch of stuff
* Remove Anchored
* some work, but it's shitcode
* significantly more ECS
* ECS AtmosDevices
* Cleanup
* fix appearance
* when the pipe direction is sus
* Gas tanks and canisters
* pipe anchoring and stuff
* coding is my passion
* Unsafe pipes take longer to unanchor
* turns out we're no longer using eris canisters
* Gas canister inserted tank appearance, improvements
* Work on a bunch of appearances
* Scrubber appearance
* Reorganize AtmosphereSystem.Piping into a bunch of different systems
* Appearance for vent/scrubber/pump turns off when leaving atmosphere
* ThermoMachine appearance
* Cleanup gas tanks
* Remove passive gate unused imports
* remove old canister UI functionality
* PipeNode environment air, make everything use AssumeAir instead of merging manually
* a
* Reorganize atmos to follow new structure
* ?????
* Canister UI, restructure client
* Restructure shared
* Fix build tho
* listen, at least the canister UI works entirely...
* fix build : )
* Atmos device prototypes have names and descriptions
* gas canister ui slider doesn't jitter
* trinary prototypes
* sprite for miners
* ignore components
* fix YAML
* Fix port system doing useless thing
* Fix build
* fix thinking moment
* fix build again because
* canister direction
* pipenode is a word
* GasTank Air will throw on invalid states
* fix build....
* Unhardcode volume pump thresholds
* Volume pump and filter take time into account
* Rename Join/Leave atmosphere events to AtmosDeviceEnabled/Disabled Event
* Gas tank node volume is set by initial mixtuer
* I love node container