Partial lathe ECS, fix cursed lathe visualizer, a bit more audiovisual feedback for lathes (#7238)

* Prototype that's mostly borked rather than completely borked

* ECS inserting mats

* Partial ECS mostly done, needs cleanup and visualizer

* Replace timers

* Power visualizes at least

* First ""working"" version

* Clean up all lathes

* Colors

* Fix animation timing

* Fixes greyscale, adds a bunch of colors

* Give every (used) material a color

* Made most lathes take long enough you can at least see there's some sort of animation

* Insertion feedback popup

* Sound for circuit printer and uniform printer

* Fix queueing, optimize update

* Remove mono crash

* cleanup

* Fix test failure

* Techfab inserting sprite

* Cleanup and commenting

* Fix bug in CanProduce check

* Fix UI resolves

* Mirror review stuff
This commit is contained in:
Rane
2022-04-17 03:34:14 -04:00
committed by GitHub
parent 5f9cb8271d
commit 93cdca4f82
70 changed files with 781 additions and 1183 deletions

View File

@@ -1,14 +1,9 @@
using System;
using System.Collections.Generic;
using Content.Shared.Materials;
using Robust.Shared.IoC;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary;
using Robust.Shared.Utility;
using Robust.Shared.ViewVariables;
namespace Content.Shared.Research.Prototypes
{
@@ -32,7 +27,7 @@ namespace Content.Shared.Research.Prototypes
private string _result = string.Empty;
[DataField("completetime")]
private int _completeTime = 2500;
private TimeSpan _completeTime = TimeSpan.FromSeconds(5);
[DataField("materials", customTypeSerializer: typeof(PrototypeIdDictionarySerializer<int, MaterialPrototype>))]
private Dictionary<string, int> _requiredMaterials = new();
@@ -102,6 +97,6 @@ namespace Content.Shared.Research.Prototypes
/// Might lower depending on the lathe's upgrade level.
/// </summary>
[ViewVariables]
public int CompleteTime => _completeTime;
public TimeSpan CompleteTime => _completeTime;
}
}