Commit Graph

2716 Commits

Author SHA1 Message Date
Vera Aguilera Puerto
e71e5bec39 StackSystem uses PopupSystem.
Stacks are at the vanguard, as always.
2021-09-26 15:38:07 +02:00
Vera Aguilera Puerto
f913d8361d Refactors smoking to ECS, smoking actually makes you inhale reagents. (#4678) 2021-09-26 15:19:00 +02:00
Vera Aguilera Puerto
0767bd3777 Popup ECS Refactor (#4692) 2021-09-26 15:18:45 +02:00
Vera Aguilera Puerto
2051970cc1 Remove IMetaDataComponent dependency from DirtyUi in GasCanisterSystem
Just so I don't need to make this use MetaDataComponent for now.
2021-09-26 13:01:10 +02:00
Vera Aguilera Puerto
a9e44770cf Stack respects InteractUsing handled. 2021-09-25 10:44:54 +02:00
metalgearsloth
2145124aa4 Disabler locker throwing (#4683) 2021-09-23 15:44:25 -07:00
Vera Aguilera Puerto
08184bc928 Refactor AdvertiseComponent to be ECS, improve performance. (#4676) 2021-09-24 02:02:22 +10:00
Vera Aguilera Puerto
c4ec9a143d ReadyAll iterates PlayersInLobby instead of using IPlayerManager. 2021-09-23 13:18:48 +02:00
Vera Aguilera Puerto
55393699b1 ReadyAll no longer spawns people who are observing
Fixes #4650
2021-09-23 13:00:28 +02:00
Vera Aguilera Puerto
246fda53c5 Refactor Barotrauma to be ECS. (#4674)
- Refactor IPressureProtection to be two different ECS events.
2021-09-22 21:02:25 +10:00
Vera Aguilera Puerto
6cea9cb973 Refactor Flammable to be ECS. (#4671)
- Refactor IHotItem into IsHotEvent.
- Refactor IFireAct into TileFireEvent.
2021-09-22 11:05:33 +02:00
Vera Aguilera Puerto
9bde39c533 Clothing sound equip only happens on intentional equips. 2021-09-21 17:28:26 +02:00
Vera Aguilera Puerto
04ea6a66f6 Dice roll popup, some DiceSystem cleanup. 2021-09-21 17:04:16 +02:00
Vera Aguilera Puerto
cab0b4fc93 Refactor GasCanisterSystem to use Resolves, improves canister performance slightly. 2021-09-21 14:25:58 +02:00
Pieter-Jan Briers
00fbffcddf AGhost now un-aghosts you if you are already a ghost. 2021-09-21 08:13:47 +02:00
Swept
ae54ad188e Changes most uses of Color.Green to Color.LimeGreen for better visuals (#4666) 2021-09-20 21:50:02 -07:00
Swept
3e4a3a7597 Fixes typo causing flashlight_off.ogg not to play 2021-09-20 11:53:34 -07:00
metalgearsloth
a8908427a8 Remove some unused fields 2021-09-21 00:16:52 +10:00
Vera Aguilera Puerto
61d8852799 Update StackSystem to use Resolves. (#4664)
* Update StackSystem to use Resolves.

* Compile
2021-09-20 13:39:05 +02:00
metalgearsloth
4b2a4dbfb7 Update content for accurate grid bounds (#4632)
* A

* dummy comment why CI plz
2021-09-20 21:08:10 +10:00
Vera Aguilera Puerto
cda67df317 Fix some warnings relating to fields being unused. 2021-09-20 11:22:59 +02:00
metalgearsloth
578ed16b8f Remove IRelayMoveInput (#4663)
* Remove IRelayMoveInput

This interface gets called every time a movement key is pressed so it gets called a lot.

* Remove RelayMovementEntityMessage

Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
2021-09-20 11:06:48 +02:00
Visne
fcc1217e5d Stop using some obsolete stuff (#4657) 2021-09-19 23:40:22 -07:00
Vera Aguilera Puerto
a9b3b5136b Improves and cleans up TabletopSystem further. (#4633) 2021-09-19 11:07:35 +02:00
Vera Aguilera Puerto
08d6801ec5 Makes GasCanisterSystem use ECS BoundUserInterfaces. (#4608) 2021-09-19 09:32:38 +02:00
Ygg01
fa905f477d Fix Welder component interaction (#4634) 2021-09-19 15:15:34 +10:00
Vera Aguilera Puerto
e440df03db Adds parchís game board, improves tabletop system to support other games. (#4610) 2021-09-18 10:40:38 +02:00
Mads Glahder
08cfc3bb46 Fix construction from inside containers (#4595)
* Disallow construction of construction ghosts from inside a container

* Move IsInContainer check to before doing container ensuring

* Move IsInContainer check to HandleStartStructureConstruction to allow building items but not construct structures when inside a cozy locker

* Update Resources/Locale/en-US/construction/construction-system.ftl

Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-09-18 10:38:42 +02:00
mirrorcult
62f6c8dd8e Wieldable/two-handed weapons (#4554)
* 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
2021-09-17 07:16:11 -07:00
Vera Aguilera Puerto
078a62762f Improves the JobSpecial system. (#4626)
* Improves the JobSpecial system.

* clean up code
2021-09-16 23:17:19 +10:00
Vera Aguilera Puerto
ce746dde35 Fix not being able to put most things in your pockets. 2021-09-16 12:16:14 +02:00
metalgearsloth
6e99c8efcd Move testbed to engine (#4611) 2021-09-16 13:02:50 +10:00
Pieter-Jan Briers
cd6c2bb373 Improve ExaminedEvent to handle newlines for you with helper methods. 2021-09-15 16:58:15 +02:00
Pieter-Jan Briers
9c7b061d13 Puddle IExamine event. 2021-09-15 16:39:34 +02:00
Pieter-Jan Briers
ce6e37bdd8 ECS-ify Construction[Ghost]Component IExamine. 2021-09-15 16:36:56 +02:00
mirrorcult
7cee263955 Landing velocity threshold (#4606)
* landing threshold

* on bodystatus change

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-09-15 20:58:45 +10:00
Ygg01
12430fbfcc Fix fire extinguisher to use spray solution (#4616)
* Fix fire extinguisher to use spray solution

* Fix FireExtinguisher more properly

* Re-add missing check to VaporSystem
2021-09-15 20:48:07 +10:00
Ygg01
c3d11fb3e1 Fix throwable solution (#4590)
* Fix throwable solution

* Revert previous commit

* Change Spillable and SpillBehavior

* Fix sloth's suggestion. Add more documents
2021-09-15 20:46:43 +10:00
Leon Friedrich
df584ad446 ECS damageable (#4529)
* ECS and damage Data

* Comments and newlines

* Added Comments

* Make TryChangeDamageEvent immutable

* Remove SetAllDamage event

Use public SetAllDamage function instead

* Undo destructible mistakes

That was some shit code.

* Rename DamageData to DamageSpecifier

And misc small edits

misc

* Cache trigger prototypes.

* Renaming destructible classes & functions

* Revert "Cache trigger prototypes."

This reverts commit 86bae15ba6616884dba75f552dfdfbe2d1fb6586.

* Replace prototypes with prototype IDs.

* Split damage.yml into individual files

* move get/handle component state to system

* Update HealthChange doc

* Make godmode call Dirty() on damageable component

* Add Initialize() to fix damage test

* Make non-static

* uncache resistance set prototype and trim DamageableComponentState

* Remove unnecessary Dirty() calls during initialization

* RemoveTryChangeDamageEvent

* revert Dirty()

* Fix MobState relying on DamageableComponent.Dirty()

* Fix DisposalUnit Tests.

These were previously failing, but because the async was not await-ed, this never raised the exception.

After I fixed MobState component, this exception stopped happening and instead the assertions started being tested & failing

* Disposal test 2: electric boogaloo

* Fix typos/mistakes

also add comments and fix spacing.

* Use Uids instead of IEntity

* fix merge

* Comments, a merge issue, and making some damage ignore resistances

* Extend DamageSpecifier and use it for DamageableComponent

* fix master merge

* Fix Disposal unit test. Again.

Snapgrids were removed in master

* Execute Exectute
2021-09-14 10:07:37 -07:00
Visne
973926fc9a Add chess (and mostly just tabletop backend stuff) (#4429)
* 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>
2021-09-13 19:58:44 +10:00
metalgearsloth
f301e45163 Remove ILand (#4582)
* Remove ILand

* Make land not handleable

* Rename ILand
2021-09-12 16:22:58 +10:00
metalgearsloth
0137884e16 Take TryRepell behind the shed (#4584)
Singularity containment uses physics and just workstm
2021-09-10 15:26:38 +02:00
Paul Ritter
4c7670fe82 conveyor & recycler ecs (#4537)
* conveyor done, recycler still todo

* done, just need to suss out the physics part. pinged sloth about it

* ship it
2021-09-10 17:26:05 +10:00
Swept
c00e82462b Tweaks ambient sound values and improves some existing sounds (#4576)
* Updates singularity to use AmbientSound

* Removed hum from light tubes and tweaked vending/bulb ambience

* Adds more explosion sound effects

* Moves closet open/close.ogg and adds wooden closet sound effect

* Updates flashlight on/off sound

* Adds HL Scientist scream collection

* Tweaks APC Ambience

* Minor oversight on det locker

* Addressed reviews
2021-09-10 11:31:54 +10:00
Vera Aguilera Puerto
77fe21eb0d Refactors flashes to ECS, sunglasses protect you from being flashed. (#4579)
* 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.
2021-09-10 00:20:41 +10:00
Leon Friedrich
c19b32d2ee fix stomach bug (#4571) 2021-09-08 00:19:19 -07:00
metalgearsloth
ff40a7665d Ambient sound system (#4552)
* 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
2021-09-07 18:47:23 +10:00
Vera Aguilera Puerto
68a78e94b7 Slight explosively depressurize cleanup. 2021-09-06 17:30:38 +02:00
Vera Aguilera Puerto
9f4ea1e5a9 Fix rare atmos crash when explosively depressurizing too many tiles. 2021-09-06 17:16:27 +02:00
Vera Aguilera Puerto
a8e7fb4977 Optimize atmos debug assert.
Seems I missed this one.
2021-09-06 16:55:05 +02:00