Commit Graph

580 Commits

Author SHA1 Message Date
DrSmugleaf ff1a2d97ea
Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00
T-Stalker 1c582ac2ec
Adds hands examine text (#4160)
* Adds hands examine text.

* Cleans the code

* Fixes?

* Update Resources/Locale/en-US/components/hands-component.ftl

Thankies ❤

Co-authored-by: mirrorcult <notzombiedude@gmail.com>

* Put it under handcontainer and shutdown

Co-authored-by: mirrorcult <notzombiedude@gmail.com>
2021-06-09 01:39:31 -07:00
mirrorcult 1c7285825c
Refactor ExtinguisherCabinet->ItemCabinet and actually maps them in, adds EntityWhitelist (#4154)
* i probably shouldnt have done this in one commit

* map nonsense

* fix example code

* unnecessary

* test

* reviews

* little fix for open datafield

* add soul
2021-06-09 12:10:29 +10:00
ShadowCommander 6870b88a56
Interaction clean up (#4091)
* Rename and clean up interaction events

* Fix hand equip events

* Refactor duplicate client input validation

* Rename Use handler

* Move unneeded InRangeUnobstructed methods to extensions only

* Clean up UseInteractions

* Clean up ActivateItemInWorld

* Replace explicit range check with InRangeUnobstructed

Remove TransformComponent check, since transform is guaranteed now.

* Revert transform check removal

* More cleanup

* Reorder interaction checks

* Rename attack eventargs to interact

* Test V1

* Add interaction test

* Fix interaction test

* Fix container interaction test

* Rename interaction methods

* Rename player to user and attacked to target

* Clean up InteractAfter

* Clean up InRangeUnobstructed usages

* Rename attack to interact and weapon to used

* Changed can't reach message to only play when holding something

Cleaned up bracket formatting

* Fix Airtight validation check

* Remove extra words in comments

* Fix FaceClick rotation

* Move duplicate map check and face to method

* Fix test
2021-06-07 05:49:43 -07:00
20kdc 561a5bc0f2
Cloning error messages and prediction based timing (#4013)
* Cloning error messages and prediction based timing

* Cloning error messages & prediction based timing: Fix problems mentioned in reviews
2021-06-06 03:32:59 +10:00
Vera Aguilera Puerto 62ce603858
Fix punching (#4141) 2021-06-06 02:05:57 +10:00
mirrorcult f744b655b8
Refactor MeleeWeaponComponent and related comps to be ECS (#4133)
* move everything to MeleeWeaponSystem

* refactor MeleeChemicalInjector

* hypospray and flash refactor

* stunbaton refactor

* bugfixes

* flash afterinteract

* resolve issues

* props

* playing the slots

* MeleeInteractEvent + bugfixes

* spear can actually use MeleeChemicalInjector
2021-06-05 09:20:52 +02:00
Vera Aguilera Puerto 1b77f18912 Don't dirty the node groups on snapgrid changed. 2021-06-01 13:02:57 +02:00
Vera Aguilera Puerto 20243052cb NodeGroups are dirtied when one of the nodes' snapgrid position changes.
Adds method to add behavior to a node when its snapgrid position changes.
2021-06-01 11:48:24 +02:00
Vera Aguilera Puerto 59a26102c5 Remove INodeGroupManager, moves logic into NodeGroupSystem.
It was an absolutely redundant IoC service.
2021-06-01 11:34:19 +02:00
R. Neuser db4213b21a
Fix Issue #4056 - Prevent cargo order quantities larger than the maximum (#4057)
* Fix merge conflicts with #4078
Check if the requested cargo order amount exceeds the maximum capacity
Check if the maximum order capacity would be exceeded given current capcity and order amount when approved
Cap maximum cargo request amount on client-side
Play an error sound if a cargo order could not be added or approved

* Add back error sound

* Cargo orders over the maximum amount do not close the order UI
2021-05-31 21:45:28 -07:00
metalgearsloth d93ebe9409 Remove ICollideSpecial
Handled in an ECS way by PreventCollideEvent.
The disposals one doesn't work anyway and would've required a larger refactor of disposals to fix so out of scope.
2021-05-30 23:30:44 +10:00
Vera Aguilera Puerto 888095cbbd
Actor refactor compatibility changes. (#4085) 2021-05-30 11:39:42 +02:00
esguard 0ef61ba47a
Fixes money being debitted multiple times (#4078) 2021-05-30 15:19:14 +10:00
20kdc a3d9562532
Makes the singularity engine actually work stably. (#4068)
* Add GNU Octave script for tuning singularity engine. startsingularityengine is now properly tuned & sets up radiation collectors. FTLize RadiationCollectorComponent.

* Fix bugs with radiation collectors producing infinite power.

* Ensure singularities don't instantly annihilate other singularities (causing new singularities to instantly dissolve)

Technically found by a "bug" where a singularity generator would make multiple singularities, but this renders that bug harmless.

* Tune singularity shield emitters to hopefully randomly fail less, and add an Octave script for looking into that

* Fix singularity shader

* Map in an unfinished PA into Saltern

* Correct PA particles being counted twice by singularity calculations, add singulo food component

* Hopefully stop "level 1 singulo stuck in a corner" issues by freezing it when it goes to level 1 from any other level

* Apply suggestions on 'jazz' PR
2021-05-28 11:44:13 +02:00
20kdc c7f104cd93
More rotatability (#4067)
* Make barstools, PA components, and radiation collectors rotatable.

Making barstools rotatable is so that people can spin on the barstool. (RP moment.)

The other two are more "functional" changes for assembling a PA.

* Allow rotating a rotate-while-anchored object if you're buckled to it.

Barstool spinny

* Fix bug with rotation of an object that someone is buckled to

* BuckleSystem: Efficiency improvements with directed events

* Don't need to unsubscribe anymore from events, so in BuckleSystem, just don't
2021-05-27 12:51:14 +02:00
Vera Aguilera Puerto 9500c91a69 Proper exception rethrowing in AI Steering system. 2021-05-27 12:39:34 +02:00
Vera Aguilera Puerto f64433a14d Makes more things queue delete to prevent physics collision callback issues. 2021-05-26 18:43:12 +02:00
Vera Aguilera Puerto 74518a421f Cleanup some events. 2021-05-26 11:11:14 +02:00
Vera Aguilera Puerto 33fa208214
Refactors stacks to be fully ECS. (#4046) 2021-05-26 10:20:57 +02:00
ShadowCommander acb102f978
Rename and clean up interaction events (#4044)
* Rename and clean up interaction events

* Fix hand equip events
2021-05-22 21:06:40 -07:00
20kdc efc5fac7ec
Fix dropping an item on a translated grid (#4027) 2021-05-19 19:26:01 +02:00
ShadowCommander 7b00489b1f
Fix clicking a locker while inside of said locker (#3965)
* Fix clicking a locker while inside of said locker

Actually fixes #1535

* Address reviews

* Add test

* Clean up test
2021-05-17 02:31:10 -07:00
Pieter-Jan Briers 251df93b71 Remove usages of AnchoredChangedMessage.
It was a component message which is now deprecated.
2021-05-13 02:05:46 +02:00
Vera Aguilera Puerto 722087f92a Melee arc effects are only sent to players inside PVS. 2021-05-12 14:47:56 +02:00
Vera Aguilera Puerto 462cddf860
Use ActorComponent instead of IActorComponent or BasicActorComponent. (#3966) 2021-05-12 13:42:18 +02:00
ShadowCommander c2d66723a3
Cloning rework (#3808)
* Fix cloning

* Fix cloning after clone dies and remove unneeded code

* Fix ignored

Co-authored-by: Silver <silvertorch5@gmail.com>
2021-05-11 16:16:08 -07:00
Vera Aguilera Puerto 0be8437645 Update ResearchSystem to not use IEntityQuery. 2021-05-10 20:46:34 +02:00
Paul ffdf1d17fe when the transform 2021-05-09 22:36:19 +02:00
Paul c136755df2 dropping with random rotation on unintentional drop, dropping with reset rotation on intentional 2021-05-09 10:09:14 +02:00
Vera Aguilera Puerto 35fc0a2e8a Fix SolutionAreaEffectSystem exception when the collection is modified. 2021-05-08 03:26:07 +02:00
Acruid 00e01d51fd
SnapGridComponent Removal (#3884)
* Removed SnapGridOffset, there is only center now.

* SnapGridComponent methods are now static.

* Removed SnapGridComponent.OnPositionChanged.

* Refactored static functions off SnapGridComponent to MapGrid.
Refactored away usages of SnapGridComponent.Position.

* Added Transform.Anchored for checking if an entity is a tile entity.
More refactoring for static MapGrid functions.

* Static snapgrid methods on MapGrid are no longer static.

* Add setter to ITransformComponent.Anchored.
Removed direct references to SnapGridComponent from content.

* Grid functions now deal with EntityUids instead of SnapGridComponents.
Began renaming public API functions from SnapGrid to Anchor.

* Remove the SnapGridComponent 'Offset' field from all yaml files. This was removed in code previously, so the yaml linter was upset.

* Update engine submodule to v0.4.46.
2021-04-28 10:49:37 -07:00
ShadowCommander 64491bc986
Fix player sent to nullspace when ghost is deleted 2021-04-18 01:54:36 -07:00
Vera Aguilera Puerto ce69fd266f Fix build 2021-04-14 14:45:13 +02:00
Vera Aguilera Puerto 2a95f5c4b6 Makes a few EntitySystems use the RaiseNetworkedEvent helper instead of manually calling IEntityNetworkManager. 2021-04-14 14:12:14 +02:00
Vera Aguilera Puerto c17426dfa7
AtmosphereSystem no longer creates a component manually. (#3839)
- Maps get SpaceGridAtmosphereComponent added automatically
2021-04-13 13:17:10 +02:00
Vera Aguilera Puerto 009870116d
Nodes in entities are now named. (#3825) 2021-04-09 20:47:31 +02:00
Vera Aguilera Puerto 03cd390478 Makes a lot of entity systems unsubscribe from events on shutdown. 2021-04-09 16:08:12 +02:00
Alex Evgrashin cfe427eb8c
Light replacer (#3701)
* Add graphics

* Barebone light replacer

* Now light replacer stores bulbs

* More interactions

* Added text messages

* Better light refil

* Add light replacer to locker and lathe

* Added sound

* Fixed ignore error

* Better inhand

* You don't like this commas?

* Fixed typo

* Deferring spawning

* Moved interaction logic to system

Co-authored-by: Alex Evgrashin <evgrashin.adl@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-04-08 22:28:06 +10:00
metalgearsloth 67f9e9cb5e
Split entity lookups from entity manager (#3747)
* Split entity lookups from entity manager

* IoC instead

* IoC refactor

* Fix bad resolve

* Remove EntityManager EntityLookup

* Update submodule

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-04-06 13:31:07 +10:00
DrSmugleaf 4c47cd4fe2
Add back pull moving (#3635)
* Add back pull moving

* Make pull moving event-based, use map coordinates, slow down moving when getting closer and stop moving when very close, add max range and add compensation for overshooting

* Remove compensation

* Prevent pull move from pulling you

* acruid did this

* Add unsubscriptions to shutdown

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-04-05 14:08:45 +02:00
ShadowCommander c4895af81a
Add shutdown and clean up GhostSystem 2021-04-03 00:52:27 -07:00
metalgearsloth 5de9228c40
Content grid-trees (#3750)
* Content grid-trees

* Update submodule
2021-04-02 20:29:19 +11:00
ShadowCommander faae4c2456
Fix inflatable position (#3788) 2021-04-01 23:34:35 +02:00
ShadowCommander a98c0dadd4
Implement inflatable wall (#3703)
* Implement inflatable wall

* Actually block atmos

* Fix naming and add description

* Add requested changes

* Change prototype to field

* Refactor checks to use existing methods

* Fix PrototypeIdSerializer imports

* Fix mass in yaml
2021-04-01 00:04:56 -07:00
ShadowCommander 951b0f425a
Refactor mind and ghost deletion code (#3680)
* Refactor mind and ghost deletion code

* Refactor to use EventBus and clean up deletes

* Fix mind eject when being deleted

* Refactor entity manager calls to use IEntity.EntityManager
2021-03-31 14:17:22 -07:00
ShadowCommander 7a842f7c22
Fix tests (#3707)
* First pass

* Fix access and rename banananium to bananium

* Fix captialization of CookTimeInfoLabel

* Fix InteractUsing calls

* Remove unused [Dependency]

* Replace obsolete references to Anchored with BodyType

* Assign default value to shoving someone in disposals

* Fix naming

* Replace Initialize TryGetComponents with EnsureComponent

* Rework AnchorableComponent

* Fix singularity component

* Replace obsolete usages of Angle.South

* Fix efcore warning

* Fix container tests

* Fix DebugPressurePump invalid PressurePump yaml

* Fix getting pathfinding region of grid 0

* Fix atmos plaque missing layer and add info message when it happens

* Fix AiSteeringSystem steering in an invalid grid in entity test

* Make content able to choose which log level leads to test failures

* Revert container test fix for Acruid

* Fix sprite, pipe and saving errors
Make EntityTest print all errors instead of stopping on the first

* Reorder singularity visualizer

* Disable pvs for container occlusion adn simple predict reconcile, they use entities other than map ones

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-03-31 21:41:23 +02:00
Acruid ac219e099d
Moved VisibilityFlags to EyeComponent (#3716)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-03-28 01:37:19 +01:00
Vera Aguilera Puerto 195feb70a7 Makes atmos superconduction a CVar, disables it by default. 2021-03-25 18:17:30 +01:00
Acruid 9459400002
SoundSystem Improvements (#3697)
* Refactor all audio to use the new SoundSystem.

* Update submodule

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-03-21 17:12:03 +01:00