Reagents & Solutions (#280)

* Added the ReagentPrototype class.

* Added the new Solution class.

* Added new shared SolutionComponent to the ECS system.

* Added some basic element and chemical reagent prototypes.

* Added a new Beaker item utilizing the SolutionComponent. This is a testing/debug entity, and should be removed or changed soon.

* Added filters for code coverage.

* Nightly work.

* Added the server SolutionComponent class.

* Added a bucket.
Verbs set up for solution interaction.

* Adds water tank entity to the game.

* Added a full water tank entity.
Solutions are properly serialized.
Solution can be poured between two containers.

* Solution class can now be enumerated.
SolutionComponent now calculates the color of the solution.

* Minor Cleanup.
This commit is contained in:
Acruid
2019-07-31 05:10:06 -07:00
committed by Pieter-Jan Briers
parent 41b72d5aa2
commit 2ea8bbf4eb
22 changed files with 1055 additions and 2 deletions

View File

@@ -39,6 +39,7 @@ using Content.Server.GameObjects.Components.Weapon.Ranged;
using Content.Server.GameTicking;
using Content.Server.Interfaces;
using Content.Server.Interfaces.GameTicking;
using Content.Shared.GameObjects.Components.Chemistry;
using Content.Shared.GameObjects.Components.Materials;
using Content.Shared.GameObjects.Components.Inventory;
using Content.Shared.GameObjects.Components.Markers;
@@ -59,6 +60,7 @@ using Content.Server.GameObjects.Components.Explosive;
using Content.Server.GameObjects.Components.Items;
using Content.Server.GameObjects.Components.Triggers;
using Content.Shared.GameObjects.Components.Movement;
using SolutionComponent = Content.Server.GameObjects.Components.Chemistry.SolutionComponent;
namespace Content.Server
{
@@ -94,6 +96,8 @@ namespace Content.Server
factory.Register<ServerDoorComponent>();
factory.RegisterReference<ServerDoorComponent, IActivate>();
factory.Register<Content.Server.GameObjects.Components.Chemistry.SolutionComponent>();
//Power Components
factory.Register<PowerTransferComponent>();
factory.Register<PowerProviderComponent>();