Commit Graph

1261 Commits

Author SHA1 Message Date
Acruid
15fb554c28 Engine Entity Anchoring Changes (#4195)
* Converted all SnapGridPositionChangedEvent subscriptions to AnchorStateChangedEvent.

* Fixes power tests with new anchored requirements.

* Moved AnchorableComponent into construction.
AnchorableComponent now uses Transform.Anchored.

* Fixed bug with nodes, power works again.

* Adds lifetime stages to Component.

* Update Engine to v0.4.70.
2021-06-19 19:41:26 -07:00
Swept
a51305466e Makes more stuff destructible/breakable (#4081) 2021-06-19 19:34:01 +00:00
Vera Aguilera Puerto
a2b737d945 Atmos pipe rework (#3833)
* Initial

* Cleanup a bunch of things

* some changes dunno

* RequireAnchored

* a

* stuff

* more work

* Lots of progress

* delete pipe visualizer

* a

* b

* pipenet and pipenode cleanup

* Fixes

* Adds GasValve

* Adds GasMiner

* Fix stuff, maybe?

* More fixes

* Ignored components on the client

* Adds thermomachine behavior, change a bunch of stuff

* Remove Anchored

* some work, but it's shitcode

* significantly more ECS

* ECS AtmosDevices

* Cleanup

* fix appearance

* when the pipe direction is sus

* Gas tanks and canisters

* pipe anchoring and stuff

* coding is my passion

* Unsafe pipes take longer to unanchor

* turns out we're no longer using eris canisters

* Gas canister inserted tank appearance, improvements

* Work on a bunch of appearances

* Scrubber appearance

* Reorganize AtmosphereSystem.Piping into a bunch of different systems

* Appearance for vent/scrubber/pump turns off when leaving atmosphere

* ThermoMachine appearance

* Cleanup gas tanks

* Remove passive gate unused imports

* remove old canister UI functionality

* PipeNode environment air, make everything use AssumeAir instead of merging manually

* a

* Reorganize atmos to follow new structure

* ?????

* Canister UI, restructure client

* Restructure shared

* Fix build tho

* listen, at least the canister UI works entirely...

* fix build : )

* Atmos device prototypes have names and descriptions

* gas canister ui slider doesn't jitter

* trinary prototypes

* sprite for miners

* ignore components

* fix YAML

* Fix port system doing useless thing

* Fix build

* fix thinking moment

* fix build again because

* canister direction

* pipenode is a word

* GasTank Air will throw on invalid states

* fix build....

* Unhardcode volume pump thresholds

* Volume pump and filter take time into account

* Rename Join/Leave atmosphere events to AtmosDeviceEnabled/Disabled Event

* Gas tank node volume is set by initial mixtuer

* I love node container
2021-06-19 13:25:05 +02:00
Galactic Chimp
53671aeee7 #3935 - Refactored ToysComponent functionality into ECS (#4127)
* #3935 - toys properly play sounds when: Activated, Landed (after throwing) and Used in hand

* #3935 - extracted BaseEmitSoundComponent

* #3935 - refactored EmitSound components to use ECS

* #3935 - added new components to client ignored components

* #3935 - added suggested stuff for EmitSoundSystem et al.

* #3935 added suggestions from PR

* #3935 implemented suggestions from PR

* #3935 updated namespace
2021-06-19 02:35:56 -07:00
DrSmugleaf
4093e2b5ba Remove damage flags (#4189) 2021-06-19 10:50:56 +02:00
DrSmugleaf
9b8185db23 Deprecate IActionBlocker in favour of cancellable events (#4193)
* Deprecate IActionBlocker in favour of cancellable events

* Bring back old speech/emoting component restrictions

* Rename action blocker listener methods

* Use Entity System public methods instead of extension methods

Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
2021-06-19 10:03:24 +02:00
Acruid
e1e54e9cb1 Removes all dependencies on engine component events. (#4199) 2021-06-18 10:49:18 +02:00
DrSmugleaf
4f4d203d2e Make ghost component ECS (#4159)
* Make ghost component ECS

* Remove players and locations properties from ghost component

* Address reviews

* One more doc

* Fix client ghost component state method error
2021-06-18 09:56:23 +02:00
20kdc
a2f5c953dc Refactoring of solar control console (#4072)
* Refactor/fix client-side of solar control computer (introduce ComputerBoundUserInterface & fix bugs)

* Refactor server side of solar control computer (introduce BaseComputerUserInterfaceComponent)

* If you can't interact, then messages to computers are blocked.

* Add 'not powered' messages, migrate activation logic partially to an EntitySystem

* Move solar control console to a XAML UI

* Remove useless comment on UserInterfaceKey

* BaseComputerUserInterfaceComponent: Remove EnsureComponent<PowerReceiver>, it's not necessary

* Fix solar panel occlusion check direction

* Solar Control Console refactors/etc. : Handle namespace renames
2021-06-17 00:49:02 +10:00
DrSmugleaf
69969bbdc6 Remove IBody, IBodyPart, IMechanism and IMechanismBehavior (#4187)
* Remove IBody, IBodyPart, IMechanism and IMechanismBehavior interfaces

* Summary cleanup
2021-06-17 00:44:38 +10:00
metalgearsloth
7cbfbad578 Minor cuff changes (#4164) 2021-06-17 00:37:05 +10:00
DrSmugleaf
f878f353e4 Move some files out of Content.Shared root because I forgot (#4182) 2021-06-13 22:52:40 +10:00
Vera Aguilera Puerto
0093a961bc Refactor stacks to not use method events (#4177) 2021-06-12 11:24:34 +02:00
DrSmugleaf
ff1a2d97ea Re-organize all projects (#4166) 2021-06-09 22:19:39 +02: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
metalgearsloth
07494e4059 Refactor IsWeightless + remove PhysicsManager (#4153) 2021-06-09 01:26:46 +02:00
mirrorcult
22e5ad89a5 MindComponent loc, kitchenspike loc fixes, climbable loc fixes (#4071)
* mindcomp loc, kitchenspike loc fixes, climbable loc fixes

* add fluent functions for words that change on pronoun, add grammarcomponent to humans

* fix the()

* cleanup

* cleanup

* reviews

* holla holla get dolla
2021-06-08 13:59:32 -07: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
metalgearsloth
70ac46ee09 Make dead bodies use CollisionWake (#4119)
* Make dead bodies use CollisionWake

* Disable CanCollide fuckery

* Update Content.Shared/GameObjects/Components/Mobs/State/SharedDeadMobState.cs

Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-06-05 09:23:24 +02: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
metalgearsloth
e73701187d Use ID for pulljoint (#4118) 2021-05-31 21:31:55 +10:00
Pieter-Jan Briers
de3cbc4c0e Fixture.Name -> ID 2021-05-31 09:49:25 +02:00
Pieter-Jan Briers
3e3acaa8cf Merge branch 'master' into 2021-05-30_deprecate-icollidespecial 2021-05-31 09:13:53 +02:00
metalgearsloth
10615c233c ECS thrown items (#4110) 2021-05-31 09:13:40 +02: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
20kdc
cb9bef0b94 Thrown items become not-thrown if you start pulling them. (#4082) 2021-05-27 12:47:39 +02:00
Vera Aguilera Puerto
0c68f2973e Adds YAML linter validators for content tiles.
- Removes invalid floor drops.
2021-05-27 11:42:04 +02:00
Vera Aguilera Puerto
9b402acfa3 Use component startup/shutdown in SubFloorHideSystem. 2021-05-27 11:11:56 +02:00
Vera Aguilera Puerto
0ea3391af0 Stacks get their count appearance set on startup. 2021-05-26 19:05:04 +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
0f703b8f02 Stack examining is now ECS. 2021-05-26 10:32:40 +02:00
Vera Aguilera Puerto
b9debaa273 Marks IExamine as obsolete. 2021-05-26 10:23:22 +02:00
Vera Aguilera Puerto
33fa208214 Refactors stacks to be fully ECS. (#4046) 2021-05-26 10:20:57 +02:00
Vera Aguilera Puerto
0f8e330a3d Adds directed entity event for examining entities. 2021-05-26 10:19:14 +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
Ygg01
d97021d3a0 Fix layers displaying in cable stacks (#4028)
* Fix layers displaying in cable stacks

Fixed stackVisualizer to use another round method

* Fix ShadowCommander review

* Change to expected Result
2021-05-22 21:05:55 -07:00
Vera Aguilera Puerto
bbfc0c320a Fixes materials in lathe recipes 2021-05-22 11:30:11 +02:00
Vera Aguilera Puerto
3a27490c59 Material cleanup (#4025)
* work

* more work
2021-05-20 10:37:34 +02:00
ShadowCommander
b907c54470 Fix kitchen spike (#4008)
* Fix kitchen spike

* Add fluent localization

* Add newline

* Prevent things that are not dead from being spiked
2021-05-17 11:12:17 +02:00
ShadowCommander
483fbe6ea3 Lower data usage (#4005)
* Lower data usage

* Fix the problems at the root
2021-05-16 22:37:58 +02:00
Clyybber
914e49f867 Chat channel switching improvements (#4000)
* IC is default when joining;
switch to IC channel if IC channel becomes unavailable before trying OOC

* Allow channel cycling while the textbox is focused

* Fix focus channel keybinds not actually focusing

* Whitespess

* Fix duplicate radio

* Smol CycleChatChannel cleanup

* Revert style change
2021-05-15 03:28:04 -07:00
Pieter-Jan Briers
26c2d9f479 Remove usages of physics anchored from content 2021-05-13 02:13:12 +02:00
Moses
e31c518353 Fix beards save on character creation (#3975)
Fixes #3740
2021-05-12 03:12:26 +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
b35e4d7e7c MaterialDataEntry's Value is now validated by the YAML linter. 2021-05-08 03:47:53 +02:00
Vera Aguilera Puerto
a3755460c3 ReagentQuantity's Reagent ID is now validated by the YAML linter. 2021-05-08 03:46:13 +02:00
Alex Evgrashin
9857f8197c Pulling change entity rotation (#3890)
* Moved rotatable to shared

* Pullable change rotation

* Applied review

* Update Content.Shared/GameObjects/EntitySystems/SharedPullingSystem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-05-05 13:29:26 +10:00