* Enable lighting of Cigars with IsHotEvent
Subscribed to IsHotEvent in ThrusterSystem, added AfterInteractEvent to SmokingSystem.Cigar which will set SmokableState to Lit if IsHotEvent returns true
This should mean that cigs/Cigars should light on anything hot
* Revert "Enable lighting of Cigars with IsHotEvent"
This reverts commit db896e1f80940892a87d34aa7182b9c605fa53bc.
* Add the ability to kick your way out of welded or locked closets
Added a ResistLocker component/system that hooks into OnRelayMove to begin resisting out of lockers so that players aren't stuck in lockers forever
Also added check to EntityStorageComponent to not print out welded shut message if the entity attempting to open the locker is inside of it.
* Changes based on review
minor formatting changes
make components passed into AttemptResist nullable and resolve them inside of the function
Remove incorrectly named .ftl file
* Changes based on review
Ditched async DoAfter
Used PopupSystem over User.PopupMessage
Added Cancel token to ResistLockerComponent
Subscribed to EntRemovedFromContainer event to cancel DoAfter if the player is removed from a container
* I am in formatting hell, apparently
* Changes based on review
Added TryComp for the EntityStorageComponent instead of the event passed one
* Changes based on review
* Apply suggestions from code review
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* Formatting changes based on review
* Shuffle functions around in LockSystem to properly trigger visualizer
Moved all the unlocking logic to a Lock method inside of LockSystem and TryUnlock calls this method if the user passes all of the access checks
* Formatting, replacing Resolve with TryComp and making AttemptResist arguments optional
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
* Check if the player is inside THE container not A container
me no read good
* ok ok I give my code is bad
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
* git mv
* Move Access Component & system.
- Name space changes
- Rename AccessReader to AccessReaderComponent
- Also need an abstract TryGetSlot function for SharedInventoryComponent
* better TryGetSlot
* Ah yes, tests exist.
* Moved access to ecs
* Fixed tests
* Moved test to integration
* Better IoC
* Moved preset ID card
* Moved id card to ECS
* Moved access component to ECS
* Fixed pda access
* Final touches
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* 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>
* #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