Makes more fields VV (#1282)

* Sprite & Appearance VV

* Added Client SpriteComp & RSI
This commit is contained in:
Exp
2020-09-08 18:44:53 +02:00
committed by GitHub
parent a72d2beb86
commit 31e9554cd7
5 changed files with 24 additions and 8 deletions

View File

@@ -10,13 +10,16 @@ using Robust.Shared.Interfaces.Reflection;
using Robust.Shared.IoC;
using Robust.Shared.Serialization;
using Robust.Shared.Utility;
using Robust.Shared.ViewVariables;
using YamlDotNet.RepresentationModel;
namespace Robust.Client.GameObjects
{
public sealed class AppearanceComponent : SharedAppearanceComponent
{
[ViewVariables]
private Dictionary<object, object> data = new Dictionary<object, object>();
[ViewVariables]
internal List<AppearanceVisualizer> Visualizers = new List<AppearanceVisualizer>();
[Dependency] private readonly IReflectionManager _reflectionManager = default!;

View File

@@ -1508,22 +1508,30 @@ namespace Robust.Client.GameObjects
private class Layer : ISpriteLayer
{
private readonly SpriteComponent _parent;
[ViewVariables] private readonly SpriteComponent _parent;
public ShaderInstance? Shader;
public Texture? Texture;
[ViewVariables] public ShaderInstance? Shader;
[ViewVariables] public Texture? Texture;
public RSI? RSI;
public RSI.StateId State;
public float AnimationTimeLeft;
public float AnimationTime;
public int AnimationFrame;
[ViewVariables] public RSI? RSI;
[ViewVariables] public RSI.StateId State;
[ViewVariables] public float AnimationTimeLeft;
[ViewVariables] public float AnimationTime;
[ViewVariables] public int AnimationFrame;
[ViewVariables(VVAccess.ReadWrite)]
public Vector2 Scale { get; set; } = Vector2.One;
[ViewVariables(VVAccess.ReadWrite)]
public Angle Rotation { get; set; }
[ViewVariables(VVAccess.ReadWrite)]
public bool Visible = true;
[ViewVariables(VVAccess.ReadWrite)]
public Color Color { get; set; } = Color.White;
[ViewVariables(VVAccess.ReadWrite)]
public bool AutoAnimated = true;
[ViewVariables]
public DirectionOffset DirOffset { get; set; }
[ViewVariables]
public RSI? ActualRsi => RSI ?? _parent.BaseRSI;
public Layer(SpriteComponent parent)

View File

@@ -20,11 +20,13 @@ namespace Robust.Client.Graphics
/// </summary>
[ViewVariables]
public Vector2i Size { get; private set; }
[ViewVariables]
private Dictionary<StateId, State> States = new Dictionary<StateId, State>();
/// <summary>
/// The original path of this RSI or null.
/// </summary>
[ViewVariables]
public ResourcePath? Path { get; }
public State this[StateId key] => States[key];

View File

@@ -1,5 +1,6 @@
using Robust.Shared.GameObjects;
using Robust.Shared.GameObjects.Components.Appearance;
using Robust.Shared.ViewVariables;
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
@@ -8,6 +9,7 @@ namespace Robust.Server.GameObjects
{
public sealed class AppearanceComponent : SharedAppearanceComponent
{
[ViewVariables]
readonly Dictionary<object, object> data = new Dictionary<object, object>();
public override void SetData(string key, object value)

View File

@@ -15,6 +15,7 @@ namespace Robust.Server.GameObjects
public class SpriteComponent : SharedSpriteComponent, ISpriteRenderableComponent
{
const string LayerSerializationCache = "spritelayersrv";
[ViewVariables]
private List<PrototypeLayerData> Layers = new List<PrototypeLayerData>();
private bool _visible;