Arachnid 2: Episode 2 (#19984)

* Shield

* minor sprite changes and buffs

* structure buff

* Crafting stuff

* tweaks

* 88-88

* Better web pocket sprites.

* yeah it's fine now.
This commit is contained in:
PixelTK
2023-11-08 20:18:52 +00:00
committed by GitHub
parent b360391795
commit 52af546267
25 changed files with 375 additions and 30 deletions

View File

@@ -1,4 +1,5 @@
using Content.Shared.Construction.Conditions;
using Content.Shared.Whitelist;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
using Robust.Shared.Utility;
@@ -20,7 +21,7 @@ public sealed partial class ConstructionPrototype : IPrototype
/// Friendly name displayed in the construction GUI.
/// </summary>
[DataField("name")]
public string Name= string.Empty;
public string Name = string.Empty;
/// <summary>
/// "Useful" description displayed in the construction GUI.
@@ -31,7 +32,7 @@ public sealed partial class ConstructionPrototype : IPrototype
/// <summary>
/// The <see cref="ConstructionGraphPrototype"/> this construction will be using.
/// </summary>
[DataField("graph", customTypeSerializer:typeof(PrototypeIdSerializer<ConstructionGraphPrototype>), required: true)]
[DataField("graph", customTypeSerializer: typeof(PrototypeIdSerializer<ConstructionGraphPrototype>), required: true)]
public string Graph = string.Empty;
/// <summary>
@@ -64,6 +65,13 @@ public sealed partial class ConstructionPrototype : IPrototype
[DataField("canBuildInImpassable")]
public bool CanBuildInImpassable { get; private set; }
/// <summary>
/// If not null, then this is used to check if the entity trying to construct this is whitelisted.
/// If they're not whitelisted, hide the item.
/// </summary>
[DataField("entityWhitelist")]
public EntityWhitelist? EntityWhitelist = null;
[DataField("category")] public string Category { get; private set; } = "";
[DataField("objectType")] public ConstructionType Type { get; private set; } = ConstructionType.Structure;
@@ -84,11 +92,11 @@ public sealed partial class ConstructionPrototype : IPrototype
/// <summary>
/// Construction to replace this construction with when the current one is 'flipped'
/// </summary>
[DataField("mirror", customTypeSerializer:typeof(PrototypeIdSerializer<ConstructionPrototype>))]
[DataField("mirror", customTypeSerializer: typeof(PrototypeIdSerializer<ConstructionPrototype>))]
public string? Mirror;
public IReadOnlyList<IConstructionCondition> Conditions => _conditions;
public IReadOnlyList<SpriteSpecifier> Layers => _layers ?? new List<SpriteSpecifier>{Icon};
public IReadOnlyList<SpriteSpecifier> Layers => _layers ?? new List<SpriteSpecifier> { Icon };
}
public enum ConstructionType