* PaintableAirlockComponent and AirlockGroupPrototype have been replaced
* Slightly redesigned SprayPainterSystem for greater versatility
* Added handling of changes to the appearance of doors and storages
* PaintableGroup prototypes have been created
* Generating tabs with styles in the UI
* Fix error with undiscovered layer
* Slight improvement
* Removed unnecessary property
* The category for `PaintableGroup` was allocated to a separate prototype so that the engine itself would check if the category existed
* Added canisters, but repainting doesn't work
* Added localization to styles
* Fix sprite changing
* Added the ability to paint canisters
* slight ui improvement
* Fix yamllinter errors
* Fix test
* The UI now remembers which tab was open
* Fix build (?)
* Rename
* Charges have been added to the spray painter
* Added a charge texture for the spray painter
* Now spray painter can paint decals
* Increased number of charges
* Spawning dummy objects has been replaced by PrototypeManager
* added a signature about the painting of the object
* fix
* Code commenting
* Fix upstream
* Update Content.Shared/SprayPainter/Components/SprayPainterAmmo.cs
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
* review
* Now decals can only be painted if the corresponding tab in the menu is open.
* Fixed a bug with pipe and decal tabs not being remembered
* Update EntityStorageVisualizerSystem.cs
* record
* loc
* Cleanup
* Revert electrified visuals
* more cleanup, fix charges, del ammo4
* no empty file, remove meta component
* closet exceptions, storage visualizer fixes
* enable/disable decal through alt-verb
* Fix missed merge conflicts
* fix snap offset, button event handlers
* simpler order, fix snap loc string
* Remove PaintableViz.BaseRSI, no decal item, A-Z
* State-respecting UI, BUI updates, FTL fixes
* revert DecalPlacerWindow changes
* revert unwanted changes, cleanup function order
* Limit SprayPainterAmmo write access to AmmoSystem
* Remove PaintedSystem
* spray paint ammo lathe recipe, youtool listing
* category as a list, groups as subtabs
* Restore inhand copyright in meta.json
* empty spray painter, recipe produces an empty one
* allow alpha on spray painter decals
* add comments
* paintable wall lockers
* Restrict painting more objects
* Suggested event changes, event cleanup
* component comments, fix ammo inhands
* uncleanable decals, dirty styles on mapinit
* organize paintables, separate emergency/closet grp
* fix categories newline at EOF
* airlock group whitespace cleanup
* realphabetize
* Clean up EntityStorageViz merge conflict markers
* Apply requested changes
* Apply suggestions from sowelipililimute's review
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
* betrayal most foul
* Remove members from EntityPaintedEvent
* No emerg. group, steelsec to secure, locker/closet
* Enable repainting the medical wall locker
* comments, no flags on PaintableVisuals
* Remove locked variants from closets/wall closets
* removable decals
* off value consistency
* can't paint away those bones
* fix precedence
* Remove AirlockDepartment, AirlockGroup protos
Both unused.
* whitelist consistency re: ammo component
* add standing emergency closet styles
* alphabetize the spray painter listings
---------
Co-authored-by: Ertanic <black.ikra.14@gmail.com>
Co-authored-by: Эдуард <36124833+Ertanic@users.noreply.github.com>
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
Significantly updates the Engineering guidebook (more explicitly the Atmos section) to have a lot more relevant and useful information.
Right now engineering has been getting update after update with no real change to the relevant guidebook entry. This has lead to a lot of out of date information and bad practices being prevalent in the guidebook, something that pains me to read.
* Boom! Emergency access!
* Emergency access sound
* locale
* Updated sounds
* bleh
* Door electrify base
* feat: popups on attempt to activate AI action when wires cut
* refactor: use SharedApcPowerReceiverComponent to check if AI can interact with door
* refactor: added icon and sound for door overcharge
* meta.json should use tabs not spaces
* refactor: extracted sounds for airlock overcharge to static field in system
* refactor: cleanup, ScarKy0 mentions for resources
* refactor: removed unused textures
* feat: now notification is displayed when AI attempting to interact with door which have wire cut
* StationAiWhitelistComponent is properly gating BUI OnMessageAttempt, SharedPowerReceiverSystem.IsPowered is now used to check if device powered
* refactor: use PlayLocal to play electrify sound only for AI player
* refactor: SetBoltsDown now uses TrySetBoltDown, checks for power.
* bolts now check for power using SharedPowerReceiverSystem
* electrify localization and louder electrify sounds
* extracted ShowDeviceNotRespondingPopup, reverted airlocks not opening/closing when ai wire was cut
* refactor: cleanup
* New sprites and fixes
* Copyright
* even more sprite changes
* refactore: cleanup, rename overcharge => electrify
---------
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Fix firelock prediction issues with periodic pulses of closing lights
For some reason this function was setting a time for the next state
which was triggering the door system to try to close the firelock.
This does not happen serverside because the function only fires from an
event called clientside apparently.
It appears to be an attempt to stop firelocks from closing instantly
that did not function properly, and I cannot discern any other purpose.
As such I have removed it.
* Remove redundant serverside check
This became redundant with commit 439a87f2
* Change prying system and pryunpoweredcomp to allow for custom time modifiers
This will be useful if I go the route of making firelocks pryable when
unpowered instead of just being able to open and close instantly when
unpowered.
* Make firelocks properly predicted
Shared system made. Since atmos checks can only be done on the server we
just have it set relevant bools on the component and then dirty it.
Ditched atmos checks on trying to open, they now only happen whenever
firelocks are updated.
* Make firelocks pryable without a crowbar
While this usually would only allow you to do this when a door is
unpowered, firelocks do not have the airlock component which actually
does that check. As such firelocks will always allow you to pry them
open/closed by hand.
* Clean up System. Change update interval to be based on ticks. Move as much as possible to shared
* Make firelocks unable to emergency close for 2 seconds after being pried open
* Clean up
* More cleanup
* Reorganize SharedFirelockSystem methods to match Initialize order
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* Various sounds ported
* Replace wall_bonk.ogg
* Metal/metalglass break sound pass
* Replace metalbreak.ogg
* Replace woodhit
* Replcae tap.ogg n some smack uses
* Fix lint
* Replace bang.ogg and some instances of hit_kick.ogg
* couple more
* fix wood sound
* i may be stupid
* le attributing
* bro what
* standardize more destruction sounds
* fix melee hit sound cutting off
* window threshold sounds and remove `destroySound` it literally doesnt exist
* brigtimer
* ok
* TextScreen w timer implementation
* second commit
* working brig timer
* signal timers near completion
* soon done
* removed licenses, fixes noRotation on screens, minor edits
* no message
* no message
* removed my last todos
* removed csproj.rej??
* missed a thing with .yml and tests
* fix tests
* Update base_structureairlocks.yml
* timespan type serialize
* activation turned into comp
* sloth review
* Update timer.yml
* small changes
---------
Co-authored-by: CommieFlowers <rasmus.cedergren@hotmail.com>
Co-authored-by: rolfero <45628623+rolfero@users.noreply.github.com>