Commit Graph

2253 Commits

Author SHA1 Message Date
Kara Dinyes ecad9fc32d
Merge branch 'master' into 2021-07-16/windoors 2021-07-25 18:25:59 -07:00
mirrorcult a91f919018
Remove FoodContainer, add whitelists, replace with SpawnItemsOnUse (#4358) 2021-07-25 17:41:50 +02:00
Vera Aguilera Puerto 6d3863f8a0 Remove EntityNetworkUtils, move extension methods to AtmosDirection class. 2021-07-25 15:05:05 +02:00
Vera Aguilera Puerto 8066eb196b Remove Hotspot Start method. 2021-07-25 15:03:07 +02:00
Galactic Chimp 10af8efc0e
#4219 emit sound system add single sound support (#4237)
* Revert "#3935 implemented suggestions from PR"

This reverts commit a9b1c7b96333ca570067d6a9df1954481005892a.

* #4219 revert of single sound removal in EmitSoundSystem

* #4219 single sounds in EmitSoundSystem should work now

* #4219 some small project tweaks

* #4219 upgraded EmitSoundSystem to use SoundSpecifier

* #4219 pr tweaks

* #4219 pr tweak

* #4219 missing bike horn .yaml change
2021-07-25 04:37:01 -07:00
metalgearsloth ced39d4b2e
Slight trigger refactor (#4320)
* Trigger tweaks

* Finish trigger refactor

* Clusterflash too
2021-07-25 12:09:08 +02:00
mirrorcult ffee1482d9
Fix crayon decal spawning exception (#4355)
* Fix crayon spawning

* Popup message
2021-07-25 18:44:26 +10:00
Kara Dinyes 9d36b3371f
Fix handheld radio not accounting for obstructions
Fixes #4356
2021-07-25 01:07:28 -07:00
mirrorcult d27164528e
Add UI for setting solution transfer amount (#4074)
* basic eui and window

* finish EUI, update defaults

* unnecessary usings

* convert to bounduserinterface

* merge me up

merge me up inside

* Fix repeated define for component in prototype

* impl swept UI suggestion

* apply discord reviews

* small changes
2021-07-25 00:53:53 -07:00
Vera Aguilera Puerto 93acc565f0
Makes Airtight ECS. (#4351)
* Makes Airtight ECS.

* Remove atmos holdovers while at it!
2021-07-25 17:04:58 +10:00
metalgearsloth 29e335c54d
Bump up tile friction (#4329)
* Bump up tile friction

* Increase throwing speed

* Fix ExplosionLaunched throwing

* Flying time
2021-07-25 16:58:02 +10:00
Vera Aguilera Puerto d8fe13af04 Further optimize atmos by reusing specific arrays instead of using a shared arraypool 2021-07-24 16:33:04 +02:00
Vera Aguilera Puerto e83bf9ef34 Remove ITemperatureExpose, optimizes atmos. 2021-07-24 15:06:57 +02:00
Paul Ritter c95edae7b1
emitter ecs & bugfixes (#4348)
* a

* finished emitter ecs

Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2021-07-24 21:42:05 +10:00
metalgearsloth 2ba201ccff Revert "Hotfix ExplosionLaunchedComponent"
This reverts commit 6b98e65456.
2021-07-24 13:04:52 +10:00
metalgearsloth 6b98e65456 Hotfix ExplosionLaunchedComponent
this thing shouldn't exist but I'm fixing the crash for now
2021-07-24 13:03:47 +10:00
Vera Aguilera Puerto 4ade87c040 Add atmos grid impulses, disabled by default. 2021-07-23 17:27:16 +02:00
Vera Aguilera Puerto da25266dd5 CVar for explosive depressurization tile ripping. 2021-07-23 13:45:56 +02:00
Vera Aguilera Puerto 07c478afb6 Optimize atmos by not invalidating hotspot tiles every time they react. 2021-07-23 11:10:06 +02:00
Vera Aguilera Puerto 4112847142
ECS Atmos Part 5: Moves all logic from GridAtmosphereComponent to AtmosphereSystem. (#4331) 2021-07-23 11:09:01 +02:00
metalgearsloth 30c28dafb9
Don't spin thrown pies (#4328) 2021-07-22 23:12:07 -07:00
Paul Ritter 4503a6f0ee
refactors barsigncomponent to be ecs (#4332)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2021-07-23 12:42:39 +10:00
Pieter-Jan Briers 992b03a5c2 Restart vote does not vote no for AFK players. 2021-07-22 23:20:57 +02:00
Pieter-Jan Briers 7345985410 Add AFK tracking system.
Allows us to see which players have not done any input and can be considered AFK.
2021-07-22 23:20:57 +02:00
metalgearsloth c7e32ff0c7 Fix shuttle angular velocity direction 2021-07-22 22:48:46 +10:00
Ygg01 3fd28c2565
Added mapped storage for things like crayon belts and tools (#4201)
* Added mapped storage for things like crayon belts and tools

* Attempt to get StorageFillEvent to work

* Managed to get it working with Visualizer logi

* Improved PR and did some light refactoring of components

* Update Content.Client/Storage/Visualizers/MappedItemVisualizer.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Removed event, went with stateful ApperanceData

* Removed ids in favor of whitelist

* Refactor YAML, Moved functionality to Shared and renamed it.

* Changed so insert/remove always send full state.

* Move logic to component

* Fix some issues on MappedVisualizer and few nitpicks

- Fix mapped visualizer only doing init or update layers
- Fixed naming of systems
- Fixed sort of crayons

* Forgot to apply Vera's suggestion

* Fix the data to be more strict and to avoid unnecessary clearing

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-07-22 02:56:55 -07:00
Pieter-Jan Briers e9af56c7c3 Vote type delay, code comments.
Added doc comments to server side voting API.
There is now a 4 minute delay between creating votes of the same type.
Shuffled some code around.
Made a StandardVoteType enum instead of string IDs.
2021-07-21 19:03:10 +02:00
Pieter-Jan Briers 3a6ad88b39 Restart votes now default to no. 2021-07-21 15:24:43 +02:00
Pieter-Jan Briers 4259bc6806 Remove IoC resolve in vote manager 2021-07-21 15:15:12 +02:00
metalgearsloth 39801372be
Remove IStartCollide from containment fields (#4318)
* Remove IStartCollide from containment fields

* Emitter namespace

* vera reviews
2021-07-21 22:26:18 +10:00
metalgearsloth 3775d329bd
ECS vapors (#4308)
* ECS vapors

* tweak

* Reviews

* man my git must be laggin is yours laggin
2021-07-21 22:26:09 +10:00
metalgearsloth d34f1d4b54
(mostly) ECS projectiles (#4317)
* (mostly) ECS projectiles

* a

* Actual queue
2021-07-21 22:19:50 +10:00
metalgearsloth 590a6ce969
Slipping, now with 20% more ecs (#4310)
* Slipping, now with 20% more ecs

* vereview
2021-07-21 22:13:58 +10:00
metalgearsloth 500b9cb1ea
Make Saltern driveable (#4257)
* Broadphase refactor (content)

* Shuttle jank

* Fixes

* Testing jank

* Features and things

* Balance stuffsies

* AHHHHHHHHHHHHHHHH

* Mass and stuff working

* Fix drops

* Another balance pass

* Balance AGEN

* Add in stuff for rotating shuttles for debugging

* Nothing to see here

* Testbed stuffsies

* Fix some tests

* Fixen test

* Try fixing map

* Shuttle movement balance pass

* lasaggne

* Basic Helmsman console working

* Slight docking cleanup

* Helmsman requires power

* Basic shuttle test

* Stuff

* Fix computations

* Add shuttle console to saltern

* Rename helmsman to shuttleconsole

* Final stretch

* More tweaks

* Fix piloting prediction for now.
2021-07-21 21:15:12 +10:00
metalgearsloth 55087a6f16
Remove IStartCollide from Recyclers (#4312) 2021-07-21 12:35:45 +02:00
metalgearsloth 224bd9849b
Remove IStartCollide from singulo (#4313)
I accidentally glanced at the rest of singulo code and went blind.
2021-07-21 12:33:22 +02:00
metalgearsloth e93692245e
Remove IStartCollide from flammable (#4314)
I ported some stuff to be ECS but didn't feel like porting the rest, sue me.
2021-07-21 12:32:00 +02:00
metalgearsloth cf1b6246da
Remove IStartCollide from doors (#4319) 2021-07-21 12:28:37 +02:00
metalgearsloth 4b78e0a4e0
ECS flash area on collision (#4311) 2021-07-21 11:20:13 +02:00
metalgearsloth 8862028860
ECS StunnableProjectile (#4309)
* ECS StunnableProjectile

Also renamed it to the more generic component for stunning on collision

* Reviews
2021-07-21 11:16:38 +02:00
metalgearsloth 94ef2cb66e
Nuke portals (#4315) 2021-07-21 11:16:10 +02:00
Vera Aguilera Puerto fcafa8f439
ECS Atmos Part 4: Moves all atmos logic from TileAtmosphere to AtmosphereSystem. (#4295)
* Moves all atmos logic from TileAtmosphere to AtmosphereSystem.

* Atmos uses grid anchoring to check for firelocks instead of grid tile lookups.

* CVar for space wind sound

* CVar for explosive depressurization
2021-07-20 18:03:49 +02:00
metalgearsloth e1fdd902bb
Refactor DamageOnHighSpeedImpact to be ECS (#4297)
* Refactor DamageOnHighSpeedImpact to be ecs

* Comment
2021-07-20 18:02:43 +02:00
metalgearsloth b46de3a5db
Refactor chemical injection to be ECS (#4296) 2021-07-20 17:41:22 +02:00
Vera Aguilera Puerto 1685c716b9 Fix SprayComponent warning. 2021-07-20 16:58:58 +02:00
Pieter-Jan Briers b96d760043
Chat improvements. (#4283)
* UI is an abbreviation, in XAML.

* Chat improvements.

Changing the "selected" channel on the chat box is now only done via the tab cycle or clicking the button.

Prefix chars like [ will temporarily replace the active chat channel. This is based 100% on message box contents so there's no input eating garbage or anything.

Pressing specific channel focusing keys inserts the correct prefix character, potentially replacing an existing one. Existing chat contents are left in place just fine and selected so you can easily delete them (but are not forced to).

Channel focusing keys now match the QWERTY key codes.

Deadchat works now.

Console can no longer be selected as a chat channel, but you can still use it with the / prefix.

Refactored the connection between chat manager and chat box so that it's event based, reducing tons of spaghetti everywhere.

Main chat box control uses XAML now.

General cleanup.

Added focus hotkeys for deadchat/console. Also added prefix for deadchat.

Local chat is mapped to deadchat when a ghost.

Probably more stuff I can't think of right now.

* Add preferred channel system to chat box to automatically select local.

I can't actually test this works because the non-lobby chat box code is complete disastrous spaghetti and i need to refactor it.

* Move chatbox resizing and all that to a subclass.

Refine preferred channel & deadchat mapping code further.

* Don't do prefixes for channels you don't have access to.

* Change format on channel select popup.

* Clean up code with console handling somewhat.
2021-07-20 10:29:09 +02:00
Galactic Chimp 02242324ef
Fixed 2 localisation instances (#4289) 2021-07-19 20:55:00 +00:00
Vera Aguilera Puerto c8ba345cdc
ECS Atmos Part 3: Removes AtmosHelpers, add many methods to AtmosphereSystem. (#4285)
* ECS Atmos Part 3: Removes AtmosHelpers, add many methods to AtmosphereSystem

* Adds API for adding/removing active tiles.

* Adds API for FixVacuum.

* Adds API for UpdateAdjacent.

* Adds API for IsTileAirBlocked.

* Re-organize hotspot code

* Adds API for IsTileSpace.

* RemoveGasCommand uses AtmosphereSystem

* AddGasCommand uses AtmosphereSystem.

* SetTemperatureCommand uses AtmosphereSystem.

* Adds API for IsSimulatedGrid.

* GasLeak uses AtmosphereSystem.

* Makes Spark method in GasLeak ALSO use AtmosphereSystem.

* GasPassiveVentSystem uses AtmosphereSystem.

* GasMinerSystem uses AtmosphereSystem.

* GasOutletInjectorSystem uses AtmosphereSystem.

* GasVentPumpSystem uses AtmosphereSystem.

* GasDualPortVentPumpSystem uses AtmosphereSystem.

* GasVolumePumpSystem uses AtmosphereSystem.

* GasAnalyzerComponent uses AtmosphereSystem.

* Add API for GetAdjacentTileMixtures.

* GasVentScrubberSystem uses AtmosphereSystem.

* AirtightComponent uses AtmosphereSystem.

* GasLeaks's TryFindRandomTile uses AtmosphereSystem.

* Adds API for GetAdjacentTiles.

* FirelockComponent's IsHoldingFire uses AtmosphereSystem.

* Adds API for GetAllTileMixtures.

* DeleteGasCommand uses AtmosphereSystem.

* FixGridAtmos uses AtmosphereSystem.

* FillGasCommand uses AtmosphereSystem.

* SetAtmosTemperatureCommand uses AtmosphereSystem.
2021-07-19 12:07:37 +02:00
Vera Aguilera Puerto 8410fc239c Fix handheld instruments not working 2021-07-18 14:59:40 +02:00
Kara Dinyes 74b61438c4
first windoor commit 2021-07-17 21:21:36 -07:00