GatherableSystem/Component (#8041)

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Chris V
2022-05-12 05:53:31 -07:00
committed by GitHub
parent 0de06cb9c0
commit 6cb2a01723
12 changed files with 244 additions and 192 deletions

View File

@@ -0,0 +1,33 @@
using Content.Shared.EntityList;
using Content.Shared.Whitelist;
namespace Content.Server.Gatherable.Components;
[RegisterComponent]
[Friend(typeof(GatherableSystem))]
public sealed class GatherableComponent : Component
{
/// <summary>
/// Whitelist for specifying the kind of tools can be used on a resource
/// Supports multiple tags.
/// </summary>
[ViewVariables]
[DataField("whitelist", required: true)]
public EntityWhitelist? ToolWhitelist;
/// <summary>
/// YAML example below
/// (Tag1, Tag2, LootTableID1, LootTableID2 are placeholders for example)
/// --------------------
/// useMappedLoot: true
/// whitelist:
/// tags:
/// - Tag1
/// - Tag2
/// mappedLoot:
/// Tag1: LootTableID1
/// Tag2: LootTableID2
/// </summary>
[DataField("loot")]
public Dictionary<string, string>? MappedLoot = new();
}