Commit Graph

143 Commits

Author SHA1 Message Date
Kara b6a31003d2
Open slot storage keybind can now also close the UI (#27962) 2024-05-18 13:58:53 +02:00
Kara c56db3b1a8
Resolve `'TransformComponent.MapPosition' is obsolete` in content (#27939)
* Resolve `'TransformComponent.MapPosition' is obsolete: 'Use TransformSystem.GetMapCoordinates'` in content

* build?
2024-05-18 13:58:34 +02:00
ShadowCommander 1548f9b9ad
Fix collection modified error when locking storage (#27913) 2024-05-18 13:52:29 +02:00
Sphiral 0e8f05c61e
Make storage UI close upon being locked (#27810)
* make storage close on lock

* formatting and comments

* Update Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>

* Apply suggestions from code review

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>

* Swap to foreach instead of for

Co-authored-by: Kara <lunarautomaton6@gmail.com>

---------

Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-18 13:35:40 +02:00
Tayrtahn 6269c14392
Make UseDelay SetLength do EnsureComp (#27601)
Make UseDelay.SetLength do EnsureComp
2024-05-07 04:18:40 +02:00
metalgearsloth 1d63b4cfcb
Content update for UI prediction (#27214)
* Content update for UI refactor

* Big update

* Sharing

* Remaining content updates

* First big update

* Prototype updates

* AUGH

* Fix UI comp ref

* Cleanup

- Fix predicted message, fix item slots, fix interaction range check.

* Fix regressions

* Make this predictive

idk why it wasn't.

* Fix slime merge

* Merge conflict

* Fix merge

(cherry picked from commit 5896e6875266b22c565009b5d45f60ceb981d90a)
2024-05-03 00:15:32 +02:00
Tayrtahn 07bfdf787a
Expand UseDelay to support multiple delays per entity; fix bible healing and bag pickup (#27234)
* Upgraded UseDelay to support multiple delays per entity

* Implement secondary delay for bibles.
Also some improvements to make it work nicely.

* Documentation is good

* Reserve the previous change; now Storage uses the special ID and Bible uses the default.

* .0

* Added VV support to UseDelayInfo

* Serialize better

* No register, just setlength

(cherry picked from commit b292905216948e0c85b04e8ef65a5291dd868eee)
2024-05-03 00:11:26 +02:00
Plykiya 1b3a4007b1
Fix for inventory and belt not opening (#27179)
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 6ad039d0f9a13a3bcedf400b3b89f2eb186631ec)
2024-04-21 23:36:43 +02:00
DrSmugleaf f0f410348c
Move storage binds and slot click handling to shared (#27135)
(cherry picked from commit 3c6722bd6fca55cfdee8dced11379641b443d542)
2024-04-21 23:31:37 +02:00
metalgearsloth 8bd58f68b5
More storage tweaks (#25970)
- Fix some prediction stuff.
- Fix some jank.
- UseDelay.
- Cap.

(cherry picked from commit b2b1926eccbae918c8d9702cfba40e54d1f4d870)
2024-04-21 23:20:53 +02:00
DrSmugleaf 5acb97a858
Fix storage fill giving no reason for failing (#27122)
(cherry picked from commit 45df595c1513bed2c31209101afc7574ded29cfe)
2024-04-21 23:18:19 +02:00
Plykiya 97cdc4d931
Fix for items dropped being rotated to world north (#26662)
* Fix rotation of dropped items

* combined world position rotation function for dumpable

* scuffed implementation?

* less scuffed?

* even less scuffed... I guess

* capital D

---------

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 5aadb17be79f487f7b665035489dbe6f9fd6fdea)
2024-04-07 14:31:22 +02:00
brainfood1183 a7fb1b4bbc
Toilet Upgrade (needs review) (#22133)
* Toilet Draft

* fixes

* toilets now have secret stash to place items in cistern.

* fixes

* plungers now unblock toilets.

* fix sprite

* new sprites and fix

* fixes

* improve seat sprites.

* fix

* removed visualisersystem changed to genericvisualizers

* flush sound for toilets and copyright for toilet sprites.

* fix atrributions

* fixes

* fix datafield flushtime

* sprite improvements

* fixes

* multiple changes

* fix

* fix

* fixes remove vv

* moved stash related functions to secret stash system from toilet.

* fix

* fix

* changes for recent review.

* fix

* fix

(cherry picked from commit 5f063d2d6d2a41702b60d11f779e23c34fa74410)
2024-04-07 14:18:32 +02:00
metalgearsloth 36a21ba918
Transform cleanups (#25963)
* Transform cleanups

* Fix build

* ascension

(cherry picked from commit cdfee5aa0c95ea626271136b9e6ad78ad2000f49)
2024-04-07 14:11:37 +02:00
deltanedas 76199f9ff0
biggest gridinv update OF ALL TIME (#25834)
* add SaveItemLocation keybind

* make item direction public to avoid having to change between Angle for no reason

* add item location saving

* show

* Added a better save keybind, made it draw saved positions, and trying to save in a position it has already been saved in removes that position.

* w

* code style

* Make taken spots appear blue

* style

* !

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: notquitehadouken <tripwiregamer@gmail.com>
Co-authored-by: I.K <45953835+notquitehadouken@users.noreply.github.com>
(cherry picked from commit 6863a7cc26f815ec9089003e8735777cea927d0f)
2024-04-07 14:08:49 +02:00
Tayrtahn 11eff87687
Code cleanup: Dirty(Comp) (#26238)
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.

* Missed a few

* Revert changes to pulling

* No

(cherry picked from commit 4a83c365858830e3b2ff2b94fff501256422c20e)
2024-03-24 00:04:13 +01:00
nikthechampiongr ad5628777b
Simplify DoAfterArgs behavior for movement and distance checks (#25226)
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.

* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.

* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.

* Fix issue introduced by merge.

* Use interaction system for determining whether a distance is within range

* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.

* Exorcise ghost.

The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.

* Exorcise ghost Pt. 2

* Allow for movement check to be overriden in zero g and adjust doafter args where needed.

You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars

* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.

* Fix evil incorrect and uneeded comments

(cherry picked from commit 362d56981fd7654f6ebec36f16cc8fabdd04b6a7)
2024-03-24 00:03:28 +01:00
SlamBamActionman 285804d4dd
Fix recycled containers deleting items inside them (#26045)
* Removes items from containers in reclaimers

* Made it into an event instead

* Sloth review comment

* Fix indentation and rename field

(cherry picked from commit d7484ae9f57477a5ec5c575e3077aa94c0564db6)
2024-03-24 00:02:10 +01:00
Krunklehorn 1fb8bad18f
Weight based AreaInsert and Dumpable delay, a janitor qol tweak (#24899)
Weight based delay, retuned average, fixed comments

(cherry picked from commit c775410370a650aa51a1feda99f45cefda0c811e)
2024-03-07 01:17:27 +01:00
Pieter-Jan Briers e7a3b82a8d
Use new ComponentPauseGenerator (#25183)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.

(cherry picked from commit e00f74505c62310bd15aeaba8d6530f648397074)
2024-03-07 00:57:05 +01:00
Krunklehorn a8d9ddd53e
Fix candy bowls (#25514)
* Before SharedItemSystem

* Fixes mispredict, removed unused

* Fix physics

(cherry picked from commit 902198d7e0c85f62ac91a0ff2cd275c0e7e77d56)
2024-03-07 00:52:26 +01:00
MilenVolf cb0fdb47d1
LockVisualizer (#25224)
* LockVisualizer

* Fix state

* Clean some code

* Make it component, fix tests fail

* Fix for StateUnlocked

Now it is possible to manually set the unlocked state and it will work!

* Optimize LockVisualizer, add check for unlocked state

* No todo I guess

(cherry picked from commit c7870882f6f956eea07cbb4738ae45c8805c8ce6)
2024-02-18 23:27:28 +01:00
Pieter-Jan Briers ccea85136b
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
Debug d8df4327ec
Fix PseudoItems (#821)
* Fix PseudoItem

* Add pain

* Cancel attack events
2024-02-12 21:52:49 +01:00
metalgearsloth c639a4efbb
Predicted movement opening lockers (#24937)
Relay wasn't really networked properly and this annoys me.

EntityStorage is still pretty skrunkly but this fixes the main issue I think.

(cherry picked from commit 042feae2e91f41f7d39e55340405e3c448903d61)
2024-02-08 12:36:12 +01:00
Leon Friedrich dcf188f617
Fix storage destruction/deletion bug (#24882)
(cherry picked from commit 3ffa15ce3434f84012785c696c7d403bf3574f17)
2024-02-08 12:27:14 +01:00
Kara d35e2f39a7
Roundstart variation game rules (#24397)
* Raise `StationPostInitEvent` broadcast

* Basic variation pass handling

* standardize names + rule entities

* why does it work like that?

* add to defaults

* light break variation pass

* ent spawn entry

* move some stationevent utility functions to gamerule + add one for finding random tile on specified station

* forgot how statistics works

* powered light variation pass is good now

* station tile count function

* public method to ensure all solutions (for procedural use before mapinit)

* move gamerulesystem utility funcs to partial

* ensure all solutions before spilling in puddlesystem. for use when spilling before mapinit

* trash & puddle variation passes!

* oh yeah

* ehh lets live a little

* std

* utility for game rule check based on comp

* entprotoid the trash spawner oops

* generalize trash variation

* use added instead of started for secret rule

* random cleanup

* generic replacement variation system

* Wall rusting variation rule

* account for modifying while enumerating

* use localaabb

* fix test

* minor tweaks

* reinforced wall replacer + puddletweaker

(cherry picked from commit cc24ba6a317c4bee84ffa1eda8397c255ca92be9)
2024-02-08 12:03:43 +01:00
Arendian 46fe22709b
Prevent EntityStorages from being opened while inside another container (#24253)
* Prevent EntityStorages from being opened while inside a mech.

* compressed into few lines

* unneeded line

* Popup client

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit e89be95d4c3085d7d6d08ad5aafa942cfc32c934)
2024-01-26 23:13:33 +01:00
metalgearsloth 62c2728e38
Fix storage state (#23852)
slughands

(cherry picked from commit 24f8da8f0ce01b3523434e954d4d71e8193e75b5)
2024-01-26 22:22:41 +01:00
metalgearsloth 404ac576b8
Fix storagecomp serialization (#23780)
* Fix storagecomp serialization

* Fix state

(cherry picked from commit b22c9aa5e265994f87c9a3f41a95e0aef611b61d)
2024-01-26 22:17:53 +01:00
Nemanja 57d762185c
Allow storage to specify a default orientation for stored items. (#23594)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit a448e5fa567e8e781b9b3093376312cc9f654533)
2024-01-26 21:47:41 +01:00
Debug e644725860
Fix missing imports 2024-01-22 18:55:26 +01:00
TemporalOroboros aebae6fab7
Content ecs containers (#22484)
(cherry picked from commit 7a77d6d5dd73a34be238fdebc284da5bc2917c67)
2024-01-22 18:47:55 +01:00
Leon Friedrich 46f411ef85
Cache ItemSizePrototype in StorageSystem (#22611)
(cherry picked from commit 364ecae94f66dc0a4e87760def5203cca4745cee)
2024-01-22 18:44:26 +01:00
Leon Friedrich 309ca8224c
Fix closet skeletons spawning in nullspace (#22942)
(cherry picked from commit 0baffe32435341a066198805c94f38fd049395ae)
2024-01-22 18:36:51 +01:00
Debug 18f0af1f68
Implement gridinv, proper (#703)
* Implement gridinv, 1500 squashed commits :elp:

* Me when

* Linter errors

* Fix katana belts
2024-01-21 19:58:28 +01:00
Debug 985b2f96f9
Prevent pseudoitems from being transferred between bags (#553)
* Update PseudoItemSystem.cs

* Rider full cleanup

* Also abort in sharedstorage

* Make the comp shared

* Why drop the bags?
2023-12-29 20:38:03 +01:00
Leon Friedrich adee2a7465 Fix various errors/exceptions (#22841)
* Fix entity storage localization

* Fix HumanoidAppearanceComponent resolve

* Fix null reference exceptions

* Fix duplicate key error

* Fix artifact error spam

* actually maybe this is what its meant to do

* Fix entities playing sounds on deletion
2023-12-22 23:25:06 +01:00
LordCarve 65a15cada1 DumpableComponent on an empty container no longer stops other interactions (#22831)
DumpableComponent does not block the entity from being disposed via InteractOn a DisposalUnit
2023-12-22 23:25:06 +01:00
deltanedas 40ec5595be open bag in combat mode (#22512)
* open bag in combat mode

* !!!!!

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-12-16 20:23:25 +01:00
deltanedas b26c98685b make syndie bag and rigs explosion resistant (#22088)
* remove empty file real

* support explosion resistance for non-worn things

* remove redundant entitystorage resistance

* port entitystorage optimisation to apply for everything with 100% resistance

* add explosion resistance for bag contents

* make thing reusable

* add resistance to chest rig too

* medical chest rig too

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-12-16 19:48:30 +01:00
Leon Friedrich 485d658bd1 Inventory slot enumerator rejig (#21788) 2023-12-16 19:30:03 +01:00
Tom Richardson 3501b01957 Add water cups to water coolers (#22073)
* add water cup bin to water cooler

* Fix punctuation, and add proper components/tags on init

* I forgor and refactoring event construction
2023-12-16 19:21:30 +01:00
metalgearsloth b1ee2d48ff Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-12-02 20:16:36 +01:00
metalgearsloth 52104a45c1 Revert Arch testmerge 2 (#21901) 2023-12-02 19:05:12 +01:00
metalgearsloth 39ad6db5c3 Update submodule to 182.1.0 (#21900) 2023-12-02 19:05:11 +01:00
metalgearsloth 9741d9916c Revert the other arch changes (#21871) 2023-12-02 19:05:11 +01:00
metalgearsloth 333096b19e Content arch (#20107)
Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
2023-12-02 19:04:08 +01:00
Christopher Thirtle 1d2fc544b6 Use object-spaced bounding boxes for putting stuff in crates (#21427)
* Use object-spaced bounding boxes for putting stuff in crates

* Use existing _lookup.GetAABB, different component

* PR edits updated

* Remove unused bits from around GetAABB

* Use GetAABBNoContainer
2023-12-02 18:56:20 +01:00
deltanedas b61982f426 explosion minor rework + fix (#21718) 2023-11-19 22:23:29 +01:00