* Transfer most Instrument UI logic to a new component, ActivatableUIComponent
* Move more ActivatableUIComponent stuff to ECS
* ActivatableUI component ignore on client
* ActivatableUI: Get rid of component interfaces where possible
* Add in adminOnly attribute for activatable UIs
This is so that porting #4926 to this will be easier
* Transition Solar Control Computer to ActivatableUI
* Move communications console to ActivatableUI
* Move cargo console to ActivatableUI
* Move ID card console to ActivatableUI
* ActivatableUI: Make things more amiable to entity tests adding components weirdly
* ActivatableUI: Use handling or lack thereof of events properly
* ActivatableUI: component dependency issue resolution stuffs
* ActivatableUISystem: Fix#5258
* More fixes because master did stuffo
* Check for HandDeselectedEvent again because otherwise active-hand check doesn't work
* Move just a bit more code into the system, introduce a workaround for #5258
* Purge the player status detection stuff
* Oh and some obsolete stuff too
* Make fires do less damage
* Severely nerf fires and severely buff temperature protection
* fuck it, i'll nerf it so hard and we can buff it later if we decide
* new scaling func
* fix
* unused
* reviews + balance metabolism heat + reduce atmos air temp transfer efficiency
* little more balance
* just a wee bit more
* slight adjustment
* Convert StomachBehavior to a component/system + rejig body namespaces
* test
* slightly more namespace changes
* remove
* Hello?????
* fuck you github test runner
* reviews
* oobsy!
* Stop pAIs from being able to wipe each other/do other odd things they shouldn't
* pAI: device changes name to indicate owner
* Make PAIComponent networked (just in case)
It'll be needed in future anyway
* basics & visuals
* pneumatic cannon works perf
* loc + popups
* gas tank does stuff + queue changes
* updates
* b
* forcefeeding
* inhand
* crafting!
* pie cannon now is a pneumatic cannon
* oopy
* fix for entman + verbs
* pie
* change for tools
* actual
* combat mode + better sounds
* reviews
* 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