Toolboxes Update (#985)
@@ -68,6 +68,9 @@ namespace Content.Client
|
||||
"Explosive",
|
||||
"OnUseTimerTrigger",
|
||||
"ToolboxElectricalFill",
|
||||
"ToolboxEmergencyFill",
|
||||
"WarpPoint",
|
||||
"ToolboxGoldFill",
|
||||
"ToolLockerFill",
|
||||
"EmitSoundOnUse",
|
||||
"FootstepModifier",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
using Content.Shared.GameObjects.Components.Power;
|
||||
using Robust.Client.Animations;
|
||||
using Robust.Client.GameObjects;
|
||||
@@ -16,6 +16,7 @@ namespace Content.Client.GameObjects.Components.Power
|
||||
private Animation _buildingAnimation;
|
||||
private Animation _insertingMetalAnimation;
|
||||
private Animation _insertingGlassAnimation;
|
||||
private Animation _insertingGoldAnimation;
|
||||
|
||||
public override void LoadData(YamlMappingNode node)
|
||||
{
|
||||
@@ -24,6 +25,7 @@ namespace Content.Client.GameObjects.Components.Power
|
||||
_buildingAnimation = PopulateAnimation("autolathe_building", "autolathe_building_unlit", 0.5f);
|
||||
_insertingMetalAnimation = PopulateAnimation("autolathe_inserting_metal_plate", "autolathe_inserting_unlit", 0.9f);
|
||||
_insertingGlassAnimation = PopulateAnimation("autolathe_inserting_glass_plate", "autolathe_inserting_unlit", 0.9f);
|
||||
_insertingGoldAnimation = PopulateAnimation("autolathe_inserting_gold_plate", "autolathe_inserting_unlit", 0.9f);
|
||||
}
|
||||
|
||||
private Animation PopulateAnimation(string sprite, string spriteUnlit, float length)
|
||||
@@ -91,6 +93,12 @@ namespace Content.Client.GameObjects.Components.Power
|
||||
animPlayer.Play(_insertingGlassAnimation, AnimationKey);
|
||||
}
|
||||
break;
|
||||
case LatheVisualState.InsertingGold:
|
||||
if (!animPlayer.HasRunningAnimation(AnimationKey))
|
||||
{
|
||||
animPlayer.Play(_insertingGoldAnimation, AnimationKey);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
using Content.Shared.GameObjects.Components.Power;
|
||||
using Robust.Client.Animations;
|
||||
using Robust.Client.GameObjects;
|
||||
@@ -16,6 +16,7 @@ namespace Content.Client.GameObjects.Components.Power
|
||||
private Animation _buildingAnimation;
|
||||
private Animation _insertingMetalAnimation;
|
||||
private Animation _insertingGlassAnimation;
|
||||
private Animation _insertingGoldAnimation;
|
||||
|
||||
public override void LoadData(YamlMappingNode node)
|
||||
{
|
||||
@@ -24,6 +25,7 @@ namespace Content.Client.GameObjects.Components.Power
|
||||
_buildingAnimation = PopulateAnimation("protolathe_building", 0.9f);
|
||||
_insertingMetalAnimation = PopulateAnimation("protolathe_metal", 0.9f);
|
||||
_insertingGlassAnimation = PopulateAnimation("protolathe_glass", 0.9f);
|
||||
_insertingGoldAnimation = PopulateAnimation("protolathe_gold", 0.9f);
|
||||
}
|
||||
|
||||
private Animation PopulateAnimation(string sprite, float length)
|
||||
@@ -87,6 +89,12 @@ namespace Content.Client.GameObjects.Components.Power
|
||||
animPlayer.Play(_insertingGlassAnimation, AnimationKey);
|
||||
}
|
||||
break;
|
||||
case LatheVisualState.InsertingGold:
|
||||
if (!animPlayer.HasRunningAnimation(AnimationKey))
|
||||
{
|
||||
animPlayer.Play(_insertingGoldAnimation, AnimationKey);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
|
||||
@@ -163,6 +163,7 @@ namespace Content.Server.GameObjects.Components.Construction
|
||||
= new Dictionary<StackType, MaterialType>
|
||||
{
|
||||
{ StackType.Cable, MaterialType.Cable },
|
||||
{ StackType.Gold, MaterialType.Gold },
|
||||
{ StackType.Glass, MaterialType.Glass },
|
||||
{ StackType.Metal, MaterialType.Metal }
|
||||
};
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
using Robust.Server.Interfaces.GameObjects;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.Interfaces.GameObjects;
|
||||
using Robust.Shared.Interfaces.Random;
|
||||
using Robust.Shared.IoC;
|
||||
using Robust.Shared.Map;
|
||||
using Robust.Shared.Random;
|
||||
|
||||
namespace Content.Server.GameObjects.Components.Items.Storage.Fill
|
||||
{
|
||||
[RegisterComponent]
|
||||
internal sealed class ToolboxEmergencyFillComponent : Component, IMapInit
|
||||
{
|
||||
public override string Name => "ToolboxEmergencyFill";
|
||||
|
||||
#pragma warning disable 649
|
||||
[Dependency] private readonly IEntityManager _entityManager;
|
||||
#pragma warning restore 649
|
||||
|
||||
void IMapInit.MapInit()
|
||||
{
|
||||
var storage = Owner.GetComponent<IStorageComponent>();
|
||||
var random = IoCManager.Resolve<IRobustRandom>();
|
||||
|
||||
void Spawn(string prototype)
|
||||
{
|
||||
storage.Insert(_entityManager.SpawnEntity(prototype, Owner.Transform.GridPosition));
|
||||
}
|
||||
|
||||
Spawn("BreathMaskClothing");
|
||||
Spawn("BreathMaskClothing");
|
||||
Spawn("FoodChocolateBar");
|
||||
Spawn("FlashlightLantern");
|
||||
Spawn("FlashlightLantern");
|
||||
|
||||
Spawn(random.Prob(0.15f) ? "HarmonicaInstrument" : "FoodChocolateBar");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
using Robust.Server.Interfaces.GameObjects;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.Interfaces.GameObjects;
|
||||
using Robust.Shared.Interfaces.Random;
|
||||
using Robust.Shared.IoC;
|
||||
using Robust.Shared.Map;
|
||||
using Robust.Shared.Random;
|
||||
|
||||
namespace Content.Server.GameObjects.Components.Items.Storage.Fill
|
||||
{
|
||||
[RegisterComponent]
|
||||
internal sealed class ToolboxGoldFillComponent : Component, IMapInit
|
||||
{
|
||||
public override string Name => "ToolboxGoldFill";
|
||||
|
||||
#pragma warning disable 649
|
||||
[Dependency] private readonly IEntityManager _entityManager;
|
||||
#pragma warning restore 649
|
||||
|
||||
void IMapInit.MapInit()
|
||||
{
|
||||
var storage = Owner.GetComponent<IStorageComponent>();
|
||||
var random = IoCManager.Resolve<IRobustRandom>();
|
||||
|
||||
void Spawn(string prototype)
|
||||
{
|
||||
storage.Insert(_entityManager.SpawnEntity(prototype, Owner.Transform.GridPosition));
|
||||
}
|
||||
|
||||
Spawn("GoldStack");
|
||||
Spawn("GoldStack");
|
||||
Spawn("GoldStack");
|
||||
Spawn("GoldStack");
|
||||
Spawn("GoldStack");
|
||||
|
||||
Spawn(random.Prob(0.05f) ? "DrinkGoldenCup" : "GoldStack");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -190,6 +190,9 @@ namespace Content.Server.GameObjects.Components.Research
|
||||
case "Glass":
|
||||
SetAppearance(LatheVisualState.InsertingGlass);
|
||||
break;
|
||||
case "Gold":
|
||||
SetAppearance(LatheVisualState.InsertingGold);
|
||||
break;
|
||||
}
|
||||
|
||||
Timer.Spawn(InsertionTime, async () =>
|
||||
|
||||
@@ -214,6 +214,7 @@ namespace Content.Shared.Construction
|
||||
Metal,
|
||||
Glass,
|
||||
Cable,
|
||||
Gold,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.GameObjects.Components.Power
|
||||
@@ -9,6 +9,7 @@ namespace Content.Shared.GameObjects.Components.Power
|
||||
Idle,
|
||||
Producing,
|
||||
InsertingMetal,
|
||||
InsertingGlass
|
||||
InsertingGlass,
|
||||
InsertingGold
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.Interfaces.Reflection;
|
||||
using Robust.Shared.IoC;
|
||||
@@ -121,6 +121,7 @@ namespace Content.Shared.GameObjects.Components
|
||||
Metal,
|
||||
Glass,
|
||||
Cable,
|
||||
Gold,
|
||||
Ointment,
|
||||
Brutepack,
|
||||
FloorTileSteel,
|
||||
|
||||
@@ -77,3 +77,27 @@
|
||||
components:
|
||||
- type: Stack
|
||||
count: 1
|
||||
|
||||
- type: entity
|
||||
name: Gold Bar
|
||||
id: GoldStack
|
||||
parent: MaterialStack
|
||||
components:
|
||||
- type: Material
|
||||
materials:
|
||||
- key: enum.MaterialKeys.Stack
|
||||
mat: gold
|
||||
- type: Stack
|
||||
stacktype: enum.StackType.Gold
|
||||
- type: Sprite
|
||||
texture: Objects/Materials/goldbar_single.png
|
||||
- type: Icon
|
||||
texture: Objects/Materials/goldbar_single.png
|
||||
|
||||
- type: entity
|
||||
id: GoldStack1
|
||||
name: Gold Bar 1
|
||||
parent: GoldStack
|
||||
components:
|
||||
- type: Stack
|
||||
count: 1
|
||||
|
||||
@@ -18,26 +18,36 @@
|
||||
description: A bright red toolbox, stocked with emergency tools
|
||||
components:
|
||||
- type: Sprite
|
||||
texture: Objects/Tools/toolbox_r.png
|
||||
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_red.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
texture: Objects/Tools/toolbox_r.png
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_red.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_red.rsi
|
||||
|
||||
- type: entity
|
||||
id: ToolboxEmergencyFilled
|
||||
name: Emergency Toolbox
|
||||
parent: ToolboxEmergency
|
||||
suffix: Filled
|
||||
components:
|
||||
- type: ToolboxEmergencyFill
|
||||
|
||||
- type: entity
|
||||
name: Mechanical Toolbox
|
||||
parent: ToolboxBase
|
||||
id: BlueToolboxItem
|
||||
id: ToolboxMechanical
|
||||
description: A blue box, stocked with mechanical tools
|
||||
components:
|
||||
- type: Sprite
|
||||
texture: Objects/Tools/Toolbox_b.png
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_blue.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
texture: Objects/Tools/Toolbox_b.png
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_blue.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_blue.rsi
|
||||
|
||||
- type: entity
|
||||
name: Electrical Toolbox
|
||||
@@ -46,9 +56,13 @@
|
||||
description: A toolbox typically stocked with electrical gear
|
||||
components:
|
||||
- type: Sprite
|
||||
texture: Objects/Tools/Toolbox_y.png
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_yellow.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
texture: Objects/Tools/Toolbox_y.png
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_yellow.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_yellow.rsi
|
||||
|
||||
- type: entity
|
||||
id: ToolboxElectricalFilled
|
||||
@@ -57,3 +71,56 @@
|
||||
parent: ToolboxElectrical
|
||||
components:
|
||||
- type: ToolboxElectricalFill
|
||||
|
||||
- type: entity
|
||||
name: Artistic Toolbox
|
||||
parent: ToolboxBase
|
||||
id: ToolboxArtistic
|
||||
description: A toolbox typically stocked with artistic supplies
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_green.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_green.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_green.rsi
|
||||
|
||||
- type: entity
|
||||
name: Syndicate Toolbox
|
||||
parent: ToolboxBase
|
||||
id: ToolboxSyndicate
|
||||
description: A sinister looking toolbox filled with elite syndicate tools.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_syn.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_syn.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_syn.rsi
|
||||
|
||||
- type: entity
|
||||
name: Golden Toolbox
|
||||
parent: ToolboxBase
|
||||
id: ToolboxGolden
|
||||
description: A solid gold toolbox. A rapper would kill for this.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_gold.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_gold.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_gold.rsi
|
||||
|
||||
- type: entity
|
||||
id: ToolboxGoldFilled
|
||||
name: Golden Toolbox
|
||||
parent: ToolboxGolden
|
||||
suffix: Filled
|
||||
components:
|
||||
- type: ToolboxGoldFill
|
||||
|
||||
@@ -17,3 +17,12 @@
|
||||
electricresistivity: 1.0e+13
|
||||
thermalconductivity: 0.9
|
||||
specificheat: 840
|
||||
|
||||
- type: material
|
||||
id: gold
|
||||
name: Gold
|
||||
icon: Objects/Materials/goldbar_single.png
|
||||
density: 10000
|
||||
electricresistivity: 8.0e-9
|
||||
thermalconductivity: 30
|
||||
specificheat: 1000
|
||||
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
@@ -91,6 +91,23 @@
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "autolathe_inserting_gold_plate",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "autolathe_inserting_unlit",
|
||||
"directions": 1,
|
||||
|
||||
|
Before Width: | Height: | Size: 241 B |
|
Before Width: | Height: | Size: 241 B |
|
After Width: | Height: | Size: 182 B |
|
After Width: | Height: | Size: 297 B |
|
After Width: | Height: | Size: 296 B |
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/tgstation/tgstation",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "icon",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 319 B |
|
After Width: | Height: | Size: 317 B |
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/tgstation/tgstation",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "icon",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
0.2,
|
||||
0.2,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.2,
|
||||
0.2,
|
||||
0.2,
|
||||
0.2,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.2,
|
||||
0.2
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 280 B |
|
After Width: | Height: | Size: 301 B |
|
After Width: | Height: | Size: 300 B |
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/tgstation/tgstation",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "icon",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 182 B |
|
After Width: | Height: | Size: 296 B |
|
After Width: | Height: | Size: 295 B |
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/tgstation/tgstation",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "icon",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 187 B |
|
After Width: | Height: | Size: 325 B |
|
After Width: | Height: | Size: 301 B |
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/tgstation/tgstation",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "icon",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 173 B |
|
After Width: | Height: | Size: 299 B |
|
After Width: | Height: | Size: 298 B |
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/tgstation/tgstation",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
],
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "icon",
|
||||
"directions": 1,
|
||||
"delays": [
|
||||
[
|
||||
1
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 241 B |