Merge pull request #6132 from DeltaV-Station/nanite-applicator
Examine Damage on Structure/Machine, Nanite Applicators
|
|
@ -29,11 +29,22 @@ public sealed class WelderStatusControl : PollingItemStatusControl<WelderStatusC
|
||||||
protected override Data PollData()
|
protected override Data PollData()
|
||||||
{
|
{
|
||||||
var (fuel, capacity) = _toolSystem.GetWelderFuelAndCapacity(_parent, _parent.Comp);
|
var (fuel, capacity) = _toolSystem.GetWelderFuelAndCapacity(_parent, _parent.Comp);
|
||||||
return new Data(fuel, capacity, _parent.Comp.Enabled);
|
return new Data(fuel, capacity, _parent.Comp.Enabled, _parent.Comp.OnlyDisplayFuel); // Monolith - Nanite Applicators
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void Update(in Data data)
|
protected override void Update(in Data data)
|
||||||
{
|
{
|
||||||
|
// BEGIN Monolith - Nanite applicator
|
||||||
|
if (data.OnlyDisplayFuel)
|
||||||
|
{
|
||||||
|
_label.SetMarkup(Loc.GetString("welder-component-on-examine-less-detailed-message",
|
||||||
|
("colorName", data.Fuel < data.FuelCapacity / 4f ? "darkorange" : "orange"),
|
||||||
|
("fuelLeft", data.Fuel),
|
||||||
|
("fuelCapacity", data.FuelCapacity)));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// END Monolith
|
||||||
|
|
||||||
_label.SetMarkup(Loc.GetString("welder-component-on-examine-detailed-message",
|
_label.SetMarkup(Loc.GetString("welder-component-on-examine-detailed-message",
|
||||||
("colorName", data.Fuel < data.FuelCapacity / 4f ? "darkorange" : "orange"),
|
("colorName", data.Fuel < data.FuelCapacity / 4f ? "darkorange" : "orange"),
|
||||||
("fuelLeft", data.Fuel),
|
("fuelLeft", data.Fuel),
|
||||||
|
|
@ -41,5 +52,5 @@ public sealed class WelderStatusControl : PollingItemStatusControl<WelderStatusC
|
||||||
("status", Loc.GetString(data.Lit ? "welder-component-on-examine-welder-lit-message" : "welder-component-on-examine-welder-not-lit-message"))));
|
("status", Loc.GetString(data.Lit ? "welder-component-on-examine-welder-lit-message" : "welder-component-on-examine-welder-not-lit-message"))));
|
||||||
}
|
}
|
||||||
|
|
||||||
public record struct Data(FixedPoint2 Fuel, FixedPoint2 FuelCapacity, bool Lit);
|
public record struct Data(FixedPoint2 Fuel, FixedPoint2 FuelCapacity, bool Lit, bool OnlyDisplayFuel = false); // Monolith - Nanite Applicators
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ public abstract partial class InteractionTest
|
||||||
protected const string Wrench = "Wrench";
|
protected const string Wrench = "Wrench";
|
||||||
protected const string Screw = "Screwdriver";
|
protected const string Screw = "Screwdriver";
|
||||||
protected const string Weld = "WelderExperimental";
|
protected const string Weld = "WelderExperimental";
|
||||||
|
protected const string Applicator = "NaniteApplicatorSyndicate"; // DeltaV
|
||||||
protected const string Pry = "Crowbar";
|
protected const string Pry = "Crowbar";
|
||||||
protected const string Cut = "Wirecutter";
|
protected const string Cut = "Wirecutter";
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -186,7 +186,7 @@ public sealed class VendingInteractionTest : InteractionTest
|
||||||
Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "Opened BUI of broken vending machine.");
|
Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "Opened BUI of broken vending machine.");
|
||||||
|
|
||||||
// Repair the vending machine
|
// Repair the vending machine
|
||||||
await InteractUsing(Weld);
|
await InteractUsing(Applicator); // DeltaV
|
||||||
|
|
||||||
// Make sure the BUI can open now that the machine has been repaired
|
// Make sure the BUI can open now that the machine has been repaired
|
||||||
await Activate();
|
await Activate();
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ public sealed partial class RepairableComponent : Component
|
||||||
/// Tool quality necessary to repair this device.
|
/// Tool quality necessary to repair this device.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataField, AutoNetworkedField]
|
[DataField, AutoNetworkedField]
|
||||||
public ProtoId<ToolQualityPrototype> QualityNeeded = "Welding";
|
public ProtoId<ToolQualityPrototype> QualityNeeded = "Applicating"; // Monolith - Nanite Applicator
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The base tool use delay (seconds). This will be modified by the tool's quality
|
/// The base tool use delay (seconds). This will be modified by the tool's quality
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ using Content.Shared.Database;
|
||||||
using Content.Shared.DoAfter;
|
using Content.Shared.DoAfter;
|
||||||
using Content.Shared.Interaction;
|
using Content.Shared.Interaction;
|
||||||
using Content.Shared.Popups;
|
using Content.Shared.Popups;
|
||||||
|
using Content.Shared.Tools.Components; // Monolith - Nanite Applicators
|
||||||
using Content.Shared.Tools.Systems;
|
using Content.Shared.Tools.Systems;
|
||||||
using Robust.Shared.Serialization;
|
using Robust.Shared.Serialization;
|
||||||
|
|
||||||
|
|
@ -115,8 +116,26 @@ public sealed partial class RepairableSystem : EntitySystem
|
||||||
delay *= ent.Comp.SelfRepairPenalty;
|
delay *= ent.Comp.SelfRepairPenalty;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// BEGIN DeltaV - Scale Repair Time with Damage
|
||||||
|
// If its a self-repair, ignore it since they've already been penalized.
|
||||||
|
if (args.User != args.Target && TryComp<DamageableComponent>(args.Target, out var damageComp))
|
||||||
|
{
|
||||||
|
// TODO: Scale with the destructible threshold if DestructibleSystem ever gets more prediction added.
|
||||||
|
// For now, just scale up the delay per 100 damage, or reduce the delay if its less.
|
||||||
|
var totalDamage = _damageableSystem.GetPositiveDamage((args.Target, damageComp)).GetTotal();
|
||||||
|
delay *= Math.Clamp((float)totalDamage / 100.0f, 0.5f, 3.0f);
|
||||||
|
}
|
||||||
|
// END DeltaV
|
||||||
|
|
||||||
|
// BEGIN Monolith - Nanite Applicators
|
||||||
|
if (!TryComp<ToolComponent>(args.Used, out var tool))
|
||||||
|
return;
|
||||||
|
// END Monolith
|
||||||
|
|
||||||
// Run the repairing doafter
|
// Run the repairing doafter
|
||||||
args.Handled = _toolSystem.UseTool(args.Used, args.User, ent.Owner, delay, ent.Comp.QualityNeeded, new RepairDoAfterEvent(), ent.Comp.FuelCost);
|
args.Handled = _toolSystem.UseTool(args.Used, args.User, ent.Owner, delay, ent.Comp.QualityNeeded, new RepairDoAfterEvent(), ent.Comp.FuelCost);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -73,4 +73,10 @@ public sealed partial class WelderComponent : Component
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataField]
|
[DataField]
|
||||||
public bool TankSafe;
|
public bool TankSafe;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Monolith - This variable gets rid of the status display.
|
||||||
|
/// </summary>
|
||||||
|
[DataField]
|
||||||
|
public bool OnlyDisplayFuel = false;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,19 +84,33 @@ public abstract partial class SharedToolSystem
|
||||||
{
|
{
|
||||||
using (args.PushGroup(nameof(WelderComponent)))
|
using (args.PushGroup(nameof(WelderComponent)))
|
||||||
{
|
{
|
||||||
if (ItemToggle.IsActivated(entity.Owner))
|
// BEGIN Monolith - Nanite Applicators
|
||||||
|
if (!entity.Comp.OnlyDisplayFuel)
|
||||||
{
|
{
|
||||||
args.PushMarkup(Loc.GetString("welder-component-on-examine-welder-lit-message"));
|
var lit = Loc.GetString("welder-component-on-examine-welder-not-lit-message");
|
||||||
}
|
|
||||||
else
|
if (ItemToggle.IsActivated(entity.Owner))
|
||||||
{
|
lit = Loc.GetString("welder-component-on-examine-welder-lit-message");
|
||||||
args.PushMarkup(Loc.GetString("welder-component-on-examine-welder-not-lit-message"));
|
|
||||||
|
args.PushMarkup(lit);
|
||||||
}
|
}
|
||||||
|
// END Monolith
|
||||||
|
|
||||||
if (args.IsInDetailsRange)
|
if (args.IsInDetailsRange)
|
||||||
{
|
{
|
||||||
var (fuel, capacity) = GetWelderFuelAndCapacity(entity.Owner, entity.Comp);
|
var (fuel, capacity) = GetWelderFuelAndCapacity(entity.Owner, entity.Comp);
|
||||||
|
|
||||||
|
// BEGIN Monolith - Nanite Applicator
|
||||||
|
if (entity.Comp.OnlyDisplayFuel)
|
||||||
|
{
|
||||||
|
args.PushMarkup(Loc.GetString("welder-component-on-examine-less-detailed-message",
|
||||||
|
("colorName", fuel < capacity / FixedPoint2.New(4f) ? "darkorange" : "orange"),
|
||||||
|
("fuelLeft", fuel),
|
||||||
|
("fuelCapacity", capacity)));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// END Monolith
|
||||||
|
|
||||||
args.PushMarkup(Loc.GetString("welder-component-on-examine-detailed-message",
|
args.PushMarkup(Loc.GetString("welder-component-on-examine-detailed-message",
|
||||||
("colorName", fuel < capacity / FixedPoint2.New(4f) ? "darkorange" : "orange"),
|
("colorName", fuel < capacity / FixedPoint2.New(4f) ? "darkorange" : "orange"),
|
||||||
("fuelLeft", fuel),
|
("fuelLeft", fuel),
|
||||||
|
|
@ -120,6 +134,19 @@ public abstract partial class SharedToolSystem
|
||||||
&& _whitelist.IsWhitelistPass(tank.FuelWhitelist, entity.Owner) //imp
|
&& _whitelist.IsWhitelistPass(tank.FuelWhitelist, entity.Owner) //imp
|
||||||
&& SolutionContainerSystem.TryGetSolution(entity.Owner, entity.Comp.FuelSolutionName, out var solutionComp, out var welderSolution))
|
&& SolutionContainerSystem.TryGetSolution(entity.Owner, entity.Comp.FuelSolutionName, out var solutionComp, out var welderSolution))
|
||||||
{
|
{
|
||||||
|
// BEGIN Monolith - Nanite Applicators
|
||||||
|
foreach (var reagent in targetSolution.Contents)
|
||||||
|
{
|
||||||
|
if (reagent.Reagent.Prototype != entity.Comp.FuelReagent.Id)
|
||||||
|
{
|
||||||
|
_popup.PopupClient(
|
||||||
|
Loc.GetString("welder-component-incompatible-fuel", ("owner", args.Target)), entity, args.User);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// END Monolith
|
||||||
|
|
||||||
var trans = FixedPoint2.Min(welderSolution.AvailableVolume, targetSolution.Volume);
|
var trans = FixedPoint2.Min(welderSolution.AvailableVolume, targetSolution.Volume);
|
||||||
if (trans > 0)
|
if (trans > 0)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
# Base structure damage examine values
|
||||||
|
comp-structure-damaged-1 = It looks fully intact.
|
||||||
|
comp-structure-damaged-2 = It has a few scratches.
|
||||||
|
comp-structure-damaged-3 = It has a few large dents.
|
||||||
|
comp-structure-damaged-4 = [color=yellow]It has several big cracks running along its surface.[/color]
|
||||||
|
comp-structure-damaged-5 = [color=orange]It has deep cracks across multiple layers.[/color]
|
||||||
|
comp-structure-damaged-6 = [color=red]It's extremely damaged and on the verge of falling apart.[/color]
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
reagent-name-nanite-fuel = Nanites
|
||||||
|
reagent-desc-nanite-fuel = Nanobots used for repairing.
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
# MARK: Utility
|
||||||
|
|
||||||
|
uplink-syndicate-applicator-name = Advanced Nanite Applicator
|
||||||
|
uplink-syndicate-applicator-desc = Advanced nanite applicator with a heavily upgraded nanite capacity capable of self-nanite generation.
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
welder-component-on-examine-less-detailed-message = Fuel: [color={$colorName}]{$fuelLeft}/{$fuelCapacity}[/color]
|
||||||
|
welder-component-incompatible-fuel = { $owner } contains incorrect or contaminated fuel!
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
tool-quality-nanite-applicator-name = Nanite Applicator
|
||||||
|
tool-quality-applicating-name = Nanite Applicating
|
||||||
|
|
@ -46,6 +46,7 @@
|
||||||
- id: HolofanProjector
|
- id: HolofanProjector
|
||||||
- id: GasAnalyzer
|
- id: GasAnalyzer
|
||||||
- id: trayScanner
|
- id: trayScanner
|
||||||
|
- id: NaniteApplicatorExperimental # DeltaV - Nanite Applicators
|
||||||
|
|
||||||
- type: entityTable
|
- type: entityTable
|
||||||
id: BeltSecurityEntityTable
|
id: BeltSecurityEntityTable
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,9 @@
|
||||||
CrowbarYellow: 8
|
CrowbarYellow: 8
|
||||||
Multitool: 4
|
Multitool: 4
|
||||||
NetworkConfigurator: 5
|
NetworkConfigurator: 5
|
||||||
|
NaniteApplicator: 4 # Monolith - Nanite Applicator
|
||||||
|
JerryCanWeldingFuel: 2 # New Frontier - Jerry Cans
|
||||||
|
JerryCanNaniteFuel: 2 # Monolith - Nanite Applicator
|
||||||
PowerCellMedium: 5
|
PowerCellMedium: 5
|
||||||
ClothingHandsGlovesColorYellow: 6
|
ClothingHandsGlovesColorYellow: 6
|
||||||
MetalFoamGrenade: 3 # DeltaV - added
|
MetalFoamGrenade: 3 # DeltaV - added
|
||||||
|
|
|
||||||
|
|
@ -118,6 +118,7 @@
|
||||||
damageValue: -10 # 10 seconds to repair from crit
|
damageValue: -10 # 10 seconds to repair from crit
|
||||||
doAfterDelay: 1
|
doAfterDelay: 1
|
||||||
fuelCost: 0.5
|
fuelCost: 0.5
|
||||||
|
qualityNeeded: Welding # DeltaV - for now
|
||||||
allowSelfRepair: true # DeltaV - was false
|
allowSelfRepair: true # DeltaV - was false
|
||||||
- type: BorgChassis
|
- type: BorgChassis
|
||||||
- type: LockingWhitelist
|
- type: LockingWhitelist
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@
|
||||||
damageValue: -15 # 8 seconds to repair from dead
|
damageValue: -15 # 8 seconds to repair from dead
|
||||||
doAfterDelay: 1
|
doAfterDelay: 1
|
||||||
fuelCost: 0.5
|
fuelCost: 0.5
|
||||||
|
qualityNeeded: Welding # DeltaV - for now
|
||||||
- type: Pullable
|
- type: Pullable
|
||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,7 @@
|
||||||
temperature: 373.15
|
temperature: 373.15
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
doAfterDelay: 30 # you can heal the mothership core, but it takes a while
|
doAfterDelay: 30 # you can heal the mothership core, but it takes a while
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: DamagedSiliconAccent
|
- type: DamagedSiliconAccent
|
||||||
enableChargeCorruption: false
|
enableChargeCorruption: false
|
||||||
# TODO: make it explosive again once until issue https://github.com/space-wizards/space-station-14/issues/40606 is fixed
|
# TODO: make it explosive again once until issue https://github.com/space-wizards/space-station-14/issues/40606 is fixed
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@
|
||||||
fuelCost: 10 # 1/2 of a Welder for a full repair
|
fuelCost: 10 # 1/2 of a Welder for a full repair
|
||||||
doAfterDelay: 5
|
doAfterDelay: 5
|
||||||
allowSelfRepair: false
|
allowSelfRepair: false
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
#Security Shields
|
#Security Shields
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
|
|
|
||||||
|
|
@ -583,6 +583,7 @@
|
||||||
- item: Screwdriver
|
- item: Screwdriver
|
||||||
- item: Wirecutter
|
- item: Wirecutter
|
||||||
- item: WelderIndustrial
|
- item: WelderIndustrial
|
||||||
|
- item: NaniteApplicator # Monolith
|
||||||
- item: Multitool
|
- item: Multitool
|
||||||
- type: BorgModuleIcon
|
- type: BorgModuleIcon
|
||||||
icon: { sprite: Interface/Actions/actions_borg.rsi, state: tool-module }
|
icon: { sprite: Interface/Actions/actions_borg.rsi, state: tool-module }
|
||||||
|
|
@ -711,6 +712,7 @@
|
||||||
- item: PowerDrill
|
- item: PowerDrill
|
||||||
- item: WelderExperimental
|
- item: WelderExperimental
|
||||||
- item: Multitool
|
- item: Multitool
|
||||||
|
- item: NaniteApplicatorExperimental # Monolith
|
||||||
- item: RemoteSignallerAdvanced
|
- item: RemoteSignallerAdvanced
|
||||||
- item: NFWeaponHoloflareGun # DeltaV
|
- item: NFWeaponHoloflareGun # DeltaV
|
||||||
- type: BorgModuleIcon
|
- type: BorgModuleIcon
|
||||||
|
|
|
||||||
|
|
@ -162,8 +162,8 @@
|
||||||
Welder:
|
Welder:
|
||||||
reagents:
|
reagents:
|
||||||
- ReagentId: WeldingFuel
|
- ReagentId: WeldingFuel
|
||||||
Quantity: 1000
|
Quantity: 200 # DeltaV - Experimental Welder Nerf
|
||||||
maxVol: 1000
|
maxVol: 200 # DeltaV - Experimental Welder Nerf
|
||||||
- type: PointLight
|
- type: PointLight
|
||||||
enabled: false
|
enabled: false
|
||||||
radius: 1.5
|
radius: 1.5
|
||||||
|
|
@ -174,6 +174,7 @@
|
||||||
reagents:
|
reagents:
|
||||||
- ReagentId: WeldingFuel
|
- ReagentId: WeldingFuel
|
||||||
Quantity: 1
|
Quantity: 1
|
||||||
|
duration: 2 # DeltaV - Experimental Welder Nerf - Loses fuel while active
|
||||||
- type: RequiresEyeProtection
|
- type: RequiresEyeProtection
|
||||||
statusEffectTime: 5 # less harmful; sunglasses can block it
|
statusEffectTime: 5 # less harmful; sunglasses can block it
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@
|
||||||
graph: WeaponTurretSyndicateDisposable
|
graph: WeaponTurretSyndicateDisposable
|
||||||
node: disposableTurret
|
node: disposableTurret
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
qualityNeeded: "Anchoring"
|
qualityNeeded: Anchoring
|
||||||
doAfterDelay: 3
|
doAfterDelay: 3
|
||||||
- type: TriggerOnEmptyGunshot
|
- type: TriggerOnEmptyGunshot
|
||||||
- type: ExplodeOnTrigger
|
- type: ExplodeOnTrigger
|
||||||
|
|
|
||||||
|
|
@ -84,6 +84,7 @@
|
||||||
- type: ExaminableDamage
|
- type: ExaminableDamage
|
||||||
messages: WindowMessages
|
messages: WindowMessages
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: DamageVisuals
|
- type: DamageVisuals
|
||||||
thresholds: [8, 16, 25]
|
thresholds: [8, 16, 25]
|
||||||
damageDivisor: 3.333
|
damageDivisor: 3.333
|
||||||
|
|
@ -177,6 +178,7 @@
|
||||||
- type: ExaminableDamage
|
- type: ExaminableDamage
|
||||||
messages: WindowMessages
|
messages: WindowMessages
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
- type: DamageVisuals
|
- type: DamageVisuals
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 15
|
fuelCost: 15
|
||||||
doAfterDelay: 5
|
doAfterDelay: 5
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: Lock
|
- type: Lock
|
||||||
- type: LockVisuals
|
- type: LockVisuals
|
||||||
- type: DamageVisuals
|
- type: DamageVisuals
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 10
|
fuelCost: 10
|
||||||
doAfterDelay: 2
|
doAfterDelay: 2
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: RGlass
|
damageModifierSet: RGlass
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 15
|
fuelCost: 15
|
||||||
doAfterDelay: 3
|
doAfterDelay: 3
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: RGlass
|
damageModifierSet: RGlass
|
||||||
|
|
|
||||||
|
|
@ -120,6 +120,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 15
|
fuelCost: 15
|
||||||
doAfterDelay: 3
|
doAfterDelay: 3
|
||||||
|
qualityNeeded: Welding
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: RGlass
|
damageModifierSet: RGlass
|
||||||
|
|
@ -215,6 +216,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 15
|
fuelCost: 15
|
||||||
doAfterDelay: 3
|
doAfterDelay: 3
|
||||||
|
qualityNeeded: Welding
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: RGlass
|
damageModifierSet: RGlass
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 10
|
fuelCost: 10
|
||||||
doAfterDelay: 2
|
doAfterDelay: 2
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: RGlass
|
damageModifierSet: RGlass
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
fuelCost: 15
|
fuelCost: 15
|
||||||
doAfterDelay: 3
|
doAfterDelay: 3
|
||||||
|
qualityNeeded: Welding # DeltaV
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: RGlass
|
damageModifierSet: RGlass
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,8 @@
|
||||||
- type: ExaminableDamage
|
- type: ExaminableDamage
|
||||||
messages: WindowMessages
|
messages: WindowMessages
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
|
doAfterDelay: 2 # DeltaV
|
||||||
|
qualityNeeded: Welding
|
||||||
- type: RCDDeconstructable
|
- type: RCDDeconstructable
|
||||||
cost: 6
|
cost: 6
|
||||||
delay: 4
|
delay: 4
|
||||||
|
|
@ -171,6 +173,8 @@
|
||||||
layer:
|
layer:
|
||||||
- GlassLayer
|
- GlassLayer
|
||||||
- type: Repairable
|
- type: Repairable
|
||||||
|
doAfterDelay: 2 # DeltaV
|
||||||
|
qualityNeeded: Welding
|
||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: StructuralInorganic
|
damageContainer: StructuralInorganic
|
||||||
damageModifierSet: Glass
|
damageModifierSet: Glass
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,11 @@
|
||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Structure
|
- Structure
|
||||||
|
- type: ExaminableDamage # DeltaV
|
||||||
|
messages: BaseStructureMessages
|
||||||
|
- type: Repairable # Monolith - Nanite Applicator
|
||||||
|
doAfterDelay: 3
|
||||||
|
qualityNeeded: Applicating
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
# This means that it's not anchored on spawn.
|
# This means that it's not anchored on spawn.
|
||||||
|
|
|
||||||
|
|
@ -63,6 +63,7 @@
|
||||||
- WelderExperimental
|
- WelderExperimental
|
||||||
- JawsOfLife
|
- JawsOfLife
|
||||||
- TrayGoggles # DeltaV
|
- TrayGoggles # DeltaV
|
||||||
|
- ExperimentalNaniteApplicator # Monolith
|
||||||
#- Fulton # DeltaV - moved to MiningDeltaV
|
#- Fulton # DeltaV - moved to MiningDeltaV
|
||||||
#- FultonBeacon # DeltaV - moved to MiningDeltaV
|
#- FultonBeacon # DeltaV - moved to MiningDeltaV
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -184,6 +184,7 @@
|
||||||
- JawsOfLife
|
- JawsOfLife
|
||||||
- BorgModuleAdvancedTool
|
- BorgModuleAdvancedTool
|
||||||
- TrayGoggles # DeltaV
|
- TrayGoggles # DeltaV
|
||||||
|
- ExperimentalNaniteApplicator # Monolith
|
||||||
#- Fulton # DeltaV - seperate tech Aerial Extraction
|
#- Fulton # DeltaV - seperate tech Aerial Extraction
|
||||||
#- FultonBeacon # DeltaV - seperate tech Aerial Extraction
|
#- FultonBeacon # DeltaV - seperate tech Aerial Extraction
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
- type: localizedDataset
|
||||||
|
id: BaseStructureMessages
|
||||||
|
values:
|
||||||
|
prefix: comp-structure-damaged-
|
||||||
|
count: 6
|
||||||
|
|
@ -13,6 +13,7 @@
|
||||||
- BorgModulesStatic
|
- BorgModulesStatic
|
||||||
- BorgLimbsStatic
|
- BorgLimbsStatic
|
||||||
- BorgModulesResearched
|
- BorgModulesResearched
|
||||||
|
- RoboticsEmagStatic
|
||||||
- type: Machine
|
- type: Machine
|
||||||
board: SyndieExosuitFabricatorMachineCircuitboard
|
board: SyndieExosuitFabricatorMachineCircuitboard
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
recipes:
|
recipes:
|
||||||
- HolotapeProjector
|
- HolotapeProjector
|
||||||
- SheetPlasteel1Engineering
|
- SheetPlasteel1Engineering
|
||||||
|
- NaniteApplicator
|
||||||
|
|
||||||
## Dynamic
|
## Dynamic
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,5 @@
|
||||||
## Static
|
## Static
|
||||||
|
|
||||||
- type: latheRecipePack
|
|
||||||
id: RoboticsEmagStatic
|
|
||||||
recipes:
|
|
||||||
- IdChipSyndie
|
|
||||||
|
|
||||||
- type: latheRecipePack
|
- type: latheRecipePack
|
||||||
id: BorgModulesSyndicateStatic
|
id: BorgModulesSyndicateStatic
|
||||||
recipes:
|
recipes:
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
- type: latheRecipePack
|
||||||
|
id: RoboticsEmagStatic
|
||||||
|
recipes:
|
||||||
|
- IdChipSyndie
|
||||||
|
- NaniteApplicatorSyndicate
|
||||||
|
|
@ -130,7 +130,6 @@
|
||||||
- CableApcStack
|
- CableApcStack
|
||||||
- SheetPlasteel
|
- SheetPlasteel
|
||||||
- SheetSteel
|
- SheetSteel
|
||||||
belt:
|
|
||||||
- RCDRecharging
|
- RCDRecharging
|
||||||
|
|
||||||
- type: startingGear
|
- type: startingGear
|
||||||
|
|
@ -164,7 +163,6 @@
|
||||||
- SheetPlasteel
|
- SheetPlasteel
|
||||||
- SheetSteel
|
- SheetSteel
|
||||||
- WeaponAdvancedLaser
|
- WeaponAdvancedLaser
|
||||||
belt:
|
|
||||||
- RCDCombat
|
- RCDCombat
|
||||||
|
|
||||||
# Security
|
# Security
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
- type: listing
|
||||||
|
id: UplinkSyndicateApplicator
|
||||||
|
name: uplink-syndicate-applicator-name
|
||||||
|
description: uplink-syndicate-applicator-desc
|
||||||
|
productEntity: NaniteApplicatorSyndicate
|
||||||
|
cost:
|
||||||
|
Telecrystal: 2
|
||||||
|
categories:
|
||||||
|
- UplinkDisruption
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
- type: entity
|
||||||
|
parent: JerryCan
|
||||||
|
suffix: nanite fuel
|
||||||
|
id: JerryCanNaniteFuel
|
||||||
|
components:
|
||||||
|
- type: Label
|
||||||
|
currentLabel: reagent-name-nanite-fuel
|
||||||
|
- type: SolutionContainerManager
|
||||||
|
solutions:
|
||||||
|
tank:
|
||||||
|
reagents:
|
||||||
|
- ReagentId: NaniteFuel
|
||||||
|
Quantity: 200
|
||||||
|
|
@ -0,0 +1,91 @@
|
||||||
|
- type: entity
|
||||||
|
name: nanite applicator
|
||||||
|
parent: BaseItem
|
||||||
|
id: NaniteApplicator
|
||||||
|
description: "Advanced tool that uses nanotechnology to repair structures."
|
||||||
|
components:
|
||||||
|
- type: EmitSoundOnLand
|
||||||
|
sound:
|
||||||
|
path: /Audio/Items/welder_drop.ogg
|
||||||
|
- type: Sprite
|
||||||
|
sprite: _Mono/Objects/Tools/nanite_applicator.rsi
|
||||||
|
layers:
|
||||||
|
- state: icon
|
||||||
|
- type: MeleeWeapon
|
||||||
|
wideAnimationRotation: 135
|
||||||
|
attackRate: 1.5
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Blunt: 5
|
||||||
|
soundHit:
|
||||||
|
collection: MetalThud
|
||||||
|
- type: Tool
|
||||||
|
qualities:
|
||||||
|
- Applicating
|
||||||
|
useSound:
|
||||||
|
collection: Welder
|
||||||
|
- type: Welder
|
||||||
|
fuelReagent: NaniteFuel
|
||||||
|
onlyDisplayFuel: true
|
||||||
|
- type: RefillableSolution
|
||||||
|
solution: Welder
|
||||||
|
- type: SolutionContainerManager
|
||||||
|
solutions:
|
||||||
|
Welder:
|
||||||
|
reagents:
|
||||||
|
- ReagentId: NaniteFuel
|
||||||
|
Quantity: 50
|
||||||
|
maxVol: 50
|
||||||
|
- type: PhysicalComposition
|
||||||
|
materialComposition:
|
||||||
|
Steel: 100
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 100
|
||||||
|
- type: GuideHelp
|
||||||
|
guides:
|
||||||
|
- Construction
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
name: experimental nanite applicator
|
||||||
|
parent: NaniteApplicator
|
||||||
|
id: NaniteApplicatorExperimental
|
||||||
|
description: "An experimental nanite applicator with a heavily upgraded nanite capacity capable of self-nanite generation."
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: _Mono/Objects/Tools/nanite_applicator_experimental.rsi
|
||||||
|
layers:
|
||||||
|
- state: icon
|
||||||
|
- type: SolutionRegeneration
|
||||||
|
solution: Welder
|
||||||
|
generated:
|
||||||
|
reagents:
|
||||||
|
- ReagentId: NaniteFuel
|
||||||
|
Quantity: 1
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 200
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
name: advanced nanite applicator
|
||||||
|
parent: NaniteApplicatorExperimental
|
||||||
|
id: NaniteApplicatorSyndicate
|
||||||
|
description: "Advanced nanite applicator with a heavily upgraded nanite capacity capable of self-nanite generation."
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: _Mono/Objects/Tools/nanite_applicator_syndicate.rsi
|
||||||
|
layers:
|
||||||
|
- state: icon
|
||||||
|
- type: SolutionContainerManager
|
||||||
|
solutions:
|
||||||
|
Welder:
|
||||||
|
reagents:
|
||||||
|
- ReagentId: NaniteFuel
|
||||||
|
Quantity: 200
|
||||||
|
maxVol: 200
|
||||||
|
- type: SolutionRegeneration
|
||||||
|
solution: Welder
|
||||||
|
generated:
|
||||||
|
reagents:
|
||||||
|
- ReagentId: NaniteFuel
|
||||||
|
Quantity: 3
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 400
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
- type: reagent
|
||||||
|
id: NaniteFuel
|
||||||
|
name: reagent-name-nanite-fuel
|
||||||
|
desc: reagent-desc-nanite-fuel
|
||||||
|
physicalDesc: reagent-physical-desc-oily
|
||||||
|
slipData:
|
||||||
|
requiredSlipSpeed: 3.5
|
||||||
|
flavor: bitter
|
||||||
|
flavorMinimum: 0.01
|
||||||
|
color: "#5775f4"
|
||||||
|
recognizable: true
|
||||||
|
boilingPoint: 8000.6
|
||||||
|
meltingPoint: 659.7
|
||||||
|
friction: 0.4
|
||||||
|
metabolisms:
|
||||||
|
Bloodstream:
|
||||||
|
effects:
|
||||||
|
- !type:HealthChange
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Poison: 0.4
|
||||||
|
Slash: 0.3
|
||||||
|
Piercing: 0.3
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
- type: latheRecipe
|
||||||
|
parent: BaseToolRecipe
|
||||||
|
id: NaniteApplicator
|
||||||
|
result: NaniteApplicator
|
||||||
|
materials:
|
||||||
|
Steel: 400
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
parent: BaseToolRecipe
|
||||||
|
id: ExperimentalNaniteApplicator
|
||||||
|
result: NaniteApplicatorExperimental
|
||||||
|
materials:
|
||||||
|
Steel: 800
|
||||||
|
Plasma: 200
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
parent: BaseToolRecipe
|
||||||
|
id: NaniteApplicatorSyndicate
|
||||||
|
result: NaniteApplicatorSyndicate
|
||||||
|
materials:
|
||||||
|
Steel: 800
|
||||||
|
Plasma: 200
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
- type: tool
|
||||||
|
id: Applicating
|
||||||
|
name: tool-quality-applicating-name
|
||||||
|
toolName: tool-quality-nanite-applicator-name
|
||||||
|
spawn: NaniteApplicator
|
||||||
|
icon: { sprite: _Mono/Objects/Tools/nanite_applicator.rsi, state: icon }
|
||||||
|
|
@ -0,0 +1,103 @@
|
||||||
|
- type: entity
|
||||||
|
name: jerry can
|
||||||
|
parent: BaseItem
|
||||||
|
id: JerryCan
|
||||||
|
suffix: empty
|
||||||
|
description: A plastic jerry can with a spill-proof nozzle.
|
||||||
|
components:
|
||||||
|
- type: SolutionContainerManager
|
||||||
|
solutions:
|
||||||
|
tank:
|
||||||
|
maxVol: 200
|
||||||
|
- type: Sprite
|
||||||
|
sprite: _NF/Objects/Specific/Chemistry/jerrycan.rsi
|
||||||
|
layers:
|
||||||
|
- state: jerrycan
|
||||||
|
- state: jerrycan1
|
||||||
|
map: [ "enum.SolutionContainerLayers.Fill" ]
|
||||||
|
visible: false
|
||||||
|
- type: Item
|
||||||
|
size: Normal
|
||||||
|
sprite: _NF/Objects/Specific/Chemistry/jerrycan.rsi
|
||||||
|
- type: MixableSolution
|
||||||
|
solution: tank
|
||||||
|
- type: RefillableSolution
|
||||||
|
solution: tank
|
||||||
|
- type: DrainableSolution
|
||||||
|
solution: tank
|
||||||
|
- type: ExaminableSolution
|
||||||
|
solution: tank
|
||||||
|
- type: DrawableSolution
|
||||||
|
solution: tank
|
||||||
|
- type: InjectableSolution
|
||||||
|
solution: tank
|
||||||
|
- type: SolutionTransfer
|
||||||
|
canChangeTransferAmount: true
|
||||||
|
- type: SolutionItemStatus
|
||||||
|
solution: tank
|
||||||
|
- type: ReagentTank
|
||||||
|
tankType: Fuel
|
||||||
|
- type: UserInterface
|
||||||
|
interfaces:
|
||||||
|
enum.TransferAmountUiKey.Key:
|
||||||
|
type: TransferAmountBoundUserInterface
|
||||||
|
- type: Edible
|
||||||
|
solution: tank
|
||||||
|
delay: 1.5
|
||||||
|
destroyOnEmpty: false
|
||||||
|
forceFeedDelay: 5
|
||||||
|
- type: Appearance
|
||||||
|
- type: SolutionContainerVisuals
|
||||||
|
maxFillLevels: 5
|
||||||
|
fillBaseName: jerrycan
|
||||||
|
inHandsMaxFillLevels: 5
|
||||||
|
inHandsFillBaseName: -fill-
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 10
|
||||||
|
- type: Damageable
|
||||||
|
damageContainer: Inorganic
|
||||||
|
- type: Destructible
|
||||||
|
thresholds:
|
||||||
|
- trigger:
|
||||||
|
!type:DamageTrigger
|
||||||
|
damage: 200
|
||||||
|
behaviors:
|
||||||
|
- !type:DoActsBehavior
|
||||||
|
acts: [ "Destruction" ]
|
||||||
|
- trigger:
|
||||||
|
!type:DamageTrigger
|
||||||
|
damage: 20
|
||||||
|
behaviors:
|
||||||
|
- !type:PlaySoundBehavior
|
||||||
|
sound:
|
||||||
|
collection: MetalBreak
|
||||||
|
params:
|
||||||
|
volume: -4
|
||||||
|
- !type:SpillBehavior
|
||||||
|
solution: tank
|
||||||
|
- !type:SpawnEntitiesBehavior
|
||||||
|
spawn:
|
||||||
|
SheetPlastic1:
|
||||||
|
min: 0
|
||||||
|
max: 1
|
||||||
|
transferForensics: true
|
||||||
|
- !type:DoActsBehavior
|
||||||
|
acts: [ "Destruction" ]
|
||||||
|
- type: Label
|
||||||
|
- type: TrashOnSolutionEmpty
|
||||||
|
solution: tank
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: JerryCan
|
||||||
|
suffix: welding fuel
|
||||||
|
id: JerryCanWeldingFuel
|
||||||
|
# categories: [ HideSpawnMenu ] # Frontier
|
||||||
|
components:
|
||||||
|
- type: Label
|
||||||
|
currentLabel: reagent-name-welding-fuel
|
||||||
|
- type: SolutionContainerManager
|
||||||
|
solutions:
|
||||||
|
tank:
|
||||||
|
reagents:
|
||||||
|
- ReagentId: WeldingFuel
|
||||||
|
Quantity: 200
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 570 B |
|
After Width: | Height: | Size: 899 B |
|
After Width: | Height: | Size: 468 B |
|
After Width: | Height: | Size: 466 B |
|
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "made by avalon2855 on discord. Slight color modification by javadocs(Discord) so it didn't look like the experimental one.",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "base"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "icon",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right",
|
||||||
|
"directions": 4
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 570 B |
|
After Width: | Height: | Size: 891 B |
|
After Width: | Height: | Size: 460 B |
|
After Width: | Height: | Size: 467 B |
|
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "made by avalon2855 on discord",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "base"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "icon",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right",
|
||||||
|
"directions": 4
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 551 B |
|
After Width: | Height: | Size: 796 B |
|
After Width: | Height: | Size: 477 B |
|
After Width: | Height: | Size: 466 B |
|
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "made by avalon2855 on discord",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "base"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "icon",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right",
|
||||||
|
"directions": 4
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 127 B |
|
After Width: | Height: | Size: 176 B |
|
After Width: | Height: | Size: 184 B |
|
After Width: | Height: | Size: 190 B |
|
After Width: | Height: | Size: 223 B |
|
After Width: | Height: | Size: 412 B |
|
After Width: | Height: | Size: 134 B |
|
After Width: | Height: | Size: 177 B |
|
After Width: | Height: | Size: 181 B |
|
After Width: | Height: | Size: 195 B |
|
After Width: | Height: | Size: 223 B |
|
After Width: | Height: | Size: 417 B |
|
After Width: | Height: | Size: 307 B |
|
After Width: | Height: | Size: 118 B |
|
After Width: | Height: | Size: 145 B |
|
After Width: | Height: | Size: 150 B |
|
After Width: | Height: | Size: 166 B |
|
After Width: | Height: | Size: 183 B |
|
|
@ -0,0 +1,77 @@
|
||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "Created by HoofedEar, modified by Whatstone (Discord)",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "jerrycan"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left-fill-1",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left-fill-2",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left-fill-3",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left-fill-4",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left-fill-5",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right-fill-1",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right-fill-2",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right-fill-3",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right-fill-4",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right-fill-5",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jerrycan1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jerrycan2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jerrycan3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jerrycan4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jerrycan5"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||