Port Starlight's expanded makeshift items (#4984)
* 1 * 2 * remove dismantle testing changes * add ammount handling, and add random angle * code-side things * code-side things * code-side things * 3 * 4 * 5 * 6 * changed description for now * whoops * 7 * 8 * 9 * Texture fix * Tada! I diiid iiitttt * Delete .icon.png-autosave.kra * 10 * test another * 11 * Localization fixes 2 Also some minor rebalancing of armor/shield/helmet crafting * ROOOUND 33333 * test wawa * wiz * fixes * MORE FIXES * MORE MORE FIXES * Smg mag fix * Why does it have reflet Removed reflect chance and made the damage the same as a plasteel arming sword * belt fix * phosphorus addition * improvised round bulk crafting * Update tags * tags update 2 * Update tags.yml * fix tags AGAIN * TAG FIX AGAIN * Fixed the sound path * Fixed missing components hopefully * fix it hopefully * Update tidebreaker.yml * fixed errors * fixed? * Update shields.yml * Update tools.yml * Fixes * Update tools.yml * Update tools.yml * Update tools.yml * Update tools.yml * Update tools.yml * screwdriver fix 200 * Update tools.yml * Update tools.yml * Apply suggestions from code review Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update SharedItemSwitchSystem.cs * review changes * Fix server and client files * Namespace fixes. * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Entities/Objects/Tools/crowbars.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Entities/Objects/Tools/tools.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Entities/Objects/Tools/tools.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Entities/Objects/Tools/tools.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Entities/Objects/Tools/tools.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/Entities/Clothing/Belt/belts.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Recipes/Crafting/Graphs/improvised/improvised_omnitool.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Recipes/Crafting/Graphs/improvised/improvised_omnitool.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Recipes/Crafting/Graphs/improvised/improvised_omnitool.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/Recipes/Crafting/Graphs/improvised/improvised_omnitool.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_StarLight/tags.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update SharedWeaponDismantleOnShootSystem.cs * Update Resources/Prototypes/Recipes/Crafting/Graphs/improvised/improvised_shotgun_shell.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> * Update Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Ammunition/Boxes/improvised.yml Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> --------- Signed-off-by: Apachito <ivanlopezlegos2004@gmail.com> Co-authored-by: KillerTheFlareon <tyler443344@outlook.com> Co-authored-by: Matthew Herber <matthewherber@sbcglobal.net> Co-authored-by: Athena-AI <AthenaTheAI@outlook.com> Co-authored-by: stickycheZ101 <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> Co-authored-by: stickycheZ101 <96800602+stickycheZ101@users.noreply.github.com> Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Co-authored-by: Vanessa <vanessalouwagie@gmail.com>
This commit is contained in:
parent
d7ebd18ad3
commit
58cc793e86
|
|
@ -0,0 +1,35 @@
|
|||
using Content.Shared._Starlight.ItemSwitch;
|
||||
using Content.Shared._Starlight.ItemSwitch.Components;
|
||||
using Robust.Client.GameObjects;
|
||||
|
||||
namespace Content.Client._Starlight.ItemSwitch;
|
||||
|
||||
public sealed class ItemSwitchSystem : SharedItemSwitchSystem
|
||||
{
|
||||
[Dependency] private readonly SpriteSystem _sprite = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
SubscribeLocalEvent<ItemSwitchComponent, AfterAutoHandleStateEvent>(OnChanged);
|
||||
}
|
||||
|
||||
private void OnChanged(Entity<ItemSwitchComponent> ent, ref AfterAutoHandleStateEvent args)
|
||||
{
|
||||
UpdateVisuals(ent, ent.Comp.State);
|
||||
}
|
||||
|
||||
protected override void UpdateVisuals(Entity<ItemSwitchComponent> ent, string key)
|
||||
{
|
||||
base.UpdateVisuals(ent, key);
|
||||
|
||||
if (TryComp<SpriteComponent>(ent, out var sprite) && ent.Comp.States.TryGetValue(key, out var state))
|
||||
{
|
||||
if (state.Sprite != null)
|
||||
{
|
||||
_sprite.LayerSetSprite(ent.Owner, 0, state.Sprite);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
using Content.Shared._Starlight.Weapon;
|
||||
|
||||
namespace Content.Client._Starlight.Weapon;
|
||||
|
||||
public sealed partial class WeaponDismantleOnShootSystem : SharedWeaponDismantleOnShootSystem;
|
||||
|
|
@ -170,6 +170,7 @@ public sealed partial class GunSystem : SharedGunSystem
|
|||
RaiseLocalEvent(gunUid, new AmmoShotEvent()
|
||||
{
|
||||
FiredProjectiles = shotProjectiles,
|
||||
Shooter = user, //starlight
|
||||
});
|
||||
|
||||
void CreateAndFireProjectiles(EntityUid ammoEnt, AmmoComponent ammoComp)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,5 @@
|
|||
using Content.Shared._Starlight.ItemSwitch;
|
||||
|
||||
namespace Content.Server._Starlight.ItemSwitch;
|
||||
|
||||
public sealed class ItemSwitchSystem : SharedItemSwitchSystem;
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
using Content.Shared._Starlight.Weapon;
|
||||
|
||||
namespace Content.Server._Starlight.Weapon;
|
||||
|
||||
public sealed class WeaponDismantleOnShootSystem : SharedWeaponDismantleOnShootSystem;
|
||||
|
|
@ -88,5 +88,8 @@ namespace Content.Shared.Verbs
|
|||
|
||||
public static readonly VerbCategory Adjust =
|
||||
new("verb-categories-adjust", "/Textures/Interface/VerbIcons/screwdriver.png");
|
||||
|
||||
// Used by Starlight item switching verbs
|
||||
public static readonly VerbCategory Switch = new("verb-categories-switch", null);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,4 +6,5 @@ namespace Content.Shared.Weapons.Ranged.Events;
|
|||
public sealed class AmmoShotEvent : EntityEventArgs
|
||||
{
|
||||
public List<EntityUid> FiredProjectiles = default!;
|
||||
public EntityUid? Shooter = default!; //starlight
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,7 @@
|
|||
namespace Content.Shared._Starlight.Inventory;
|
||||
|
||||
/// <summary>
|
||||
/// Raised when a lot slot is "used", this being unhandled will result in the default unequip action
|
||||
/// </summary>
|
||||
[ByRefEvent]
|
||||
public record struct InventoryUseSlotEvent(EntityUid Actor, EntityUid Target, bool Handled = false);
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Shared._Starlight.Inventory;
|
||||
|
||||
public enum EquipMode
|
||||
{
|
||||
Remove,
|
||||
Open
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
/// Gives user-equipped storage a toggle so that the default action upon clicking the equipped bag can be switched from unequip to open
|
||||
/// </summary>
|
||||
[RegisterComponent, NetworkedComponent]
|
||||
[AutoGenerateComponentState]
|
||||
public sealed partial class SwitchableEquipModeComponent : Component
|
||||
{
|
||||
[AutoNetworkedField]
|
||||
public EquipMode Mode = EquipMode.Remove;
|
||||
}
|
||||
|
|
@ -0,0 +1,102 @@
|
|||
using Content.Shared.Storage;
|
||||
using Content.Shared.Storage.EntitySystems;
|
||||
using Content.Shared.Inventory;
|
||||
using Content.Shared.Hands.EntitySystems;
|
||||
using Content.Shared.Clothing.EntitySystems;
|
||||
using Content.Shared.Verbs;
|
||||
using Robust.Shared.Utility;
|
||||
using Robust.Shared.Audio.Systems;
|
||||
using Content.Shared.Inventory.Events;
|
||||
|
||||
namespace Content.Shared._Starlight.Inventory;
|
||||
|
||||
public sealed class SwitchableEquipModeSystem : EntitySystem
|
||||
{
|
||||
[Dependency] private readonly SharedStorageSystem _storage = default!;
|
||||
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
||||
[Dependency] private readonly InventorySystem _inventory = default!;
|
||||
[Dependency] private readonly SharedHandsSystem _hands = default!;
|
||||
[Dependency] private readonly SharedUserInterfaceSystem _ui = default!;
|
||||
|
||||
private readonly Dictionary<EquipMode, string> _equipModeLocaleMapping = new() {
|
||||
{ EquipMode.Remove, "equipmode-mode-remove" },
|
||||
{ EquipMode.Open, "equipmode-mode-open" }
|
||||
};
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
SubscribeLocalEvent<SwitchableEquipModeComponent, InventoryUseSlotEvent>(OnInventoryUseSlot);
|
||||
SubscribeLocalEvent<SwitchableEquipModeComponent, GetVerbsEvent<ActivationVerb>>(OnGetVerbs);
|
||||
SubscribeLocalEvent<SwitchableEquipModeComponent, GotUnequippedEvent>(OnUnequipped);
|
||||
}
|
||||
|
||||
private void OnInventoryUseSlot(EntityUid uid, SwitchableEquipModeComponent switchModeComp, ref InventoryUseSlotEvent args)
|
||||
{
|
||||
if (!TryComp<StorageComponent>(uid, out var storageComp)) return;
|
||||
|
||||
switch (switchModeComp.Mode)
|
||||
{
|
||||
case EquipMode.Remove:
|
||||
return; // pass to next
|
||||
|
||||
case EquipMode.Open:
|
||||
args.Handled = true;
|
||||
if (_ui.IsUiOpen(uid, StorageComponent.StorageUiKey.Key, args.Actor)) return; // stop sound spam
|
||||
|
||||
_storage.OpenStorageUI(args.Target, args.Actor);
|
||||
_audio.PlayPredicted(storageComp.StorageOpenSound, uid, args.Actor);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnGetVerbs(EntityUid uid, SwitchableEquipModeComponent switchModeComp, ref GetVerbsEvent<ActivationVerb> args)
|
||||
{
|
||||
if (!args.CanInteract || !args.CanAccess) return;
|
||||
if (!TryComp<StorageComponent>(uid, out var storageComp)) return;
|
||||
if (!_inventory.TryGetContainingSlot(uid, out var slot)) return;
|
||||
|
||||
var modeCount = Enum.GetNames<EquipMode>().Length;
|
||||
EquipMode nextMode = (EquipMode)(((int)switchModeComp.Mode + 1) % modeCount);
|
||||
|
||||
ActivationVerb switchVerb = new()
|
||||
{
|
||||
Text = Loc.GetString("equipmode-switch", ("type", Loc.GetString(new(_equipModeLocaleMapping[nextMode])))),
|
||||
Icon = new SpriteSpecifier.Texture(new("/Textures/Interface/VerbIcons/outfit.svg.192dpi.png")),
|
||||
Priority = -1,
|
||||
Act = () => switchModeComp.Mode = nextMode
|
||||
};
|
||||
args.Verbs.Add(switchVerb);
|
||||
|
||||
// misc verbs
|
||||
|
||||
EntityUid user = args.User;
|
||||
|
||||
ActivationVerb unequipVerb = new()
|
||||
{
|
||||
Text = Loc.GetString("equipmode-remove"),
|
||||
Icon = new SpriteSpecifier.Texture(new("/Textures/Interface/VerbIcons/eject.svg.192dpi.png")),
|
||||
Priority = 0,
|
||||
Act = () =>
|
||||
{
|
||||
_inventory.TryUnequip(user, slot.Name, false, true);
|
||||
_hands.TryPickup(user, uid);
|
||||
}
|
||||
};
|
||||
|
||||
switch (switchModeComp.Mode)
|
||||
{
|
||||
// we want an unequip option if the default click option isn't to remove
|
||||
case EquipMode.Open:
|
||||
args.Verbs.Add(unequipVerb);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
};
|
||||
}
|
||||
|
||||
private void OnUnequipped(Entity<SwitchableEquipModeComponent> ent, ref GotUnequippedEvent _) => ent.Comp.Mode = EquipMode.Remove; // revert to default behaviour
|
||||
}
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.GameStates;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Utility;
|
||||
|
||||
namespace Content.Shared._Starlight.ItemSwitch.Components;
|
||||
|
||||
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(true)]
|
||||
public sealed partial class ItemSwitchComponent : Component
|
||||
{
|
||||
/// <summary>
|
||||
/// The item's toggle state.
|
||||
/// </summary>
|
||||
[DataField, AutoNetworkedField]
|
||||
public string State;
|
||||
|
||||
[DataField(readOnly: true)]
|
||||
public Dictionary<string, ItemSwitchState> States = [];
|
||||
|
||||
/// <summary>
|
||||
/// Can the entity be activated in the world.
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public bool OnActivate = true;
|
||||
|
||||
/// <summary>
|
||||
/// If this is set to false then the item can't be toggled by pressing Z.
|
||||
/// Use another system to do it then.
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public bool OnUse = true;
|
||||
|
||||
/// <summary>
|
||||
/// Whether the item's toggle can be predicted by the client.
|
||||
/// </summary>
|
||||
/// /// <remarks>
|
||||
/// If server-side systems affect the item's toggle, like charge/fuel systems, then the item is not predictable.
|
||||
/// </remarks>
|
||||
[ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField]
|
||||
public bool Predictable = true;
|
||||
}
|
||||
|
||||
[DataDefinition]
|
||||
public sealed partial class ItemSwitchState : BoundUserInterfaceMessage
|
||||
{
|
||||
[DataField]
|
||||
public string Verb;
|
||||
|
||||
[DataField]
|
||||
public SoundSpecifier? SoundStateActivate;
|
||||
|
||||
[DataField]
|
||||
public SoundSpecifier? SoundFailToActivate;
|
||||
|
||||
[DataField]
|
||||
public ComponentRegistry? Components;
|
||||
|
||||
[DataField]
|
||||
public bool RemoveComponents = true;
|
||||
|
||||
[DataField]
|
||||
public bool Hidden = false;
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? Sprite;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Raised directed on an entity when its ItemToggle is attempted to be activated.
|
||||
/// </summary>
|
||||
[ByRefEvent]
|
||||
public record struct ItemSwitchAttemptEvent()
|
||||
{
|
||||
public bool Cancelled = false;
|
||||
public required readonly EntityUid? User { get; init; }
|
||||
public required readonly string State { get; init; }
|
||||
/// <summary>
|
||||
/// Pop-up that gets shown to users explaining why the attempt was cancelled.
|
||||
/// </summary>
|
||||
public string? Popup { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Raised directed on an entity any sort of toggle is complete.
|
||||
/// </summary>
|
||||
[ByRefEvent]
|
||||
public readonly record struct ItemSwitchedEvent()
|
||||
{
|
||||
public required readonly bool Predicted { get; init; }
|
||||
public required readonly string State { get; init; }
|
||||
public required readonly EntityUid? User { get; init; }
|
||||
}
|
||||
|
|
@ -0,0 +1,192 @@
|
|||
using System.Linq;
|
||||
using Content.Shared.Clothing.Components;
|
||||
using Content.Shared.Clothing.EntitySystems;
|
||||
using Content.Shared.Interaction;
|
||||
using Content.Shared.Interaction.Events;
|
||||
using Content.Shared.Item;
|
||||
using Content.Shared._Starlight.ItemSwitch.Components;
|
||||
using Content.Shared.Popups;
|
||||
using Content.Shared._Starlight.ItemSwitch.Visuals;
|
||||
using Content.Shared.Verbs;
|
||||
using Robust.Shared.Audio.Systems;
|
||||
using Robust.Shared.Network;
|
||||
|
||||
namespace Content.Shared._Starlight.ItemSwitch;
|
||||
|
||||
public abstract class SharedItemSwitchSystem : EntitySystem
|
||||
{
|
||||
[Dependency] private readonly INetManager _netManager = default!;
|
||||
[Dependency] private readonly SharedAppearanceSystem _appearance = default!;
|
||||
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
||||
[Dependency] private readonly SharedPopupSystem _popup = default!;
|
||||
[Dependency] private readonly SharedItemSystem _item = default!;
|
||||
[Dependency] private readonly ClothingSystem _clothing = default!;
|
||||
|
||||
private EntityQuery<ItemSwitchComponent> _query;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
_query = GetEntityQuery<ItemSwitchComponent>();
|
||||
|
||||
SubscribeLocalEvent<ItemSwitchComponent, MapInitEvent>(OnMapInit);
|
||||
SubscribeLocalEvent<ItemSwitchComponent, UseInHandEvent>(OnUseInHand);
|
||||
SubscribeLocalEvent<ItemSwitchComponent, GetVerbsEvent<ActivationVerb>>(OnActivateVerb);
|
||||
SubscribeLocalEvent<ItemSwitchComponent, ActivateInWorldEvent>(OnActivate);
|
||||
|
||||
SubscribeLocalEvent<ClothingComponent, ItemSwitchedEvent>(UpdateClothingLayer);
|
||||
}
|
||||
|
||||
private void OnMapInit(Entity<ItemSwitchComponent> ent, ref MapInitEvent args)
|
||||
{
|
||||
var state = ent.Comp.State;
|
||||
state ??= ent.Comp.States.Keys.FirstOrDefault();
|
||||
if (state != null)
|
||||
Switch((ent, ent.Comp), state, predicted: ent.Comp.Predictable);
|
||||
}
|
||||
|
||||
private void OnUseInHand(Entity<ItemSwitchComponent> ent, ref UseInHandEvent args)
|
||||
{
|
||||
if (args.Handled || !ent.Comp.OnUse || ent.Comp.States.Count == 0)
|
||||
return;
|
||||
|
||||
args.Handled = true;
|
||||
|
||||
if (ent.Comp.States.TryGetValue(Next(ent), out var state) && state.Hidden)
|
||||
return;
|
||||
|
||||
Switch((ent, ent.Comp), Next(ent), args.User, predicted: ent.Comp.Predictable);
|
||||
}
|
||||
|
||||
private void OnActivateVerb(Entity<ItemSwitchComponent> ent, ref GetVerbsEvent<ActivationVerb> args)
|
||||
{
|
||||
if (!args.CanAccess || !args.CanInteract || !ent.Comp.OnActivate || ent.Comp.States.Count == 0) return;
|
||||
|
||||
var user = args.User;
|
||||
int addedVerbs = 0;
|
||||
|
||||
foreach (var state in ent.Comp.States)
|
||||
{
|
||||
if (state.Value.Hidden)
|
||||
continue;
|
||||
args.Verbs.Add(new ActivationVerb()
|
||||
{
|
||||
Text = Loc.TryGetString(state.Value.Verb, out var title) ? title : state.Value.Verb,
|
||||
Category = VerbCategory.Switch,
|
||||
Act = () => Switch((ent.Owner, ent.Comp), state.Key, user, ent.Comp.Predictable)
|
||||
});
|
||||
addedVerbs++;
|
||||
}
|
||||
|
||||
if (addedVerbs > 0)
|
||||
args.ExtraCategories.Add(VerbCategory.Switch);
|
||||
}
|
||||
|
||||
private void OnActivate(Entity<ItemSwitchComponent> ent, ref ActivateInWorldEvent args)
|
||||
{
|
||||
if (args.Handled || !ent.Comp.OnActivate)
|
||||
return;
|
||||
|
||||
args.Handled = true;
|
||||
|
||||
if (ent.Comp.States.TryGetValue(Next(ent), out var state) && state.Hidden)
|
||||
return;
|
||||
|
||||
Switch((ent.Owner, ent.Comp), Next(ent), args.User, predicted: ent.Comp.Predictable);
|
||||
}
|
||||
|
||||
private static string Next(Entity<ItemSwitchComponent> ent)
|
||||
{
|
||||
var foundCurrent = false;
|
||||
string firstState = null!;
|
||||
|
||||
foreach (var state in ent.Comp.States.Keys)
|
||||
{
|
||||
firstState ??= state;
|
||||
|
||||
if (foundCurrent)
|
||||
return state;
|
||||
|
||||
if (state == ent.Comp.State)
|
||||
foundCurrent = true;
|
||||
}
|
||||
return firstState;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Used when an item is attempted to be toggled.
|
||||
/// Sets its state to the opposite of what it is.
|
||||
/// </summary>
|
||||
/// <returns>Same as <see cref="TrySetActive"/></returns>
|
||||
public bool Switch(Entity<ItemSwitchComponent?> ent, string key, EntityUid? user = null, bool predicted = true)
|
||||
{
|
||||
if (!_query.Resolve(ent, ref ent.Comp, false) || !ent.Comp.States.TryGetValue(key, out var state))
|
||||
return false;
|
||||
|
||||
var uid = ent.Owner;
|
||||
var comp = ent.Comp;
|
||||
|
||||
if (!comp.Predictable && _netManager.IsClient)
|
||||
return true;
|
||||
|
||||
var attempt = new ItemSwitchAttemptEvent
|
||||
{
|
||||
User = user,
|
||||
State = key
|
||||
};
|
||||
RaiseLocalEvent(uid, ref attempt);
|
||||
|
||||
if (ent.Comp.States.TryGetValue(ent.Comp.State, out var prevState) && prevState.RemoveComponents && prevState.Components is not null)
|
||||
EntityManager.RemoveComponents(ent, prevState.Components);
|
||||
|
||||
if (state.Components is not null)
|
||||
EntityManager.AddComponents(ent, state.Components);
|
||||
|
||||
if (!comp.Predictable) predicted = false;
|
||||
|
||||
if (attempt.Cancelled)
|
||||
{
|
||||
if (predicted)
|
||||
_audio.PlayPredicted(state.SoundFailToActivate, uid, user);
|
||||
else
|
||||
_audio.PlayPvs(state.SoundFailToActivate, uid);
|
||||
|
||||
if (attempt.Popup != null && user != null)
|
||||
if (predicted)
|
||||
_popup.PopupClient(attempt.Popup, uid, user.Value);
|
||||
else
|
||||
_popup.PopupEntity(attempt.Popup, uid, user.Value);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if (predicted)
|
||||
_audio.PlayPredicted(state.SoundStateActivate, uid, user);
|
||||
else
|
||||
_audio.PlayPvs(state.SoundStateActivate, uid);
|
||||
|
||||
comp.State = key;
|
||||
UpdateVisuals((uid, comp), key);
|
||||
Dirty(uid, comp);
|
||||
|
||||
var switched = new ItemSwitchedEvent { Predicted = predicted, State = key, User = user };
|
||||
RaiseLocalEvent(uid, ref switched);
|
||||
|
||||
return true;
|
||||
}
|
||||
public virtual void VisualsChanged(Entity<ItemSwitchComponent> ent, string key)
|
||||
{
|
||||
|
||||
}
|
||||
protected virtual void UpdateVisuals(Entity<ItemSwitchComponent> ent, string key)
|
||||
{
|
||||
if (TryComp(ent, out AppearanceComponent? appearance))
|
||||
_appearance.SetData(ent, ItemSwitchVisuals.Switched, key, appearance);
|
||||
_item.SetHeldPrefix(ent, key);
|
||||
|
||||
VisualsChanged(ent, key);
|
||||
}
|
||||
private void UpdateClothingLayer(Entity<ClothingComponent> ent, ref ItemSwitchedEvent args)
|
||||
=> _clothing.SetEquippedPrefix(ent, args.State, ent.Comp);
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared._Starlight.ItemSwitch.Visuals;
|
||||
|
||||
// Appearance Data key
|
||||
[Serializable, NetSerializable]
|
||||
public enum ItemSwitchLightVisuals : byte
|
||||
{
|
||||
Enabled,
|
||||
Color
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
using Content.Shared.Actions;
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared._Starlight.ItemSwitch.Visuals;
|
||||
|
||||
public sealed partial class SwitchableActionEvent : InstantActionEvent;
|
||||
|
||||
/// <summary>
|
||||
/// Generic enum keys for toggle-visualizer appearance data & sprite layers.
|
||||
/// </summary>
|
||||
[Serializable, NetSerializable]
|
||||
public enum ItemSwitchVisuals : byte
|
||||
{
|
||||
Switched,
|
||||
Layer
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
using Content.Shared.Damage;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.GameStates;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared._Starlight.Weapon.Components;
|
||||
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
|
||||
public sealed partial class WeaponDismantleOnShootComponent : Component
|
||||
{
|
||||
[DataField, AutoNetworkedField]
|
||||
public float DismantleChance = 0.0f;
|
||||
|
||||
/// <summary>
|
||||
/// How far to throw things when dismantling.
|
||||
/// </summary>
|
||||
[DataField, AutoNetworkedField]
|
||||
public float DismantleDistance = 5f;
|
||||
|
||||
[DataField]
|
||||
public SoundCollectionSpecifier? DismantleSound = new SoundCollectionSpecifier("MetalBreak");
|
||||
|
||||
[DataField, AutoNetworkedField]
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public DamageSpecifier SelfDamage = new();
|
||||
|
||||
[DataField, AutoNetworkedField]
|
||||
public List<DismantleOnShootItem> items = [];
|
||||
}
|
||||
|
||||
[DataDefinition]
|
||||
[Serializable, NetSerializable]
|
||||
public sealed partial class DismantleOnShootItem
|
||||
{
|
||||
public DismantleOnShootItem() { }
|
||||
[DataField("id")]
|
||||
public EntProtoId? PrototypeId = null;
|
||||
|
||||
/// <summary>
|
||||
/// The probability that an item will spawn. Takes decimal form so 0.05 is 5%, 0.50 is 50% etc.
|
||||
/// </summary>
|
||||
[DataField("prob")]
|
||||
public float SpawnProbability = 1;
|
||||
|
||||
[DataField]
|
||||
public int Amount = 1;
|
||||
|
||||
[ViewVariables(VVAccess.ReadWrite), DataField]
|
||||
public Angle LaunchAngle = Angle.FromDegrees(0);
|
||||
|
||||
[ViewVariables(VVAccess.ReadWrite), DataField]
|
||||
public Angle AngleRandomness = Angle.FromDegrees(5);
|
||||
}
|
||||
|
|
@ -0,0 +1,101 @@
|
|||
using System.Numerics;
|
||||
using Content.Shared._Starlight.Weapon.Components;
|
||||
using Content.Shared.Throwing;
|
||||
using Content.Shared.Weapons.Ranged.Events;
|
||||
using Content.Shared.Damage;
|
||||
using Content.Shared.Damage.Systems;
|
||||
using Content.Shared.Weapons.Ranged.Components;
|
||||
using Robust.Shared.Random;
|
||||
using Robust.Shared.Audio.Systems;
|
||||
using Robust.Shared.Map;
|
||||
using Robust.Shared.IoC;
|
||||
using Robust.Shared.GameObjects;
|
||||
|
||||
namespace Content.Shared._Starlight.Weapon;
|
||||
|
||||
public abstract partial class SharedWeaponDismantleOnShootSystem : EntitySystem
|
||||
{
|
||||
[Dependency] protected readonly ThrowingSystem Throwing = default!;
|
||||
[Dependency] protected readonly DamageableSystem Damageable = default!;
|
||||
[Dependency] protected readonly SharedAudioSystem Audio = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
SubscribeLocalEvent<WeaponDismantleOnShootComponent, AmmoShotEvent>(OnGunShot);
|
||||
}
|
||||
|
||||
public bool DismantleCheck(Entity<WeaponDismantleOnShootComponent> ent, ref AmmoShotEvent args)
|
||||
{
|
||||
//roll to see if we explode or not
|
||||
var random = IoCManager.Resolve<IRobustRandom>();
|
||||
//1.0f means always true, 0.0f means always false
|
||||
if (!random.Prob(ent.Comp.DismantleChance))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private void OnGunShot(Entity<WeaponDismantleOnShootComponent> ent, ref AmmoShotEvent args)
|
||||
{
|
||||
if (DismantleCheck(ent, ref args) == false)
|
||||
return;
|
||||
|
||||
// we need the user (shooter) to proceed
|
||||
if (!args.Shooter.HasValue)
|
||||
return;
|
||||
|
||||
var shooter = args.Shooter.Value;
|
||||
|
||||
// apply the damage to the shooter (expects Entity<DamageableComponent?>)
|
||||
Damageable.TryChangeDamage((shooter, null), ent.Comp.SelfDamage, origin: shooter);
|
||||
|
||||
Audio.PlayPredicted(ent.Comp.DismantleSound, shooter, shooter);
|
||||
|
||||
// get the user's transform
|
||||
var userPosition = Transform(shooter).Coordinates;
|
||||
|
||||
if (!TryComp<GunComponent>(ent, out var gunComponent))
|
||||
return;
|
||||
|
||||
var toCoordinates = gunComponent.ShootCoordinates;
|
||||
|
||||
if (toCoordinates == null)
|
||||
return;
|
||||
|
||||
//loop through all of the items
|
||||
var random = IoCManager.Resolve<IRobustRandom>();
|
||||
foreach (var item in ent.Comp.items)
|
||||
{
|
||||
for (var i = 0; i < item.Amount; i++)
|
||||
{
|
||||
//roll to see if we destroy the item or not
|
||||
if (!random.Prob(item.SpawnProbability))
|
||||
continue;
|
||||
|
||||
//get the item entity
|
||||
var itemEntity = Spawn(item.PrototypeId, userPosition);
|
||||
|
||||
var direction = toCoordinates.Value.Position;
|
||||
//normalize it
|
||||
direction = Vector2.Normalize(direction);
|
||||
//multiply it by the distance
|
||||
direction *= ent.Comp.DismantleDistance;
|
||||
//rotate it by the angle
|
||||
direction = item.LaunchAngle.RotateVec(direction);
|
||||
|
||||
//roll for random angle modifier
|
||||
double randomAngle = random.NextDouble(-item.AngleRandomness.Degrees, item.AngleRandomness.Degrees);
|
||||
//rotate it by the random angle
|
||||
direction = Angle.FromDegrees(randomAngle).RotateVec(direction);
|
||||
|
||||
var throwDirection = new EntityCoordinates(shooter, direction);
|
||||
|
||||
Throwing.TryThrow(itemEntity, throwDirection, ent.Comp.DismantleDistance, compensateFriction: true);
|
||||
}
|
||||
}
|
||||
|
||||
//now we need to destroy the gun
|
||||
//get the gun entity
|
||||
PredictedQueueDel(ent.Owner);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,187 @@
|
|||
crafting-menu-name-FDB = forged double-barrel shotgun
|
||||
crafting-menu-text-FDB = The cousin of the improvised shotgun, this one is made from better quality parts and an additional barrel! Takes time and welding supplies to make, however.
|
||||
|
||||
crafting-menu-name-MP = makeshift pistol
|
||||
crafting-menu-text-MP = A hastily built pistol, looks horrible and is liable to explode in your face.
|
||||
|
||||
crafting-menu-name-IP = improvised pistol
|
||||
crafting-menu-text-IP = The next best thing in improvised pistols, comes with an internal magazine of five rounds.
|
||||
|
||||
crafting-menu-name-FP = forged pistol
|
||||
crafting-menu-text-FP = A reliable, high quality firearm. Takes six-round clipazines, and needs welding supplies to make.
|
||||
|
||||
crafting-menu-name-IPB = improvised pistol bullet
|
||||
crafting-menu-text-IPB = Better than nothing. Low-quality propellant means it won't hit as hard as a normal bullet.
|
||||
|
||||
crafting-menu-name-IPM = improvised pistol magazine
|
||||
crafting-menu-text-IPM = A compact 6-round clipazine.
|
||||
|
||||
crafting-menu-name-MR = makeshift revolver
|
||||
crafting-menu-text-MR = Hastily built revolver that has a good chance of backfiring into your face.
|
||||
|
||||
crafting-menu-name-IR = improvised revolver
|
||||
crafting-menu-text-IR = An odd double-barrel revolver with no cylinder. The unique construction lowers the chance of a backfire, but does not eliminate it.
|
||||
|
||||
crafting-menu-name-FR = forged revolver
|
||||
crafting-menu-text-FR = The best Tider Engineering can provide. Has 4 shots and will NOT blow up in your face, but needs welding supplies to make.
|
||||
|
||||
crafting-menu-name-IMB = improvised magnum bullet
|
||||
crafting-menu-text-IMB = Better than nothing. Stuffed to the brim with phosphorus but still won't hit as hard.
|
||||
|
||||
crafting-menu-name-IMS = improvised magnum speedloader
|
||||
crafting-menu-text-IMS = A simple speedloader capable of holding 4 shots.
|
||||
|
||||
crafting-menu-name-MB = modular barrel
|
||||
crafting-menu-text-MB = For all your guncrafting needs!
|
||||
|
||||
crafting-menu-name-MSH = makeshift shotgun
|
||||
crafting-menu-text-MSH = A robust hand-cannon that'll snap your wrist right off if you're not careful
|
||||
|
||||
crafting-menu-name-MS = makeshift smg
|
||||
crafting-menu-text-MS = It can't hit the broad side of a barn.
|
||||
|
||||
crafting-menu-name-IS = improvised smg
|
||||
crafting-menu-text-IS = It CAN hit the broad side of a barn, but not a person.
|
||||
|
||||
crafting-menu-name-FS = forged smg
|
||||
crafting-menu-text-FS = Finally, an SMG that can hit a person! Needs to be welded together, so make sure you have welding supplies!
|
||||
|
||||
crafting-menu-name-ISM = improvised smg magazine
|
||||
crafting-menu-text-ISM = The fact this thing works at all is nothing short of a miracle
|
||||
|
||||
crafting-menu-name-MRR = makeshift repeater rifle
|
||||
crafting-menu-text-MRR = Too big to fit in your pocket, but small enough to fit in your bag. An odd weapon indeed.
|
||||
|
||||
crafting-menu-name-IRR = improvised repeater rifle
|
||||
crafting-menu-text-IRR = The weird in-between cousin, too big to be stored comfortably, but also not that inaccurate.
|
||||
|
||||
crafting-menu-name-FRR = forged repeater rifle
|
||||
crafting-menu-text-FRR = The peak of tider engineering. But does need welding supplies to finish.
|
||||
|
||||
crafting-menu-name-IRB = improvised rifle bullet
|
||||
crafting-menu-text-IRB = Better than nothing. Fairly full with phosphorus but still won't hit as hard.
|
||||
|
||||
crafting-menu-name-IMGB = improvised ammo box
|
||||
crafting-menu-text-IMGB = Organization is not the strong suit of any tider. Can hold all kinds of bullets.
|
||||
|
||||
crafting-menu-name-IMGP = improvised ammo box (.35 auto)
|
||||
crafting-menu-text-IMGP = Organization is not the strong suit of any tider. Holds 40 improvised .35 auto rounds.
|
||||
|
||||
crafting-menu-name-IMGR = improvised ammo box (.30 rifle)
|
||||
crafting-menu-text-IMGR = Organization is not the strong suit of any tider. Holds 40 improvised .30 rifle rounds.
|
||||
|
||||
crafting-menu-name-IMGM = improvised ammo box (.45 magnum)
|
||||
crafting-menu-text-IMGM = Organization is not the strong suit of any tider. Holds 40 improvised .45 magnum rounds.
|
||||
|
||||
crafting-menu-name-IMGS = improvised ammo box (.50 shotgun)
|
||||
crafting-menu-text-IMGS = Organization is not the strong suit of any tider. Holds 40 improvised .50 shotgun shells.
|
||||
|
||||
crafting-menu-name-phosphorus = crushed phosphorus
|
||||
crafting-menu-text-phosphorus = Crushing the tips off of matches yields this bright red, exceedingly volatile compound.
|
||||
|
||||
crafting-menu-name-MC = makeshift crowbar
|
||||
crafting-menu-text-MC = You must be REALLY desperate..
|
||||
|
||||
crafting-menu-name-IC = improvised crowbar
|
||||
crafting-menu-text-IC = Not the best, not the worst. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-ISC = improvised screwdriver
|
||||
|
||||
crafting-menu-name-IW = improvised wirecutter
|
||||
|
||||
crafting-menu-name-IWR = improvised wrench
|
||||
|
||||
crafting-menu-name-IM = improvised multitool
|
||||
crafting-menu-text-IM = The best you're gonna get. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-EW = emergency welder
|
||||
|
||||
crafting-menu-name-IO = improvised omnitool
|
||||
crafting-menu-text-IO = The fact that this abomination of tiderkind actually works is nothing short of a miracle.
|
||||
|
||||
crafting-menu-name-FO = forged omnitool
|
||||
crafting-menu-text-FO = The better, but more psychopathic omnitool.
|
||||
|
||||
crafting-menu-name-WH = wooden hilt
|
||||
crafting-menu-text-WH = Needed in the construction of basic bladed weapons.
|
||||
|
||||
crafting-menu-name-PH = plasteel hilt
|
||||
crafting-menu-text-PH = Needed in the construction of advanced bladed weapons.
|
||||
|
||||
crafting-menu-name-SB = steel blade
|
||||
crafting-menu-text-SB = Needed in the construction of basic bladed weapons.
|
||||
|
||||
crafting-menu-name-PB = plasteel blade
|
||||
crafting-menu-text-PB = Needed in the construction of advanced bladed weapons.
|
||||
|
||||
crafting-menu-name-MSW = makeshift sword
|
||||
crafting-menu-text-MSW = Big and scary, but not that dangerous.
|
||||
|
||||
crafting-menu-name-ISW = improvised sword
|
||||
crafting-menu-text-ISW = The budget option for aspiring maints knights.
|
||||
|
||||
crafting-menu-name-FSW = forged sword
|
||||
crafting-menu-text-FSW = Now THAT'S a weapon! Best paired with equally shiny armor, needs welding.
|
||||
|
||||
crafting-menu-name-DSW = dawnbreaker
|
||||
crafting-menu-text-DSW = Burn away the unholdy heretics with this weapon of justice!
|
||||
|
||||
crafting-menu-name-TSW = tidebreaker
|
||||
crafting-menu-text-TSW = Crush those who oppose you!
|
||||
|
||||
crafting-menu-name-ISH = improvised shield
|
||||
crafting-menu-text-ISH = Keep a solid sheet of metal between you and your enemies. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-FSH = forged buckler shield
|
||||
crafting-menu-text-FSH = Lightweight plasteel shield forged by the best tidersmiths, does a good job of keeping you alive. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-FSHT = forged tower shield
|
||||
crafting-menu-text-FSHT = Heavily armored plasteel shield, the extra plating and size making it more durable but heavier to hold. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-PSH = paladin shield
|
||||
crafting-menu-text-PSH = Sturdy yet light in your hands, perfectly weighted. Shaped into perfection for sword fights, among other Paladins. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-PSHG = paladin greatshield
|
||||
crafting-menu-text-PSHG = Become the wall you want to be. Exeedingly heavy to the point of needing a makeshift harness to simply hold. Needs welding supplies to finish.
|
||||
|
||||
crafting-menu-name-MVT = makeshift vest
|
||||
crafting-menu-text-MVT = Arguably nothing is better than this. Scrap metal cobbled together with LV cables to TRY and protect you.
|
||||
|
||||
crafting-menu-name-IVT = improvised vest
|
||||
crafting-menu-text-IVT = Actually better than nothing, but still a bit on the heavy side, good at keeping you from getting stabbed.
|
||||
|
||||
crafting-menu-name-FVT = forged vest
|
||||
crafting-menu-text-FVT = A high quality armor vest based upon old earth mongolian designs, it is very effective at what it does.
|
||||
|
||||
crafting-menu-name-PVT = paladin suit
|
||||
crafting-menu-text-PVT = The best a tidersmith can make! Don this suit of armor and deal swift justice to evildoers! Or.. do the evil yourself, I won't judge.
|
||||
|
||||
crafting-menu-name-MVTH = makeshift helmet
|
||||
crafting-menu-text-MVTH = Nothing is, somehow, still better than this. Provides minimal protection, MIGHT save your head from a bullet.
|
||||
|
||||
crafting-menu-name-IVTH = improvised helmet
|
||||
crafting-menu-text-IVTH = Better than nothing, by a slim margin.
|
||||
|
||||
crafting-menu-name-FVTH = forged helmet
|
||||
crafting-menu-text-FVTH = Almost the best a tidersmith can offer, it'll reliably stop a bullet and protect your head from being smashed in.
|
||||
|
||||
crafting-menu-name-PVTH = paladin helmet
|
||||
crafting-menu-text-PVTH = The best a tidersmith can offer, no holy crusade is fit to go on without a matching helmet!
|
||||
|
||||
crafting-menu-name-ETX = emergency toolbox
|
||||
|
||||
crafting-menu-name-MUL = multitool
|
||||
|
||||
crafting-menu-name-WRE = wrench
|
||||
|
||||
crafting-menu-name-WIR = wirecutter
|
||||
|
||||
crafting-menu-name-SCR = screwdriver
|
||||
|
||||
crafting-menu-name-CRO = crowbar
|
||||
|
||||
crafting-menu-name-EXOXY = extended-capacity emergency oxygen tank
|
||||
|
||||
crafting-menu-name-CGREN = green crayon
|
||||
|
||||
crafting-menu-name-CYELO = yellow crayon
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
|
||||
# Ores
|
||||
materials-raw-abyssium = raw abyssium
|
||||
stack-phosphorus = crushed phosporus
|
||||
|
|
@ -354,6 +354,8 @@
|
|||
min: 1
|
||||
max: 2
|
||||
|
||||
#Starlight Changes End
|
||||
|
||||
- type: entity
|
||||
name: web shield
|
||||
parent: BaseShield
|
||||
|
|
|
|||
|
|
@ -221,6 +221,9 @@
|
|||
enabled: false
|
||||
radius: 1.0
|
||||
color: orange
|
||||
- type: Tag
|
||||
tags:
|
||||
- EmergencyWelder #Starlight, distinction needed for use in crafting recipies.
|
||||
|
||||
- type: entity
|
||||
parent: [ Welder, BaseXenoborgContraband ]
|
||||
|
|
|
|||
|
|
@ -6,11 +6,11 @@
|
|||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: Pipe
|
||||
- tag: ModularBarrel #Starlight
|
||||
icon:
|
||||
sprite: Structures/Piping/Atmospherics/pipe.rsi
|
||||
state: pipeStraight
|
||||
name: construction-graph-tag-pipe
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
|
|
|
|||
|
|
@ -12,65 +12,72 @@
|
|||
- material: Plastic
|
||||
amount: 1
|
||||
doAfter: 0.5
|
||||
- tag: GlassShard
|
||||
name: construction-graph-tag-glass-shard
|
||||
icon:
|
||||
sprite: Objects/Materials/Shards/shard.rsi
|
||||
state: shard1
|
||||
doAfter: 0.5
|
||||
- tag: GlassShard
|
||||
name: construction-graph-tag-glass-shard
|
||||
icon:
|
||||
sprite: Objects/Materials/Shards/shard.rsi
|
||||
state: shard2
|
||||
doAfter: 0.5
|
||||
- tag: GlassShard
|
||||
name: construction-graph-tag-glass-shard
|
||||
icon:
|
||||
sprite: Objects/Materials/Shards/shard.rsi
|
||||
state: shard1
|
||||
doAfter: 0.5
|
||||
- tag: GlassShard
|
||||
name: construction-graph-tag-glass-shard
|
||||
icon:
|
||||
sprite: Objects/Materials/Shards/shard.rsi
|
||||
state: shard3
|
||||
doAfter: 0.5
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
doAfter: 0.5
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
doAfter: 0.5
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
doAfter: 0.5
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
doAfter: 0.5
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
doAfter: 0.5
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
# Starlight - Makeshift Weapons Update
|
||||
- material: Glass
|
||||
amount: 3
|
||||
doAfter: 1.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 4
|
||||
# - tag: GlassShard
|
||||
# name: construction-graph-tag-glass-shard
|
||||
# icon:
|
||||
# sprite: Objects/Materials/Shards/shard.rsi
|
||||
# state: shard1
|
||||
# doAfter: 0.5
|
||||
# - tag: GlassShard
|
||||
# name: construction-graph-tag-glass-shard
|
||||
# icon:
|
||||
# sprite: Objects/Materials/Shards/shard.rsi
|
||||
# state: shard2
|
||||
# doAfter: 0.5
|
||||
# - tag: GlassShard
|
||||
# name: construction-graph-tag-glass-shard
|
||||
# icon:
|
||||
# sprite: Objects/Materials/Shards/shard.rsi
|
||||
# state: shard1
|
||||
# doAfter: 0.5
|
||||
# - tag: GlassShard
|
||||
# name: construction-graph-tag-glass-shard
|
||||
# icon:
|
||||
# sprite: Objects/Materials/Shards/shard.rsi
|
||||
# state: shard3
|
||||
# doAfter: 0.5
|
||||
# - tag: Matchstick
|
||||
# name: construction-graph-tag-match-stick
|
||||
# icon:
|
||||
# sprite: Objects/Tools/matches.rsi
|
||||
# state: match_unlit
|
||||
# doAfter: 0.5
|
||||
# - tag: Matchstick
|
||||
# name: construction-graph-tag-match-stick
|
||||
# icon:
|
||||
# sprite: Objects/Tools/matches.rsi
|
||||
# state: match_unlit
|
||||
# doAfter: 0.5
|
||||
# - tag: Matchstick
|
||||
# name: construction-graph-tag-match-stick
|
||||
# icon:
|
||||
# sprite: Objects/Tools/matches.rsi
|
||||
# state: match_unlit
|
||||
# doAfter: 0.5
|
||||
# - tag: Matchstick
|
||||
# name: construction-graph-tag-match-stick
|
||||
# icon:
|
||||
# sprite: Objects/Tools/matches.rsi
|
||||
# state: match_unlit
|
||||
# doAfter: 0.5
|
||||
# - tag: Matchstick
|
||||
# name: construction-graph-tag-match-stick
|
||||
# icon:
|
||||
# sprite: Objects/Tools/matches.rsi
|
||||
# state: match_unlit
|
||||
# doAfter: 0.5
|
||||
# - tag: Matchstick
|
||||
# name: construction-graph-tag-match-stick
|
||||
# icon:
|
||||
# sprite: Objects/Tools/matches.rsi
|
||||
# state: match_unlit
|
||||
# END Starlight
|
||||
doAfter: 0.5
|
||||
- node: shell
|
||||
entity: ShellShotgunImprovised
|
||||
|
|
|
|||
|
|
@ -0,0 +1,111 @@
|
|||
- type: entity
|
||||
parent: BaseItem
|
||||
id: BaseMagazineBoxImprovised
|
||||
name: improvised ammunition box
|
||||
description: This looks suspiciously like a .20 magazine box with a crude bullet drawing ontop. Mixing ammo is not advised.
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
mayTransfer: true
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgePistol
|
||||
- CartridgePistolImprovised
|
||||
- CartridgeMagnum
|
||||
- CartridgeMagnumImprovised
|
||||
- CartridgeLightRifle
|
||||
- CartridgeLightRifleImprovised
|
||||
- ShellShotgun
|
||||
- ShellShotgunImprovised
|
||||
proto: null
|
||||
capacity: 40
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: ContainerContainer
|
||||
containers:
|
||||
ballistic-ammo: !type:Container
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Boxes/improvised.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: mag
|
||||
steps: 3
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
- type: Construction
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
node: shell
|
||||
- type: Tag
|
||||
tags:
|
||||
- ImprovisedAmmoBox
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxImprovised
|
||||
id: MagazineBoxImprovisedPistol
|
||||
name: improvised ammunition box (.35 auto improvised)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: CartridgePistolImprovised
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Construction
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
node: pistol
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxImprovised
|
||||
id: MagazineBoxImprovisedRifle
|
||||
name: improvised ammunition box (.30 rifle improvised)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: CartridgeLightRifleImprovised
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Construction
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
node: rifle
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxImprovised
|
||||
id: MagazineBoxImprovisedMagnum
|
||||
name: improvised ammunition box (.45 magnum improvised)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: CartridgeMagnumImprovised
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Construction
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
node: magnum
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxImprovised
|
||||
id: MagazineBoxImprovisedShotgun
|
||||
name: improvised ammunition box (.50 shotgun improvised)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunImprovised
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Construction
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
node: shotgun
|
||||
|
|
@ -18,3 +18,32 @@
|
|||
steps: 7
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
|
||||
|
||||
- type: entity
|
||||
id: SpeedLoaderMagnumImprovised
|
||||
name: "speed loader (.45 magnum)"
|
||||
parent: BaseSpeedLoaderMagnum
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: null
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgeMagnum
|
||||
- CartridgeMagnumImprovised
|
||||
capacity: 4
|
||||
- type: MagazineVisuals
|
||||
magState: base
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/improvised_magnum_speed_loader.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: [ "enum.GunVisualLayers.Base" ]
|
||||
- state: base-4
|
||||
map: [ "enum.GunVisualLayers.Mag" ]
|
||||
# Unshaded tip layer removed to avoid missing state errors (no corresponding 'base-unshaded-*' states in RSI)
|
||||
- type: Construction
|
||||
graph: ImprovisedMagnumSpeedLoaderGraph
|
||||
node: shell
|
||||
|
|
|
|||
|
|
@ -0,0 +1,74 @@
|
|||
- type: entity
|
||||
parent: ClothingHeadHelmetBase
|
||||
id: ClothingHeadHelmetMakeshift
|
||||
name: makeshift helmet
|
||||
description: Cobbled together steel held together with lv cables in the vauge shape of a helmet. Barely does anything.
|
||||
components:
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.97
|
||||
Slash: 0.96
|
||||
Piercing: 0.97
|
||||
Heat: 0.98
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/makeshift.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/Head/Helmets/makeshift.rsi
|
||||
- type: Construction
|
||||
graph: ClothingHeadHelmetMakeshiftGraph
|
||||
node: helmet
|
||||
|
||||
- type: entity
|
||||
parent: ClothingHeadHelmetBase
|
||||
id: ClothingHeadHelmetImprovised
|
||||
name: improvised helmet
|
||||
description: Interlocking steel plates provides some decent protection, but is still barely better than nothing.
|
||||
components:
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.95
|
||||
Slash: 0.93
|
||||
Piercing: 0.95
|
||||
Heat: 0.96
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/improvised.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/Head/Helmets/improvised.rsi
|
||||
|
||||
- type: entity
|
||||
parent: ClothingHeadHelmetBase
|
||||
id: ClothingHeadHelmetForged
|
||||
name: forged helmet
|
||||
description: A high-quality helmet made by some of the best Tidersmiths, it is finally worthwhile to have it on your head.
|
||||
components:
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.92
|
||||
Slash: 0.90
|
||||
Piercing: 0.92
|
||||
Heat: 0.94
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/forged.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/Head/Helmets/forged.rsi
|
||||
|
||||
- type: entity
|
||||
parent: ClothingHeadHelmetBase
|
||||
id: ClothingHeadHelmetPaladin
|
||||
name: paladin helmet
|
||||
description: No true paladin can go without their helmet!
|
||||
components:
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.90
|
||||
Slash: 0.88
|
||||
Piercing: 0.90
|
||||
Heat: 0.92
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/paladin.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/Head/Helmets/paladin.rsi
|
||||
|
|
@ -0,0 +1,91 @@
|
|||
- type: entity
|
||||
parent: ClothingOuterArmorForged
|
||||
id: ClothingOuterArmorMakeshift
|
||||
name: makeshift vest
|
||||
description: Might catch a bullet. Might.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/makeshift.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/makeshift.rsi
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.90
|
||||
Slash: 0.80
|
||||
Piercing: 0.90
|
||||
Heat: 0.95
|
||||
- type: ClothingSpeedModifier
|
||||
walkModifier: 0.90
|
||||
sprintModifier: 0.90
|
||||
- type: ExplosionResistance
|
||||
damageCoefficient: 0.95
|
||||
- type: Construction
|
||||
graph: ClothingOuterArmorMakeshiftGraph
|
||||
node: vest
|
||||
|
||||
- type: entity
|
||||
parent: ClothingOuterArmorForged
|
||||
id: ClothingOuterArmorImprovised
|
||||
name: improvised vest
|
||||
description: Interlocking metal plates ensure you're decently protected against stabs, but not much else.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/improvised.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/improvised.rsi
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.85
|
||||
Slash: 0.70
|
||||
Piercing: 0.85
|
||||
Heat: 0.90
|
||||
- type: ClothingSpeedModifier
|
||||
walkModifier: 0.95
|
||||
sprintModifier: 0.95
|
||||
- type: ExplosionResistance
|
||||
damageCoefficient: 0.95
|
||||
|
||||
- type: entity
|
||||
parent: [ClothingOuterBaseMedium, AllowSuitStorageClothing]
|
||||
id: ClothingOuterArmorForged
|
||||
name: forged vest
|
||||
description: A product of high-quality tidesmithing, the additional leather padding and the swap for plasteel over steel ensures the armor is lightweight and effective.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/forged.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/forged.rsi
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.75
|
||||
Slash: 0.65
|
||||
Piercing: 0.70
|
||||
Heat: 0.85
|
||||
- type: ExplosionResistance
|
||||
damageCoefficient: 0.90
|
||||
|
||||
- type: entity
|
||||
parent: [ClothingOuterBaseMedium, AllowSuitStorageClothing]
|
||||
id: ClothingOuterArmorPaladin
|
||||
name: paladin suit
|
||||
description: Be the paladin you want to be! Swing swords in maints at the terrified security officer! Battle MONSTERS that are totally not vent creatures! Get shot by lasers and die-! Wait what?
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/paladin.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/paladin.rsi
|
||||
- type: Armor
|
||||
modifiers:
|
||||
coefficients:
|
||||
Blunt: 0.70
|
||||
Slash: 0.50
|
||||
Piercing: 0.55
|
||||
Heat: 0.85
|
||||
- type: ClothingSpeedModifier
|
||||
walkModifier: 0.85
|
||||
sprintModifier: 0.85
|
||||
- type: ExplosionResistance
|
||||
damageCoefficient: 0.85
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
- type: entity
|
||||
parent: MaterialBase
|
||||
id: CrushedPhosphorus
|
||||
name: crushed phosphorus
|
||||
suffix: Full
|
||||
components:
|
||||
- type: Material
|
||||
- type: Stack
|
||||
stackType: CrushedPhosphorus
|
||||
baseLayer: base
|
||||
layerStates:
|
||||
- phosphorus
|
||||
- phosphorus_2
|
||||
- phosphorus_3
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Materials/phosphorus.rsi
|
||||
state: phosphorus_3
|
||||
layers:
|
||||
- state: phosphorus_3
|
||||
map: ["base"]
|
||||
- type: Appearance
|
||||
- type: Item
|
||||
heldPrefix: phosphorus
|
||||
|
||||
- type: entity
|
||||
parent: CrushedPhosphorus
|
||||
id: CrushedPhosphorus10
|
||||
suffix: 10
|
||||
components:
|
||||
- type: Sprite
|
||||
state: phosphorus
|
||||
- type: Stack
|
||||
count: 10
|
||||
|
||||
- type: entity
|
||||
parent: CrushedPhosphorus
|
||||
id: CrushedPhosphorus1
|
||||
suffix: Single
|
||||
components:
|
||||
- type: Sprite
|
||||
state: phosphorus
|
||||
- type: Stack
|
||||
count: 1
|
||||
- type: Construction
|
||||
graph: CrushedPhosphorus
|
||||
node: crushed
|
||||
|
|
@ -0,0 +1,127 @@
|
|||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedForgedShotgun
|
||||
name: assembled forged shotgun
|
||||
description: Just needs the welding to keep everything in place.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
shape:
|
||||
- 0,0,4,0
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Shotguns/forged_shotgun.rsi
|
||||
state: ishotgunstep2
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WeaponShotgunForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedShotgunGraph
|
||||
node: shotgun
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedPistolForged
|
||||
name: forged pistol parts
|
||||
description: Some assembly may be reqiured. Needs welding.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/forged_pistol.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WeaponPistolForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedPistolGraph
|
||||
node: shotgun
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedRevolverForged
|
||||
name: forged revolver parts
|
||||
description: Some assembly may be reqiured. Needs welding.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/forged_revolver.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WeaponRevolverForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedRevolverGraph
|
||||
node: shotgun
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedSubMachineGunForged
|
||||
name: forged SMG parts
|
||||
description: Some assembly may be reqiured. Needs welding.
|
||||
components:
|
||||
- type: Item
|
||||
size: Large
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/forged_smg.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WeaponSubMachineGunForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedSMGGraph
|
||||
node: shotgun
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedSniperForged
|
||||
name: forged sniper parts
|
||||
description: Some assembly may be reqiured. Needs welding.
|
||||
components:
|
||||
- type: Item
|
||||
size: Large
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/forged_rifle.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WeaponSniperForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedSniperGraph
|
||||
node: shotgun
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: ModularBarrel
|
||||
name: modular barrel
|
||||
description: A vital component in guncrafting.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
shape:
|
||||
- 0,0,4,0
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- ModularBarrel
|
||||
- type: Construction
|
||||
graph: ModularBarrelGraph
|
||||
node: shotgun
|
||||
|
|
@ -0,0 +1,491 @@
|
|||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedCrowbar
|
||||
name: crowbar parts
|
||||
description: Needs welding to hold it together.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_crowbar.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: CrowbarImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedCrowbarGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedScrewdriver
|
||||
name: screwdriver parts
|
||||
description: Needs welding to hold it together.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_screwdriver.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ScrewdriverImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedScrewdriverGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedWirecutter
|
||||
name: wirecutter parts
|
||||
description: Needs welding to hold it together.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_wirecutters.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WirecutterImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedWirecutterGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedWrench
|
||||
name: wrench parts
|
||||
description: Needs welding to hold it together.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_wrench.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: WrenchImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedWrenchGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedMultitool
|
||||
name: multitool parts
|
||||
description: Needs welding and some patience to put it all together.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_multitool.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: MultitoolImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedMultitoolGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedOmnitool
|
||||
name: improvised omnitool parts
|
||||
description: What are you doing..? Needs.. to be welded.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: OmnitoolImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedOmnitoolGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedForgedOmnitool
|
||||
name: forged omnitool parts
|
||||
description: You are either crazy, or a psychopath. Likely both, needs to be welded.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: OmnitoolForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedOmnitoolGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: HiltWood
|
||||
name: wooden hilt
|
||||
description: People will try to convince you otherwise, but wooden handles are not part of a high-quality sword, nor a knife.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Misc/wooden_hilt.rsi
|
||||
state: icon
|
||||
- type: Tag
|
||||
tags:
|
||||
- HiltWood
|
||||
- type: Construction
|
||||
graph: HiltWoodGraph
|
||||
node: hilt
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: HiltPlasteel
|
||||
name: plasteel hilt
|
||||
description: Part of high-quality sword & knife crafting.
|
||||
components:
|
||||
- type: Item
|
||||
size: Small
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Misc/plasteel_hilt.rsi
|
||||
state: icon
|
||||
- type: Tag
|
||||
tags:
|
||||
- HiltPlasteel
|
||||
- type: Construction
|
||||
graph: HiltPlasteelGraph
|
||||
node: hilt
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: BladeSteel
|
||||
name: steel blade
|
||||
description: Doesn't look very sharp..
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Misc/steel_blade.rsi
|
||||
state: icon
|
||||
- type: Tag
|
||||
tags:
|
||||
- BladeSteel
|
||||
- type: Construction
|
||||
graph: BladeSteelGraph
|
||||
node: blade
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: BladePlasteel
|
||||
name: plasteel blade
|
||||
description: Ouch! Just touching the edge can cut you.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Misc/plasteel_blade.rsi
|
||||
state: icon
|
||||
- type: Tag
|
||||
tags:
|
||||
- BladePlasteel
|
||||
- type: Construction
|
||||
graph: BladePlasteelGraph
|
||||
node: blade
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedSwordForged
|
||||
name: forged sword parts
|
||||
description: Simply needs a bit of welding around the edges.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_sword.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: SwordForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: SwordForgedGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClaymoreForged
|
||||
name: tidebreaker parts
|
||||
description: Simply needs a bit of welding around the edges.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/tidebreaker.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClaymoreForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClaymoreForgedGraph
|
||||
node: tool
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedImprovisedShield
|
||||
name: improvised shield parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/improvised_shield.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ImprovisedShield
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ImprovisedShieldGraph
|
||||
node: shield
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedForgedShieldBuckler
|
||||
name: forged buckler shield parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_buckler_shield.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ForgedShieldBuckler
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedShieldBucklerGraph
|
||||
node: shield
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedForgedShieldTower
|
||||
name: forged tower shield parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_tower_shield.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ForgedShieldTower
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ForgedShieldTowerGraph
|
||||
node: shield
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedPaladinShield
|
||||
name: paladin shield parts
|
||||
description: The shield of a true paladin..! In pieces. Needs some welding.
|
||||
components:
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_shield.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: PaladinShield
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: PaladinShieldGraph
|
||||
node: shield
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedPaladinShieldGreat
|
||||
name: paladin greatshield parts
|
||||
description: You're either crazy, or want to become a mobile emplacement. Needs a lot of welding..
|
||||
components:
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_greatshield.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: PaladinShieldGreat
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: PaladinShieldGreatGraph
|
||||
node: shield
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClothingOuterArmorImprovised
|
||||
name: improvised vest parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/improvised.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClothingOuterArmorImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClothingOuterArmorImprovisedGraph
|
||||
node: vest
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClothingOuterArmorForged
|
||||
name: forged vest parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/forged.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClothingOuterArmorForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClothingOuterArmorForgedGraph
|
||||
node: vest
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClothingOuterArmorPaladin
|
||||
name: paladin suit parts
|
||||
description: A LOT of assembly required, minimal welding needed. Become the paladin you've always wanted to be!
|
||||
components:
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/OuterClothing/Armor/paladin.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClothingOuterArmorPaladin
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClothingOuterArmorPaladinGraph
|
||||
node: vest
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClothingHeadHelmetImprovised
|
||||
name: improvised helmet parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/improvised.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClothingHeadHelmetImprovised
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClothingHeadHelmetImprovisedGraph
|
||||
node: helmet
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClothingHeadHelmetForged
|
||||
name: forged helmet parts
|
||||
description: Some assembly required, and welding too.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/forged.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClothingHeadHelmetForged
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClothingHeadHelmetForgedGraph
|
||||
node: helmet
|
||||
|
||||
- type: entity
|
||||
parent: BaseItem
|
||||
id: UnfinishedClothingHeadHelmetPaladin
|
||||
name: paladin helmet parts
|
||||
description: No Paladin LARP is good without the helmet! Needs welding.
|
||||
components:
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Clothing/Head/Helmets/paladin.rsi
|
||||
state: unfinished
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: ClothingHeadHelmetPaladin
|
||||
- type: Tag
|
||||
tags:
|
||||
- Metal
|
||||
- type: Construction
|
||||
graph: ClothingHeadHelmetPaladinGraph
|
||||
node: helmet
|
||||
|
|
@ -0,0 +1,304 @@
|
|||
- type: entity
|
||||
name: paladin shield
|
||||
parent: BaseItem
|
||||
id: PaladinShield
|
||||
description: A shield for a true paladin! Good at deflecting hits with swords and absorbing the impact from bats, but not much else.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_shield.rsi
|
||||
state: base
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_shield.rsi
|
||||
size: Ginormous
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_shield.rsi
|
||||
quickEquip: false
|
||||
slots:
|
||||
- Back
|
||||
- suitStorage
|
||||
- type: Blocking
|
||||
passiveBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.7
|
||||
Slash: 0.5 #Encourages long swordfights, which I really, really want to see.
|
||||
Piercing: 0.8
|
||||
Heat: 0.85
|
||||
activeBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.5
|
||||
Slash: 0.3
|
||||
Piercing: 0.7
|
||||
Heat: 0.75
|
||||
flatReductions:
|
||||
Blunt: 1
|
||||
Slash: 1
|
||||
Piercing: 1
|
||||
Heat: 1
|
||||
- type: MeleeWeapon
|
||||
damage:
|
||||
types:
|
||||
Blunt: 14 #Bonk!
|
||||
soundHit:
|
||||
path: "/Audio/Weapons/smash.ogg"
|
||||
- type: Damageable
|
||||
damageContainer: Shield
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 160
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 120
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
collection: MetalBreak
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetPlasteel:
|
||||
min: 4
|
||||
max: 13
|
||||
SheetSteel:
|
||||
min: 5
|
||||
max: 13
|
||||
|
||||
- type: entity
|
||||
name: paladin greatshield
|
||||
parent: PaladinShield
|
||||
id: PaladinShieldGreat
|
||||
description: You're up against the wall and I! AM! THE! FUCKING! WALL!
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_greatshield.rsi
|
||||
state: base
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_greatshield.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/paladin_greatshield.rsi
|
||||
- type: Blocking
|
||||
passiveBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.7
|
||||
Slash: 0.7
|
||||
Piercing: 0.7
|
||||
Heat: 0.85
|
||||
activeBlockModifier:
|
||||
coefficients: #Insanely high resist because normal shields suck when raising. This is a WALL.
|
||||
Blunt: 0.1
|
||||
Slash: 0.1
|
||||
Piercing: 0.1
|
||||
Heat: 0.75 # Achilles Heel
|
||||
- type: MeleeWeapon
|
||||
attackRate: 0.50 # Large and heavy but god help you if someone hits you with this thing.
|
||||
damage:
|
||||
types:
|
||||
Blunt: 20
|
||||
- type: ClothingSpeedModifier
|
||||
walkModifier: 0.7
|
||||
sprintModifier: 0.5
|
||||
- type: HeldSpeedModifier
|
||||
- type: Damageable
|
||||
damageContainer: Shield
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 300
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 250 #Combined with damage resistances, IF raised, can tank 6 lector magdumps before finally breaking. You will STAM CRIT before then. If just held, or a laser is used it'll function like a normal shield more or less.
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
collection: MetalBreak
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetPlasteel:
|
||||
min: 6
|
||||
max: 20
|
||||
SheetSteel:
|
||||
min: 4
|
||||
max: 15
|
||||
SheetGlass:
|
||||
min: 2
|
||||
max: 3
|
||||
|
||||
- type: entity
|
||||
name: forged buckler shield
|
||||
parent: PaladinShield
|
||||
id: ForgedShieldBuckler
|
||||
description: Made from the best plasteel the tidersmiths could offer. Decent all-arounder, however being made out of solid metal makes it get hot real fast.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_buckler_shield.rsi
|
||||
state: base
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_buckler_shield.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_buckler_shield.rsi
|
||||
- type: Blocking
|
||||
passiveBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.7
|
||||
Slash: 0.6
|
||||
Piercing: 0.7
|
||||
Heat: 0.9
|
||||
activeBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.6
|
||||
Slash: 0.5
|
||||
Piercing: 0.6
|
||||
Heat: 0.8
|
||||
- type: MeleeWeapon
|
||||
damage:
|
||||
types:
|
||||
Blunt: 12
|
||||
- type: Damageable
|
||||
damageContainer: Shield
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 140
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 100
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
collection: MetalBreak
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetPlasteel:
|
||||
min: 2
|
||||
max: 6
|
||||
SheetSteel:
|
||||
min: 1
|
||||
max: 4
|
||||
|
||||
- type: entity
|
||||
name: forged tower shield
|
||||
parent: ForgedShieldBuckler
|
||||
id: ForgedShieldTower
|
||||
description: Tall and menacing. A bit on the heavy side, however.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_tower_shield.rsi
|
||||
state: base
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_tower_shield.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_tower_shield.rsi
|
||||
- type: MeleeWeapon
|
||||
attackRate: 0.75
|
||||
damage:
|
||||
types:
|
||||
Blunt: 15
|
||||
- type: ClothingSpeedModifier
|
||||
walkModifier: 1
|
||||
sprintModifier: 0.9
|
||||
- type: HeldSpeedModifier
|
||||
- type: Damageable
|
||||
damageContainer: Shield
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 200
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 180
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
collection: MetalBreak
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetPlasteel:
|
||||
min: 2
|
||||
max: 10
|
||||
SheetSteel:
|
||||
min: 4
|
||||
max: 10
|
||||
SheetGlass:
|
||||
min: 1
|
||||
max: 2
|
||||
|
||||
- type: entity
|
||||
name: improvised shield
|
||||
parent: PaladinShield
|
||||
id: ImprovisedShield
|
||||
description: Steel welded together in a interlocking pattern to hold up better to various kinds of blows. Don't expect it to do well in a gunfight, however.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/improvised_shield.rsi
|
||||
state: base
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Melee/improvised_shield.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/improvised_shield.rsi
|
||||
- type: Blocking
|
||||
passiveBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.8
|
||||
Slash: 0.7
|
||||
Piercing: 0.9
|
||||
Heat: 0.95
|
||||
activeBlockModifier:
|
||||
coefficients:
|
||||
Blunt: 0.7
|
||||
Slash: 0.6
|
||||
Piercing: 0.8
|
||||
Heat: 0.85
|
||||
- type: MeleeWeapon
|
||||
damage:
|
||||
types:
|
||||
Blunt: 10
|
||||
- type: Damageable
|
||||
damageContainer: Shield
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 100
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 60
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
collection: MetalBreak
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetSteel:
|
||||
min: 2
|
||||
max: 3
|
||||
- type: Construction
|
||||
graph: MakeshiftShield
|
||||
node: makeshiftShield
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
- type: entity
|
||||
name: makeshift crowbar
|
||||
parent: BaseItem
|
||||
id: CrowbarMakeshift
|
||||
description: Barely better than nothing. Could be made into something greater with a welder, though..
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/crowbar_drop.ogg
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: base
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
damage:
|
||||
types:
|
||||
Blunt: 8
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Prying
|
||||
- type: ToolTileCompatible
|
||||
delay: 4
|
||||
- type: Prying
|
||||
speedModifier: 0.25
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: CrowbarWrenchMakeshift
|
||||
- type: Construction
|
||||
graph: MakeshiftCrowbarGraph
|
||||
node: tool
|
||||
- type: Tag
|
||||
tags:
|
||||
- Crowbar
|
||||
|
||||
- type: entity
|
||||
name: improvised crowbar
|
||||
parent: CrowbarMakeshift
|
||||
id: CrowbarImprovised
|
||||
description: A few pieces of metal welded together and sharpened at the edges. Not the best tool, but it'll do.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_crowbar.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/improvised_crowbar.rsi
|
||||
storedSprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_crowbar.rsi
|
||||
state: storage
|
||||
- type: ToolTileCompatible
|
||||
delay: 2
|
||||
- type: Prying
|
||||
speedModifier: 0.50
|
||||
|
|
@ -0,0 +1,706 @@
|
|||
- type: entity
|
||||
name: makeshift crowbar-wrench
|
||||
parent: BaseItem
|
||||
id: CrowbarWrenchMakeshift
|
||||
description: A makeshift combination of tools that's still only marginally better than nothing.
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/crowbar_drop.ogg
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: wrench
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
- type: Prying
|
||||
enabled: true # Defaulting to active to match likely test setup.
|
||||
speedModifier: 0.25
|
||||
- type: ToolTileCompatible
|
||||
delay: 4
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Prying
|
||||
speedModifier: 0.25
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
damage:
|
||||
types:
|
||||
Blunt: 9
|
||||
- type: MultipleTool
|
||||
statusShowBehavior: true
|
||||
entries:
|
||||
- behavior: Prying
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: wrench
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
|
||||
- type: entity
|
||||
name: makeshift crowbar-wrench-screwdriver
|
||||
parent: CrowbarWrenchMakeshift
|
||||
id: CrowbarWrenchScrewdriverMakeshift
|
||||
description: It's.. useful?
|
||||
components:
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
damage:
|
||||
types:
|
||||
Blunt: 9
|
||||
Slash: 1
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: screwdriver
|
||||
- type: MultipleTool
|
||||
statusShowBehavior: true
|
||||
entries:
|
||||
- behavior: Prying
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: screwdriver
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
- behavior: Screwing
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: screwdriverflipped
|
||||
- behavior: Anchoring
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: screwdriverflipped
|
||||
useSound:
|
||||
path: /Audio/Items/ratchet.ogg
|
||||
- type: ToolRefinable
|
||||
refineResult:
|
||||
- id: OmnitoolMakeshift
|
||||
- type: Tag
|
||||
tags:
|
||||
- Crowbar
|
||||
- Wrench
|
||||
- Screwdriver
|
||||
|
||||
- type: entity
|
||||
name: makeshift omni-tool
|
||||
parent: CrowbarWrenchScrewdriverMakeshift
|
||||
id: OmnitoolMakeshift
|
||||
description: Who would've thought a red toolbox would have so many uses?
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Prying
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
damage:
|
||||
types:
|
||||
Blunt: 9
|
||||
Slash: 2
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: wirecutter
|
||||
- type: MultipleTool
|
||||
statusShowBehavior: true
|
||||
entries:
|
||||
- behavior: Prying
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: wirecutter
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
- behavior: Cutting
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/makeshift_omnitool.rsi
|
||||
state: wirecutterside
|
||||
useSound:
|
||||
path: /Audio/Items/wirecutter.ogg
|
||||
- type: Tag
|
||||
tags:
|
||||
- Crowbar
|
||||
- Wrench
|
||||
- Screwdriver
|
||||
- Wirecutter
|
||||
|
||||
- type: entity
|
||||
name: improvised screwdriver
|
||||
parent: BaseItem
|
||||
id: ScrewdriverImprovised
|
||||
description: A handful of metal with some cloth wrapped around it, and sharpened at the tip. It works.
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/screwdriver_drop.ogg
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_screwdriver.rsi
|
||||
state: screwdriver
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/improvised_screwdriver.rsi
|
||||
storedRotation: -90
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -90
|
||||
attackRate: 1
|
||||
damage:
|
||||
types:
|
||||
Slash: 6 # I don't care if base screwdriver does pierce, that's dumb.
|
||||
soundHit:
|
||||
path: "/Audio/Weapons/bladeslice.ogg"
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Screwing
|
||||
useSound:
|
||||
collection: Screwdriver
|
||||
speedModifier: 0.50
|
||||
- type: Tag
|
||||
tags:
|
||||
- Screwdriver
|
||||
|
||||
- type: entity
|
||||
name: improvised wirecutter
|
||||
parent: BaseItem
|
||||
id: WirecutterImprovised
|
||||
description: The metal's just sharp enough to cut through thick wires.
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/wirecutter_drop.ogg
|
||||
- type: Tag
|
||||
tags:
|
||||
- PlantSampleTaker
|
||||
- Wirecutter
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_wirecutters.rsi
|
||||
state: cutters
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -90
|
||||
damage:
|
||||
types:
|
||||
Slash: 2 #WHY IS WIZ SO OBSESSED WITH PIERCE
|
||||
soundHit:
|
||||
path: "/Audio/Items/wirecutter.ogg"
|
||||
attackRate: 2
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/improvised_wirecutters.rsi
|
||||
storedRotation: -90
|
||||
- type: ToolTileCompatible
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Cutting
|
||||
useSound:
|
||||
path: /Audio/Items/wirecutter.ogg
|
||||
speedModifier: 0.50
|
||||
|
||||
- type: entity
|
||||
name: improvised wrench
|
||||
parent: BaseItem
|
||||
id: WrenchImprovised
|
||||
description: One size fits all.. Kinda.
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/wrench_drop.ogg
|
||||
- type: Tag
|
||||
tags:
|
||||
- Wrench
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_wrench.rsi
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/improvised_wrench.rsi
|
||||
storedSprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_wrench.rsi
|
||||
state: storage
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: 135
|
||||
attackRate: 1.5
|
||||
damage:
|
||||
types:
|
||||
Blunt: 4.5
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Anchoring
|
||||
useSound:
|
||||
path: /Audio/Items/ratchet.ogg
|
||||
speedModifier: 0.50
|
||||
|
||||
- type: entity
|
||||
name: improvised multitool
|
||||
parent: BaseItem
|
||||
id: MultitoolImprovised
|
||||
description: A not so advanced tool to break into places. Why else would you have this?
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/multitool_drop.ogg
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_multitool.rsi
|
||||
layers:
|
||||
- state: icon
|
||||
- state: green-unlit
|
||||
shader: unshaded
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/improvised_multitool.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Tools/improvised_multitool.rsi
|
||||
quickEquip: false
|
||||
slots:
|
||||
- Belt
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Pulsing
|
||||
- type: NetworkConfigurator
|
||||
- type: ActivatableUI
|
||||
key: enum.NetworkConfiguratorUiKey.List
|
||||
inHandsOnly: true
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
enum.NetworkConfiguratorUiKey.List:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
enum.NetworkConfiguratorUiKey.Configure:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
enum.NetworkConfiguratorUiKey.Link:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
- type: Tag
|
||||
tags:
|
||||
- Multitool
|
||||
- DoorElectronicsConfigurator
|
||||
|
||||
- type: entity
|
||||
name: improvised omnitool
|
||||
parent: BaseItem
|
||||
id: OmnitoolImprovised
|
||||
description: An unholy abomination only second to the great Throngler itself.
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/crowbar_drop.ogg
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
layers:
|
||||
- state: icon
|
||||
- state: welder_flame
|
||||
visible: false
|
||||
shader: unshaded
|
||||
map: ["enum.ToggleableVisuals.Layer"]
|
||||
- type: RefillableSolution
|
||||
solution: Welder
|
||||
- type: Tool
|
||||
useSound:
|
||||
collection: Welder
|
||||
qualities: Welding
|
||||
- type: SolutionContainerManager
|
||||
solutions:
|
||||
Welder:
|
||||
reagents:
|
||||
- ReagentId: WeldingFuel
|
||||
Quantity: 50
|
||||
maxVol: 50
|
||||
- type: Welder
|
||||
- type: GenericVisualizer
|
||||
visuals:
|
||||
enum.ToggleableVisuals.Enabled:
|
||||
enum.ToggleableVisuals.Layer:
|
||||
True: { visible: true }
|
||||
False: { visible: false }
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
size: Normal
|
||||
- type: ItemSwitch
|
||||
state: Prying
|
||||
states:
|
||||
prying: !type:ItemSwitchState
|
||||
verb: Prying
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: icon
|
||||
components:
|
||||
- type: ToolTileCompatible
|
||||
delay: 1
|
||||
- type: Prying
|
||||
speedModifier: 0.75
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Slash: 5
|
||||
|
||||
screwing: !type:ItemSwitchState
|
||||
verb: Screwing
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: icon
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Screwing
|
||||
useSound:
|
||||
collection: Screwdriver
|
||||
speedModifier: 0.75
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Slash: 5
|
||||
|
||||
cutting: !type:ItemSwitchState
|
||||
verb: Cutting
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: icon
|
||||
components:
|
||||
- type: ToolTileCompatible
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Cutting
|
||||
useSound:
|
||||
path: /Audio/Items/wirecutter.ogg
|
||||
speedModifier: 0.75
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Slash: 5
|
||||
|
||||
anchoring: !type:ItemSwitchState
|
||||
verb: Anchoring
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: icon
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Anchoring
|
||||
useSound:
|
||||
path: /Audio/Items/ratchet.ogg
|
||||
speedModifier: 0.75
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Slash: 5
|
||||
|
||||
pulsing: !type:ItemSwitchState
|
||||
verb: Pulsing
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: icon
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Pulsing
|
||||
- type: NetworkConfigurator
|
||||
- type: ActivatableUI
|
||||
key: enum.NetworkConfiguratorUiKey.List
|
||||
inHandsOnly: true
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
enum.NetworkConfiguratorUiKey.List:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
enum.NetworkConfiguratorUiKey.Configure:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
enum.NetworkConfiguratorUiKey.Link:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Slash: 5
|
||||
|
||||
welding: !type:ItemSwitchState
|
||||
verb: Welding
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/improvised_omnitool.rsi
|
||||
state: icon
|
||||
components:
|
||||
- type: ItemToggle
|
||||
predictable: false
|
||||
soundActivate:
|
||||
collection: WelderOn
|
||||
soundDeactivate:
|
||||
collection: WelderOff
|
||||
- type: ItemToggleSize
|
||||
activatedSize: Large
|
||||
- type: ItemToggleHot
|
||||
- type: ComponentToggler
|
||||
components:
|
||||
- type: DisarmMalus
|
||||
malus: 0.6
|
||||
- type: ToggleableLightVisuals
|
||||
spriteLayer: flame
|
||||
- type: RefillableSolution
|
||||
solution: Welder
|
||||
- type: Tool
|
||||
useSound:
|
||||
collection: Welder
|
||||
qualities: Welding
|
||||
speedModifier: 0.75
|
||||
- type: PointLight
|
||||
enabled: false
|
||||
radius: 1.5
|
||||
color: orange
|
||||
netsync: false
|
||||
- type: ItemTogglePointLight
|
||||
- type: Appearance
|
||||
- type: RequiresEyeProtection
|
||||
- type: IgnitionSource
|
||||
temperature: 700
|
||||
- type: ItemToggleMeleeWeapon
|
||||
activatedSoundOnHit:
|
||||
path: /Audio/Weapons/Guns/Hits/energy_meat1.ogg
|
||||
activatedSoundOnHitNoDamage:
|
||||
path: /Audio/Weapons/Guns/Hits/energy_meat1.ogg
|
||||
deactivatedSoundOnHitNoDamage:
|
||||
collection: MetalThud
|
||||
activatedDamage:
|
||||
types: # Have you ever been attacked by a lit welder, a sharp object, and a blunt crowbar all at the same time? That hurts.
|
||||
Blunt: 4
|
||||
Slash: 4
|
||||
Heat: 5
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Slash: 5
|
||||
- type: Tag
|
||||
tags:
|
||||
- Multitool
|
||||
- DoorElectronicsConfigurator
|
||||
- Wrench
|
||||
- PlantSampleTaker
|
||||
- Wirecutter
|
||||
- Screwdriver
|
||||
|
||||
- type: entity
|
||||
name: forged omnitool
|
||||
parent: BaseItem
|
||||
id: OmnitoolForged
|
||||
description: Some absolute psychopath decided to saw off the heads of all tools they could find and smash it together into a makeshift drill. Looks nice, considering it's origins.
|
||||
components:
|
||||
- type: EmitSoundOnLand
|
||||
sound:
|
||||
path: /Audio/Items/crowbar_drop.ogg
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
layers:
|
||||
- state: icon
|
||||
- state: welder_flame
|
||||
visible: false
|
||||
shader: unshaded
|
||||
map: ["enum.ToggleableVisuals.Layer"]
|
||||
- type: RefillableSolution
|
||||
solution: Welder
|
||||
- type: Tool
|
||||
useSound:
|
||||
collection: Welder
|
||||
qualities: Welding
|
||||
- type: SolutionContainerManager
|
||||
solutions:
|
||||
Welder:
|
||||
reagents:
|
||||
- ReagentId: WeldingFuel
|
||||
Quantity: 50
|
||||
maxVol: 100
|
||||
- type: Welder
|
||||
- type: GenericVisualizer
|
||||
visuals:
|
||||
enum.ToggleableVisuals.Enabled:
|
||||
enum.ToggleableVisuals.Layer:
|
||||
True: { visible: true }
|
||||
False: { visible: false }
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
size: Normal
|
||||
- type: ItemSwitch
|
||||
state: Prying
|
||||
states:
|
||||
prying: !type:ItemSwitchState
|
||||
verb: Prying
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: crowbar
|
||||
components:
|
||||
- type: ToolTileCompatible
|
||||
delay: 1
|
||||
- type: Prying
|
||||
useSound:
|
||||
path: /Audio/Items/crowbar.ogg
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 9 #one extra damage, as a treat
|
||||
|
||||
screwing: !type:ItemSwitchState
|
||||
verb: Screwing
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: screwdriver
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Screwing
|
||||
useSound:
|
||||
collection: Screwdriver
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Slash: 7
|
||||
|
||||
cutting: !type:ItemSwitchState
|
||||
verb: Cutting
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: cutters
|
||||
components:
|
||||
- type: ToolTileCompatible
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Cutting
|
||||
useSound:
|
||||
path: /Audio/Items/wirecutter.ogg
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Slash: 4
|
||||
|
||||
anchoring: !type:ItemSwitchState
|
||||
verb: Anchoring
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: wrench
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Anchoring
|
||||
useSound:
|
||||
path: /Audio/Items/ratchet.ogg
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5.5
|
||||
|
||||
pulsing: !type:ItemSwitchState
|
||||
verb: Pulsing
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: multi
|
||||
components:
|
||||
- type: Tool
|
||||
qualities:
|
||||
- Pulsing
|
||||
- type: NetworkConfigurator
|
||||
- type: ActivatableUI
|
||||
key: enum.NetworkConfiguratorUiKey.List
|
||||
inHandsOnly: true
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
enum.NetworkConfiguratorUiKey.List:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
enum.NetworkConfiguratorUiKey.Configure:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
enum.NetworkConfiguratorUiKey.Link:
|
||||
type: NetworkConfiguratorBoundUserInterface
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
|
||||
welding: !type:ItemSwitchState
|
||||
verb: Welding
|
||||
sprite:
|
||||
sprite: _Starlight/Objects/Tools/forged_omnitool.rsi
|
||||
state: welder
|
||||
components:
|
||||
- type: ItemToggle
|
||||
predictable: false
|
||||
soundActivate:
|
||||
collection: WelderOn
|
||||
soundDeactivate:
|
||||
collection: WelderOff
|
||||
- type: ItemToggleSize
|
||||
activatedSize: Large
|
||||
- type: ItemToggleHot
|
||||
- type: ComponentToggler
|
||||
components:
|
||||
- type: DisarmMalus
|
||||
malus: 0.6
|
||||
- type: ToggleableLightVisuals
|
||||
spriteLayer: flame
|
||||
- type: RefillableSolution
|
||||
solution: Welder
|
||||
- type: Tool
|
||||
useSound:
|
||||
collection: Welder
|
||||
qualities: Welding
|
||||
- type: PointLight
|
||||
enabled: false
|
||||
radius: 2.5
|
||||
color: orange
|
||||
netsync: false
|
||||
- type: ItemTogglePointLight
|
||||
- type: Appearance
|
||||
- type: RequiresEyeProtection
|
||||
- type: IgnitionSource
|
||||
temperature: 700
|
||||
- type: ItemToggleMeleeWeapon
|
||||
activatedSoundOnHit:
|
||||
path: /Audio/Weapons/Guns/Hits/energy_meat1.ogg
|
||||
activatedSoundOnHitNoDamage:
|
||||
path: /Audio/Weapons/Guns/Hits/energy_meat1.ogg
|
||||
deactivatedSoundOnHitNoDamage:
|
||||
collection: MetalThud
|
||||
activatedDamage:
|
||||
types:
|
||||
Heat: 10
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: -135
|
||||
soundHit:
|
||||
collection: MetalThud
|
||||
damage:
|
||||
types:
|
||||
Blunt: 5
|
||||
- type: Tag
|
||||
tags:
|
||||
- Multitool
|
||||
- DoorElectronicsConfigurator
|
||||
- Wrench
|
||||
- PlantSampleTaker
|
||||
- Wirecutter
|
||||
- Screwdriver
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: entity
|
||||
id: CartridgeLightRifleImprovised
|
||||
name: improvised cartridge (.30 rifle)
|
||||
description: A handmade rifle bullet, uses phosphorus as a propellent instead of gunpowder.
|
||||
parent: BaseCartridgeLightRifle
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Casings/improvised_casing.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: [ "enum.AmmoVisualLayers.Base" ]
|
||||
- state: tip
|
||||
map: [ "enum.AmmoVisualLayers.Tip" ]
|
||||
color: "#717171"
|
||||
- type: Tag
|
||||
tags:
|
||||
- Cartridge
|
||||
- CartridgeLightRifleImprovised
|
||||
- type: Construction
|
||||
graph: ImprovisedLightRifleBulletGraph
|
||||
node: shell
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: entity
|
||||
id: CartridgeMagnumImprovised
|
||||
name: improvised cartridge (.45 magnum)
|
||||
description: A handmade revolver bullet, stuffed to the brim with phosphorus for extra 'oomph'. Still not as good as a normal magnum bullet.
|
||||
parent: BaseCartridgeMagnum
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Casings/improvised_casing.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: [ "enum.AmmoVisualLayers.Base" ]
|
||||
- state: tip
|
||||
map: [ "enum.AmmoVisualLayers.Tip" ]
|
||||
color: "#717171"
|
||||
- type: Tag
|
||||
tags:
|
||||
- Cartridge
|
||||
- CartridgeMagnumImprovised
|
||||
- type: Construction
|
||||
graph: ImprovisedMagnumBulletGraph
|
||||
node: shell
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: entity
|
||||
id: CartridgePistolImprovised
|
||||
name: improvised cartridge (.35 auto)
|
||||
description: A handmade pistol bullet, uses phosphorus as a propellent instead of gunpowder which makes it much less effective.
|
||||
parent: BaseCartridgePistol
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Casings/improvised_casing.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: [ "enum.AmmoVisualLayers.Base" ]
|
||||
- state: tip
|
||||
map: [ "enum.AmmoVisualLayers.Tip" ]
|
||||
color: "#717171"
|
||||
- type: Tag
|
||||
tags:
|
||||
- Cartridge
|
||||
- CartridgePistolImprovised
|
||||
- type: Construction
|
||||
graph: ImprovisedPistolBulletGraph
|
||||
node: shell
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
- type: entity
|
||||
id: MagazinePistolImprovised
|
||||
name: "Improvised Pistol Magazine (.35)"
|
||||
parent: BaseMagazinePistol
|
||||
components:
|
||||
- type: Item
|
||||
size: Tiny
|
||||
- type: BallisticAmmoProvider
|
||||
proto: null
|
||||
capacity: 6
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/improvised_pistol_magazine.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Tag
|
||||
tags:
|
||||
- MagazinePistolImprovised
|
||||
- type: Construction
|
||||
graph: ImprovisedPistolMagazineGraph
|
||||
node: shell
|
||||
|
||||
- type: entity
|
||||
id: MagazinePistolSubMachineGunImprovised
|
||||
name: Improvised SMG magazine (.35 auto)
|
||||
parent: [ BaseMagazinePistolSubMachineGun, BaseMinorContraband ]
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: null
|
||||
capacity: 20
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgePistol
|
||||
- CartridgePistolImprovised
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Magazine/SMGs/improvised_smg_magazine.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: mag
|
||||
steps: 3
|
||||
- type: Tag
|
||||
tags:
|
||||
- MagazineSMGImprovised
|
||||
- type: Construction
|
||||
graph: ImprovisedMagazinePistolSubMachineGunGraph
|
||||
node: shell
|
||||
|
|
@ -0,0 +1,167 @@
|
|||
- type: entity
|
||||
name: makeshift pistol
|
||||
parent: BaseWeaponPistol
|
||||
id: WeaponPistolMakeshiftCrafted
|
||||
description: Little more than a space eoka. Very unreliable.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/makeshift_pistol_crafted.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-0
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/makeshift_pistol_crafted.rsi
|
||||
- type: Gun
|
||||
fireRate: 5 #Each bullet is manually loaded, no reason to impose a firerate limit.
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/mk58.ogg
|
||||
- type: ChamberMagazineAmmoProvider
|
||||
soundRack:
|
||||
path: /Audio/Weapons/Guns/Cock/pistol_cock.ogg
|
||||
- type: ItemSlots
|
||||
slots:
|
||||
gun_chamber:
|
||||
name: Chamber
|
||||
startingItem: CartridgePistolSpent
|
||||
priority: 1
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgePistol
|
||||
- type: Construction
|
||||
graph: MakeshiftPistolCraftedGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.20
|
||||
selfDamage:
|
||||
types:
|
||||
Blunt: 6
|
||||
Heat: 6
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
|
||||
- type: entity
|
||||
name: improvised pistol
|
||||
parent: BaseWeaponSniper
|
||||
id: WeaponPistolImprovised
|
||||
description: A cobbled together pistol with an internal magazine. More reliable, but still liable to blow up in your face.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/improvised_pistol.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/improvised_pistol.rsi
|
||||
- type: Gun
|
||||
fireRate: 3
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/mk58.ogg
|
||||
minAngle: 1
|
||||
maxAngle: 30
|
||||
angleIncrease: 12
|
||||
angleDecay: 4
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 5
|
||||
proto: CartridgePistol
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgePistol
|
||||
- type: Item
|
||||
size: Small #Magazine location makes it bigger but should still fit in a pocket. (This basically serves to keep people from putting it in a boot/stacking them as easily)
|
||||
shape:
|
||||
- 0,0,1,0
|
||||
- 0,1,1,1
|
||||
- type: Construction
|
||||
graph: ImprovisedPistolGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.10
|
||||
selfDamage:
|
||||
types:
|
||||
Blunt: 6
|
||||
Heat: 6
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: SheetSteel1
|
||||
launchAngle: 67
|
||||
prob: 0.20
|
||||
- id: SheetSteel1
|
||||
launchAngle: 87
|
||||
prob: 0.20
|
||||
- id: SheetSteel1
|
||||
launchAngle: 270
|
||||
prob: 0.20
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
|
||||
- type: entity
|
||||
name: forged pistol
|
||||
parent: BaseWeaponPistol
|
||||
id: WeaponPistolForged
|
||||
description: A reliable magazine-fed pistol made by the best tider blacksmiths.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/forged_pistol.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-0
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Pistols/forged_pistol.rsi
|
||||
- type: MagazineVisuals
|
||||
magState: mag
|
||||
steps: 3
|
||||
zeroVisible: true
|
||||
- type: Item
|
||||
size: Small
|
||||
shape:
|
||||
- 0,0,1,0
|
||||
- 0,1,1,1
|
||||
- type: Gun
|
||||
fireRate: 4
|
||||
minAngle: 1
|
||||
maxAngle: 20
|
||||
angleIncrease: 8
|
||||
angleDecay: 9
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/mk58.ogg
|
||||
- type: ItemSlots
|
||||
slots:
|
||||
gun_magazine:
|
||||
name: Magazine
|
||||
startingItem: null
|
||||
whitelist:
|
||||
tags:
|
||||
- MagazinePistolImprovised
|
||||
whitelistFailPopup: gun-magazine-whitelist-fail
|
||||
gun_chamber:
|
||||
name: Chamber
|
||||
startingItem: null
|
||||
priority: 1
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgePistol
|
||||
- CartridgePistolImprovised
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
- type: entity
|
||||
name: Makeshift Revolver
|
||||
parent: [BaseWeaponRevolver, BaseMinorContraband]
|
||||
id: WeaponRevolverMakeshift
|
||||
description: Little more than a hand-cannon with a high chance of blowing up in your face.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/makeshift_revolver.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/makeshift_revolver.rsi
|
||||
- type: RevolverAmmoProvider
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgeMagnum
|
||||
- CartridgeMagnumImprovised
|
||||
- SpeedLoaderMagnum
|
||||
- SpeedLoaderMagnumImprovised
|
||||
proto: null
|
||||
capacity: 1
|
||||
chambers: [ null]
|
||||
ammoSlots: [ null]
|
||||
- type: Construction
|
||||
graph: MakeshiftRevolverGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.30
|
||||
selfDamage:
|
||||
types:
|
||||
Blunt: 8
|
||||
Heat: 8
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
|
||||
- type: entity
|
||||
name: Improvised Revolver
|
||||
parent: WeaponRevolverMakeshift
|
||||
id: WeaponRevolverImprovised
|
||||
description: A revolver that has two barrels and no cylinder. Can you really call this a revolver?
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/improvised_revolver.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/improvised_revolver.rsi
|
||||
- type: RevolverAmmoProvider
|
||||
capacity: 2
|
||||
chambers: [ null, null]
|
||||
ammoSlots: [ null, null]
|
||||
- type: Construction
|
||||
graph: ImprovisedRevolverGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.10
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: SheetSteel1
|
||||
launchAngle: 67
|
||||
prob: 0.70
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
|
||||
- type: entity
|
||||
name: Forged Revolver
|
||||
parent: WeaponRevolverImprovised
|
||||
id: WeaponRevolverForged
|
||||
description: The best Tider engineering can offer, a revolver with the ability to hold 4 bullets!
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/forged_revolver.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Revolvers/forged_revolver.rsi
|
||||
- type: RevolverAmmoProvider
|
||||
capacity: 4
|
||||
chambers: [ null, null, null, null]
|
||||
ammoSlots: [ null, null, null, null]
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0
|
||||
|
|
@ -0,0 +1,155 @@
|
|||
- type: entity
|
||||
name: makeshift SMG
|
||||
parent: BaseWeaponSubMachineGun
|
||||
id: WeaponSubMachineGunMakeshift
|
||||
description: Held together with cloth and dreams, it rattles ominously with every shot.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/makeshift_smg.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-0
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/makeshift_smg.rsi
|
||||
- type: Item
|
||||
size: Normal
|
||||
- type: Gun
|
||||
fireRate: 9
|
||||
minAngle: 32
|
||||
angleIncrease: 3
|
||||
maxAngle: 64
|
||||
selectedMode: FullAuto
|
||||
availableModes:
|
||||
- FullAuto
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/smg.ogg
|
||||
- type: MagazineVisuals
|
||||
magState: mag
|
||||
steps: 1
|
||||
zeroVisible: true
|
||||
- type: Appearance
|
||||
- type: ItemSlots
|
||||
slots:
|
||||
gun_magazine:
|
||||
name: Magazine
|
||||
startingItem: null
|
||||
insertSound: /Audio/Weapons/Guns/MagIn/smg_magin.ogg
|
||||
ejectSound: /Audio/Weapons/Guns/MagOut/smg_magout.ogg
|
||||
priority: 2
|
||||
whitelist:
|
||||
tags:
|
||||
- MagazineSMGImprovised
|
||||
whitelistFailPopup: gun-magazine-whitelist-fail
|
||||
gun_chamber:
|
||||
name: Chamber
|
||||
startingItem: null
|
||||
priority: 1
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgePistolImprovised
|
||||
- type: Construction
|
||||
graph: MakeshiftSMGGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.03 #Very low to account for automatic weapon fire, if entire mag is shot 3/10 SMGs will survive
|
||||
selfDamage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Heat: 5
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.30
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
- id: MagazinePistolSubMachineGunImprovised
|
||||
launchAngle: 190
|
||||
prob: 1
|
||||
|
||||
- type: entity
|
||||
name: improvised SMG
|
||||
parent: WeaponSubMachineGunMakeshift
|
||||
id: WeaponSubMachineGunImprovised
|
||||
description: It's tightly held together by cloth, steel and determination.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/improvised_smg.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-0
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/makeshift_smg.rsi
|
||||
- type: Item
|
||||
size: Large
|
||||
- type: Wieldable
|
||||
unwieldOnUse: false
|
||||
- type: GunWieldBonus
|
||||
minAngle: -5
|
||||
maxAngle: -10
|
||||
- type: Gun
|
||||
fireRate: 7
|
||||
minAngle: 16
|
||||
angleIncrease: 3
|
||||
maxAngle: 32
|
||||
- type: Appearance
|
||||
- type: Construction
|
||||
graph: ImprovisedSMGGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.01
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: SheetSteel1
|
||||
launchAngle: 67
|
||||
prob: 0.20
|
||||
- id: SheetSteel1
|
||||
launchAngle: 87
|
||||
prob: 0.20
|
||||
- id: SheetSteel1
|
||||
launchAngle: 270
|
||||
prob: 0.20
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
|
||||
- type: entity
|
||||
name: forged SMG
|
||||
parent: WeaponSubMachineGunImprovised
|
||||
id: WeaponSubMachineGunForged
|
||||
description: The best a tider could get, steel and plasteel welded together for a pretty decent SMG, though the heavy bolt on it does slow the shooting down.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/forged_smg.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-0
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/SMGs/forged_smg.rsi
|
||||
- type: Wieldable
|
||||
unwieldOnUse: false
|
||||
- type: GunWieldBonus
|
||||
minAngle: -10
|
||||
maxAngle: -15
|
||||
- type: Gun
|
||||
fireRate: 5
|
||||
minAngle: 16
|
||||
angleIncrease: 3
|
||||
maxAngle: 32
|
||||
- type: Appearance
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
- type: entity
|
||||
name: forged double-barrel shotgun
|
||||
parent: [BaseWeaponShotgun, BaseGunWieldable, BaseMinorContraband]
|
||||
id: WeaponShotgunForged
|
||||
description: Decently made double-barrel shotgun, reinforced with mixed steel and plasteel plates to keep it together. Not as accurate as a real gun.
|
||||
components:
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Shotguns/forged_shotgun_inhands_64x.rsi
|
||||
size: Normal
|
||||
shape:
|
||||
- 0,0,4,0
|
||||
- type: Gun
|
||||
fireRate: 3
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Shotguns/forged_shotgun.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Shotguns/forged_shotgun.rsi
|
||||
- type: GunRequiresWield
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 2
|
||||
proto: null
|
||||
|
||||
- type: entity
|
||||
name: makeshift shotgun
|
||||
parent: [WeaponFlareGunSecurity, BaseMinorContraband]
|
||||
id: WeaponShotgunMakeshift
|
||||
description: A small hand-cannon that fires .50 shotgun shells. Has no cloth to hold it together, so it has a high chance of falling apart with every shot.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Shotguns/makeshift_shotgun.rsi
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- type: Item
|
||||
size: Small
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Shotguns/makeshift_shotgun.rsi
|
||||
- type: Construction
|
||||
graph: MakeshiftShotgunGraph
|
||||
node: shotgun
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.50
|
||||
selfDamage:
|
||||
types:
|
||||
Blunt: 5
|
||||
Heat: 5
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
|
|
@ -0,0 +1,122 @@
|
|||
- type: entity
|
||||
name: Makeshift Repeater Rifle
|
||||
parent: BaseWeaponSniper
|
||||
id: WeaponSniperMakeshift
|
||||
description: It'll blow a hole in the guy you point this at, if it doesn't snap your wrist first.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/makeshift_rifle.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/makeshift_rifle.rsi
|
||||
- type: Item
|
||||
size: Normal # Small, but can't fit in your pocket.
|
||||
- type: Gun
|
||||
fireRate: 1
|
||||
minAngle: 10
|
||||
maxAngle: 20
|
||||
selectedMode: SemiAuto
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/sniper.ogg
|
||||
- type: BallisticAmmoProvider
|
||||
whitelist:
|
||||
tags:
|
||||
- CartridgeLightRifle
|
||||
- CartridgeLightRifleImprovised
|
||||
capacity: 2
|
||||
proto: null
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.40
|
||||
selfDamage:
|
||||
types:
|
||||
Blunt: 10
|
||||
Heat: 10
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
- type: Construction
|
||||
graph: MakeshiftSniperGraph
|
||||
node: shotgun
|
||||
|
||||
- type: entity
|
||||
name: Improvised Repeater Rifle
|
||||
parent: WeaponSniperMakeshift
|
||||
id: WeaponSniperImprovised
|
||||
description: Can ALMOST reliably hit a target!
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/improvised_rifle.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/improvised_rifle.rsi
|
||||
- type: Item
|
||||
size: Large
|
||||
- type: Wieldable
|
||||
unwieldOnUse: false
|
||||
- type: GunWieldBonus
|
||||
minAngle: -5
|
||||
maxAngle: -10
|
||||
- type: Gun
|
||||
selectedMode: SemiAuto
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 4
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0.20
|
||||
items:
|
||||
- id: ModularBarrel
|
||||
launchAngle: 0
|
||||
prob: 1
|
||||
- id: ModularReceiver
|
||||
launchAngle: 90
|
||||
prob: 0.10
|
||||
- id: SheetSteel1
|
||||
launchAngle: 67
|
||||
prob: 0.20
|
||||
- id: SheetSteel1
|
||||
launchAngle: 87
|
||||
prob: 0.20
|
||||
- id: SheetSteel1
|
||||
launchAngle: 270
|
||||
prob: 0.20
|
||||
- id: RifleStock
|
||||
launchAngle: 180
|
||||
prob: 0.80
|
||||
- type: Construction
|
||||
graph: ImprovisedSniperGraph
|
||||
node: shotgun
|
||||
|
||||
|
||||
- type: entity
|
||||
name: Forged Repeater Rifle
|
||||
parent: WeaponSniperMakeshift
|
||||
id: WeaponSniperForged
|
||||
description: The best a tider can achive, reliable fire-rate and accuracy with a satisfying lever-action system. What more can you ask for?
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/forged_rifle.rsi
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Snipers/forged_rifle.rsi
|
||||
- type: Item
|
||||
size: Huge
|
||||
- type: Wieldable
|
||||
unwieldOnUse: false
|
||||
- type: GunWieldBonus
|
||||
minAngle: -8
|
||||
maxAngle: -15
|
||||
- type: Gun
|
||||
selectedMode: SemiAuto
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 8
|
||||
- type: WeaponDismantleOnShoot
|
||||
dismantleChance: 0
|
||||
|
|
@ -0,0 +1,171 @@
|
|||
- type: entity
|
||||
name: makeshift sword
|
||||
parent: BaseSword
|
||||
id: SwordMakeshift
|
||||
description: Some sharp steel affixed to a metal rod, it can hardly be called a sword.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/makeshift_sword.rsi
|
||||
- type: MeleeWeapon
|
||||
attackRate: 1
|
||||
damage:
|
||||
types:
|
||||
Slash: 10
|
||||
soundHit:
|
||||
path: /Audio/Weapons/bladeslice.ogg
|
||||
- type: Item
|
||||
- type: DisarmMalus
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/makeshift_sword.rsi
|
||||
slots:
|
||||
- suitStorage
|
||||
- type: Construction
|
||||
graph: SwordMakeshiftGraph
|
||||
node: sword
|
||||
|
||||
- type: entity
|
||||
name: improvised sword
|
||||
parent: BaseSword
|
||||
id: SwordImprovised
|
||||
description: Not too sharp, but it does the job just fine.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/improvised_sword.rsi
|
||||
- type: MeleeWeapon
|
||||
attackRate: 1
|
||||
damage:
|
||||
types:
|
||||
Slash: 14
|
||||
soundHit:
|
||||
path: /Audio/Weapons/bladeslice.ogg
|
||||
- type: Item
|
||||
- type: DisarmMalus
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/improvised_sword.rsi
|
||||
slots:
|
||||
- suitStorage
|
||||
- type: Construction
|
||||
graph: SwordImprovisedGraph
|
||||
node: sword
|
||||
|
||||
- type: entity
|
||||
name: forged sword
|
||||
parent: BaseSword
|
||||
id: SwordForged
|
||||
description: Made with plasteel, a single touch of the blade is enough to draw blood.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_sword.rsi
|
||||
- type: MeleeWeapon
|
||||
damage:
|
||||
types:
|
||||
Slash: 15
|
||||
soundHit:
|
||||
path: /Audio/Weapons/bladeslice.ogg
|
||||
- type: Item
|
||||
- type: DisarmMalus
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_sword.rsi
|
||||
slots:
|
||||
- suitStorage
|
||||
- type: Tag
|
||||
tags:
|
||||
- SwordForged
|
||||
|
||||
- type: entity
|
||||
name: dawnbreaker
|
||||
parent: [ BaseSword,Welder ]
|
||||
id: SwordFlaming
|
||||
description: How do you perfect upon perfection? Why, use fire of course! Be the shining light through maints and fight valiantly!
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/dawnbreaker.rsi
|
||||
layers:
|
||||
- state: icon
|
||||
- state: welder_flame
|
||||
visible: false
|
||||
shader: unshaded
|
||||
map: ["enum.ToggleableVisuals.Layer"]
|
||||
- type: GenericVisualizer
|
||||
visuals:
|
||||
enum.ToggleableVisuals.Enabled:
|
||||
enum.ToggleableVisuals.Layer:
|
||||
True: { visible: true }
|
||||
False: { visible: false }
|
||||
- type: PointLight
|
||||
enabled: false
|
||||
radius: 3
|
||||
- type: ItemToggle
|
||||
predictable: false
|
||||
soundActivate:
|
||||
collection: WelderOn
|
||||
params:
|
||||
variation: 0.125
|
||||
volume: -5
|
||||
soundDeactivate:
|
||||
collection: WelderOff
|
||||
params:
|
||||
variation: 0.125
|
||||
volume: -5
|
||||
- type: ItemToggleMeleeWeapon
|
||||
activatedSoundOnHit:
|
||||
path: /Audio/Weapons/Guns/Hits/energy_meat1.ogg
|
||||
params:
|
||||
variation: 0.250
|
||||
volume: -10
|
||||
activatedSoundOnHitNoDamage:
|
||||
path: /Audio/Weapons/Guns/Hits/energy_meat1.ogg
|
||||
params:
|
||||
variation: 0.250
|
||||
volume: -12
|
||||
deactivatedSoundOnHitNoDamage:
|
||||
collection: MetalThud
|
||||
activatedDamage:
|
||||
types:
|
||||
Heat: 8
|
||||
Slash: 10
|
||||
- type: MeleeWeapon
|
||||
damage:
|
||||
types:
|
||||
Slash: 16
|
||||
soundHit:
|
||||
path: /Audio/Weapons/bladeslice.ogg
|
||||
- type: Item
|
||||
sprite: _Starlight/Objects/Weapons/Melee/dawnbreaker.rsi
|
||||
- type: DisarmMalus
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/dawnbreaker.rsi
|
||||
slots:
|
||||
- suitStorage
|
||||
- type: Construction
|
||||
graph: SwordFlamingGraph
|
||||
node: sword
|
||||
|
||||
- type: entity
|
||||
name: tidebreaker
|
||||
parent: BaseSword
|
||||
id: ClaymoreForged
|
||||
description: The perfect weapon for an aspiring maints knight!
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _Starlight/Objects/Weapons/Melee/tidebreaker.rsi
|
||||
- type: MeleeWeapon
|
||||
attackRate: 0.75
|
||||
damage:
|
||||
types:
|
||||
Slash: 20
|
||||
Structural: 10
|
||||
soundHit:
|
||||
path: /Audio/Weapons/bladeslice.ogg
|
||||
- type: Item
|
||||
- type: Clothing
|
||||
sprite: _Starlight/Objects/Weapons/Melee/tidebreaker.rsi
|
||||
slots:
|
||||
- suitStorage
|
||||
- type: DisarmMalus
|
||||
- type: Scalpel
|
||||
- type: SurgeryTool
|
||||
startSound:
|
||||
path: /Audio/_Shitmed/Medical/Surgery/scalpel1.ogg
|
||||
endSound:
|
||||
path: /Audio/_Shitmed/Medical/Surgery/scalpel2.ogg
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: CrushedPhosphorus
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: crushed
|
||||
steps:
|
||||
- tag: Matchstick
|
||||
name: construction-graph-tag-match-stick
|
||||
icon:
|
||||
sprite: Objects/Tools/matches.rsi
|
||||
state: match_unlit
|
||||
doAfter: 0.2
|
||||
- node: crushed
|
||||
entity: CrushedPhosphorus1
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
- type: constructionGraph
|
||||
id: SwordFlamingGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: sword
|
||||
steps:
|
||||
- tag: SwordForged
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Weapons/Melee/forged_sword.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-FSW
|
||||
- material: Plastic
|
||||
amount: 4
|
||||
doAfter: 5
|
||||
- material: Cable
|
||||
amount: 2
|
||||
doAfter: 5
|
||||
- material: Glass
|
||||
amount: 6
|
||||
doAfter: 5
|
||||
- material: MetalRod
|
||||
amount: 2
|
||||
- tag: Igniter
|
||||
icon:
|
||||
sprite: Objects/Devices/igniter.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-igniter
|
||||
doAfter: 10
|
||||
- node: sword
|
||||
entity: SwordFlaming
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingHeadHelmetForgedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: helmet
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 7
|
||||
- material: Plasteel
|
||||
amount: 3
|
||||
doAfter: 8
|
||||
- material: Plastic
|
||||
amount: 2
|
||||
- material: Cloth
|
||||
amount: 4
|
||||
doAfter: 6
|
||||
- node: helmet
|
||||
entity: UnfinishedClothingHeadHelmetForged
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedOmnitoolGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- tag: Multitool
|
||||
icon:
|
||||
sprite: Objects/Tools/multitool.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MUL
|
||||
- tag: Wrench
|
||||
icon:
|
||||
sprite: Objects/Tools/wrench.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-WRE
|
||||
- tag: Wirecutter
|
||||
icon:
|
||||
sprite: Objects/Tools/wirecutters.rsi
|
||||
state: cutters-map
|
||||
name: crafting-menu-name-WIR
|
||||
- tag: Screwdriver
|
||||
icon:
|
||||
sprite: Objects/Tools/screwdriver.rsi
|
||||
state: screwdriver-map
|
||||
name: crafting-menu-name-SCR
|
||||
- tag: Crowbar
|
||||
icon:
|
||||
sprite: Objects/Tools/crowbar.rsi
|
||||
state: storage
|
||||
name: crafting-menu-name-CRO
|
||||
- tag: EmergencyWelder
|
||||
icon:
|
||||
sprite: Objects/Tools/welder_mini.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-EW
|
||||
- tag: PowerCellSmall
|
||||
icon:
|
||||
sprite: Objects/Power/power_cells.rsi
|
||||
state: small
|
||||
name: construction-graph-tag-power-cell-small
|
||||
- tag: GasTank
|
||||
icon:
|
||||
sprite: Objects/Tanks/emergency_extended.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-EXOXY
|
||||
- material: Cable
|
||||
amount: 3
|
||||
doAfter: 5
|
||||
- material: Steel
|
||||
amount: 10
|
||||
doAfter: 20
|
||||
- material: Plasteel
|
||||
amount: 5
|
||||
doAfter: 30
|
||||
- node: tool
|
||||
entity: UnfinishedForgedOmnitool
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedPistolGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Steel
|
||||
amount: 7
|
||||
doAfter: 7
|
||||
- material: Plasteel
|
||||
amount: 4
|
||||
doAfter: 13
|
||||
- node: shotgun
|
||||
entity: UnfinishedPistolForged
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedRevolverGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Steel
|
||||
amount: 9
|
||||
doAfter: 10
|
||||
- material: Plasteel
|
||||
amount: 5
|
||||
doAfter: 15
|
||||
- node: shotgun
|
||||
entity: UnfinishedRevolverForged
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedShieldBucklerGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shield
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 10
|
||||
- material: Plasteel
|
||||
amount: 4
|
||||
doAfter: 15
|
||||
- material: Plastic
|
||||
amount: 4
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
- node: shield
|
||||
entity: UnfinishedForgedShieldBuckler
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedShieldTowerGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shield
|
||||
steps:
|
||||
- material: MetalRod
|
||||
amount: 10
|
||||
- material: Steel
|
||||
amount: 12
|
||||
doAfter: 15
|
||||
- material: Glass
|
||||
amount: 4
|
||||
- material: Plasteel
|
||||
amount: 10
|
||||
doAfter: 15
|
||||
- material: Plastic
|
||||
amount: 6
|
||||
- material: Cloth
|
||||
amount: 8
|
||||
- node: shield
|
||||
entity: UnfinishedForgedShieldTower
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedShotgunGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- material: Steel
|
||||
amount: 4
|
||||
doAfter: 5
|
||||
- material: Plasteel
|
||||
amount: 2
|
||||
doAfter: 10
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 3
|
||||
doAfter: 15
|
||||
- node: shotgun
|
||||
entity: UnfinishedForgedShotgun
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedSMGGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Steel
|
||||
amount: 17
|
||||
doAfter: 17
|
||||
- material: Plasteel
|
||||
amount: 10
|
||||
doAfter: 20
|
||||
- node: shotgun
|
||||
entity: UnfinishedSubMachineGunForged
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ForgedSniperGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Steel
|
||||
amount: 25
|
||||
doAfter: 20
|
||||
- material: Plasteel
|
||||
amount: 15
|
||||
doAfter: 25
|
||||
- node: shotgun
|
||||
entity: UnfinishedSniperForged
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
- type: constructionGraph
|
||||
id: SwordForgedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: sword
|
||||
steps:
|
||||
- tag: BladePlasteel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/plasteel_blade.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-PB
|
||||
- material: Plasteel
|
||||
amount: 4
|
||||
doAfter: 15
|
||||
- material: Cloth
|
||||
amount: 4
|
||||
doAfter: 5
|
||||
- tag: HiltPlasteel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/plasteel_hilt.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-PH
|
||||
|
||||
- node: tool
|
||||
edges: [] # Add this tool node as an empty placeholder or connect it if needed.
|
||||
|
||||
- node: sword
|
||||
entity: UnfinishedSwordForged
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingOuterArmorForgedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: vest
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 10
|
||||
doAfter: 10
|
||||
- material: Plasteel
|
||||
amount: 5
|
||||
doAfter: 15
|
||||
- material: Plastic
|
||||
amount: 5
|
||||
- material: Cloth
|
||||
amount: 10
|
||||
doAfter: 10
|
||||
- node: vest
|
||||
entity: UnfinishedClothingOuterArmorForged
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedCrowbarGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 10
|
||||
- node: tool
|
||||
entity: UnfinishedImprovisedCrowbar
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingHeadHelmetImprovisedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: helmet
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 7
|
||||
doAfter: 6
|
||||
- material: Cloth
|
||||
amount: 3
|
||||
doAfter: 3
|
||||
- material: Cable
|
||||
amount: 4
|
||||
- node: helmet
|
||||
entity: UnfinishedClothingHeadHelmetImprovised
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedLightRifleBulletGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 1
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 3
|
||||
doAfter: 0.5
|
||||
- node: shell
|
||||
entity: CartridgeLightRifleImprovised
|
||||
|
|
@ -0,0 +1,101 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedMagazineBoxGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 5
|
||||
- material: Cloth
|
||||
amount: 3
|
||||
doAfter: 5
|
||||
- node: shell
|
||||
entity: BaseMagazineBoxImprovised
|
||||
- node: startpistol
|
||||
edges:
|
||||
- to: pistol
|
||||
steps:
|
||||
- tag: ImprovisedAmmoBox
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Boxes/improvised.rsi
|
||||
state: base
|
||||
name: crafting-menu-name-IMGB
|
||||
doAfter: 10
|
||||
- material: Steel
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- node: pistol
|
||||
entity: MagazineBoxImprovisedPistol
|
||||
- node: startrifle
|
||||
edges:
|
||||
- to: rifle
|
||||
steps:
|
||||
- tag: ImprovisedAmmoBox
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Boxes/improvised.rsi
|
||||
state: base
|
||||
name: crafting-menu-name-IMGB
|
||||
doAfter: 10
|
||||
- material: Steel
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- node: rifle
|
||||
entity: MagazineBoxImprovisedRifle
|
||||
- node: startmagnum
|
||||
edges:
|
||||
- to: magnum
|
||||
steps:
|
||||
- tag: ImprovisedAmmoBox
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Boxes/improvised.rsi
|
||||
state: base
|
||||
name: crafting-menu-name-IMGB
|
||||
doAfter: 10
|
||||
- material: Steel
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- node: magnum
|
||||
entity: MagazineBoxImprovisedMagnum
|
||||
- node: startshotgun
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ImprovisedAmmoBox
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Weapons/Guns/Ammunition/Boxes/improvised.rsi
|
||||
state: base
|
||||
name: crafting-menu-name-IMGB
|
||||
doAfter: 10
|
||||
- material: Steel
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: Glass
|
||||
amount: 30
|
||||
doAfter: 1.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 30
|
||||
doAfter: 0.5
|
||||
entity: MagazineBoxImprovisedShotgun
|
||||
- node: shotgun
|
||||
entity: MagazineBoxImprovisedShotgun
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedMagnumBulletGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 1
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 3
|
||||
doAfter: 0.5
|
||||
- node: shell
|
||||
entity: CartridgeMagnumImprovised
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedMagnumSpeedLoaderGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 6
|
||||
doAfter: 5
|
||||
- node: shell
|
||||
entity: SpeedLoaderMagnumImprovised
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedMultitoolGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 6
|
||||
doAfter: 10
|
||||
- material: Plastic
|
||||
amount: 2
|
||||
doAfter: 10
|
||||
- material: Glass
|
||||
amount: 4
|
||||
doAfter: 10
|
||||
- tag: PowerCellSmall
|
||||
icon:
|
||||
sprite: Objects/Power/power_cells.rsi
|
||||
state: small
|
||||
name: construction-graph-tag-power-cell-small
|
||||
- material: Cable
|
||||
amount: 2
|
||||
doAfter: 5
|
||||
- node: tool
|
||||
entity: UnfinishedImprovisedMultitool
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedOmnitoolGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- tag: ImprovisedMultitool
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Tools/improvised_multitool.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-IM
|
||||
- tag: Wrench
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Tools/improvised_wrench.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-IWR
|
||||
- tag: Wirecutter
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Tools/improvised_wirecutters.rsi
|
||||
state: cutters
|
||||
name: crafting-menu-name-IW
|
||||
- tag: Screwdriver
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Tools/improvised_screwdriver.rsi
|
||||
state: screwdriver
|
||||
name: crafting-menu-name-ISC
|
||||
- tag: Crowbar
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Tools/improvised_screwdriver.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-IC
|
||||
- tag: EmergencyWelder
|
||||
icon:
|
||||
sprite: Objects/Tools/welder_mini.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-EW
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 35
|
||||
- node: tool
|
||||
entity: UnfinishedImprovisedOmnitool
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedPistolGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
doAfter: 5
|
||||
- material: Steel
|
||||
amount: 4
|
||||
doAfter: 5
|
||||
- node: shotgun
|
||||
entity: WeaponPistolImprovised
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedPistolBulletGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 1
|
||||
doAfter: 0.5
|
||||
- material: CrushedPhosphorus
|
||||
amount: 2
|
||||
doAfter: 0.5
|
||||
- node: shell
|
||||
entity: CartridgePistolImprovised
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedPistolMagazineGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 2
|
||||
- node: shell
|
||||
entity: MagazinePistolImprovised
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedRevolverGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 4
|
||||
doAfter: 7
|
||||
- material: Steel
|
||||
amount: 6
|
||||
doAfter: 7
|
||||
- node: shotgun
|
||||
entity: WeaponRevolverImprovised
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedScrewdriverGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 3
|
||||
doAfter: 10
|
||||
- material: Cloth
|
||||
amount: 1
|
||||
doAfter: 5
|
||||
- node: tool
|
||||
entity: UnfinishedImprovisedScrewdriver
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedShieldGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shield
|
||||
steps:
|
||||
- material: MetalRod
|
||||
amount: 8
|
||||
- material: Steel
|
||||
amount: 15
|
||||
doAfter: 15
|
||||
- material: Cloth
|
||||
amount: 3
|
||||
- node: shield
|
||||
entity: UnfinishedImprovisedShield
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedSMGGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
doAfter: 5
|
||||
- material: Steel
|
||||
amount: 15
|
||||
doAfter: 10
|
||||
- node: shotgun
|
||||
entity: WeaponSubMachineGunImprovised
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedMagazinePistolSubMachineGunGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shell
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 8
|
||||
doAfter: 6
|
||||
- node: shell
|
||||
entity: MagazinePistolSubMachineGunImprovised
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedSniperGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 6
|
||||
doAfter: 7
|
||||
- material: Steel
|
||||
amount: 20
|
||||
doAfter: 15
|
||||
- node: shotgun
|
||||
entity: WeaponSniperImprovised
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
- type: constructionGraph
|
||||
id: SwordImprovisedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: sword
|
||||
steps:
|
||||
- tag: BladeSteel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/steel_blade.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-SB
|
||||
- material: Steel
|
||||
amount: 2
|
||||
doAfter: 15
|
||||
- material: Cloth
|
||||
amount: 3
|
||||
doAfter: 5
|
||||
- tag: HiltWood
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/wooden_hilt.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-WH
|
||||
- node: sword
|
||||
entity: SwordImprovised
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingOuterArmorImprovisedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: vest
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 12
|
||||
doAfter: 10
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
doAfter: 5
|
||||
- material: Cable
|
||||
amount: 7
|
||||
- node: vest
|
||||
entity: UnfinishedClothingOuterArmorImprovised
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedWirecutterGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 5
|
||||
doAfter: 10
|
||||
- material: Cloth
|
||||
amount: 2
|
||||
doAfter: 5
|
||||
- node: tool
|
||||
entity: UnfinishedImprovisedWirecutter
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: ImprovisedWrenchGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 3
|
||||
doAfter: 10
|
||||
- node: tool
|
||||
entity: UnfinishedImprovisedWrench
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
- type: constructionGraph
|
||||
id: MakeshiftCrowbarGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- tag: Toolbox
|
||||
icon:
|
||||
sprite: Objects/Tools/Toolboxes/toolbox_red.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-ETX
|
||||
doAfter: 8
|
||||
- node: tool
|
||||
entity: CrowbarMakeshift
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingHeadHelmetMakeshiftGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: helmet
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 4
|
||||
doAfter: 5
|
||||
- material: Cable
|
||||
amount: 3
|
||||
- node: helmet
|
||||
entity: ClothingHeadHelmetMakeshift
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
- type: constructionGraph
|
||||
id: MakeshiftPistolCraftedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 4
|
||||
doAfter: 5
|
||||
- node: shotgun
|
||||
entity: WeaponPistolMakeshiftCrafted
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
- type: constructionGraph
|
||||
id: MakeshiftRevolverGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 3
|
||||
doAfter: 7
|
||||
- node: shotgun
|
||||
entity: WeaponRevolverMakeshift
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
- type: constructionGraph
|
||||
id: MakeshiftShotgunGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
doAfter: 3
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
doAfter: 3
|
||||
- node: shotgun
|
||||
entity: WeaponShotgunMakeshift
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
- type: constructionGraph
|
||||
id: MakeshiftSMGGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
doAfter: 5
|
||||
- node: shotgun
|
||||
entity: WeaponSubMachineGunMakeshift
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
- type: constructionGraph
|
||||
id: MakeshiftSniperGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- tag: ModularBarrel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/modular_barrel.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-MB
|
||||
- tag: ModularReceiver
|
||||
icon:
|
||||
sprite: Objects/Misc/modular_receiver.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-modular-receiver
|
||||
- tag: RifleStock
|
||||
icon:
|
||||
sprite: Objects/Misc/rifle_stock.rsi
|
||||
state: icon
|
||||
name: construction-graph-tag-rifle-stock
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
doAfter: 7
|
||||
- node: shotgun
|
||||
entity: WeaponSniperMakeshift
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
- type: constructionGraph
|
||||
id: SwordMakeshiftGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: sword
|
||||
steps:
|
||||
- material: MetalRod
|
||||
amount: 1
|
||||
- material: Steel
|
||||
amount: 4
|
||||
doAfter: 10
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
doAfter: 5
|
||||
- tag: HiltWood
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/wooden_hilt.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-WH
|
||||
- node: sword
|
||||
entity: SwordMakeshift
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingOuterArmorMakeshiftGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: vest
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 6
|
||||
doAfter: 10
|
||||
- material: Cable
|
||||
amount: 5
|
||||
- node: vest
|
||||
entity: ClothingOuterArmorMakeshift
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: ModularBarrelGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shotgun
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 1
|
||||
doAfter: 3
|
||||
- node: shotgun
|
||||
entity: ModularBarrel
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
- type: constructionGraph
|
||||
id: PaladinShieldGreatGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shield
|
||||
steps:
|
||||
- material: MetalRod
|
||||
amount: 12
|
||||
- material: Steel
|
||||
amount: 20
|
||||
doAfter: 20
|
||||
- material: Glass
|
||||
amount: 4
|
||||
- material: Plasteel
|
||||
amount: 30
|
||||
doAfter: 20
|
||||
- material: Plastic
|
||||
amount: 10
|
||||
- material: Cloth
|
||||
amount: 12
|
||||
- node: shield
|
||||
entity: UnfinishedPaladinShieldGreat
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingHeadHelmetPaladinGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: helmet
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 7
|
||||
doAfter: 9
|
||||
- material: Plasteel
|
||||
amount: 6
|
||||
doAfter: 9
|
||||
- material: Plastic
|
||||
amount: 2
|
||||
- material: Cloth
|
||||
amount: 6
|
||||
doAfter: 7
|
||||
- node: helmet
|
||||
entity: UnfinishedClothingHeadHelmetPaladin
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
- type: constructionGraph
|
||||
id: PaladinShieldGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: shield
|
||||
steps:
|
||||
- material: MetalRod
|
||||
amount: 8
|
||||
- material: Steel
|
||||
amount: 10
|
||||
doAfter: 15
|
||||
- material: Plasteel
|
||||
amount: 8
|
||||
doAfter: 15
|
||||
- material: Plastic
|
||||
amount: 4
|
||||
- material: Cloth
|
||||
amount: 5
|
||||
- node: shield
|
||||
entity: UnfinishedPaladinShield
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
- type: constructionGraph
|
||||
id: ClothingOuterArmorPaladinGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: vest
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 15
|
||||
doAfter: 15
|
||||
- material: Plasteel
|
||||
amount: 10
|
||||
doAfter: 15
|
||||
- material: Plastic
|
||||
amount: 4
|
||||
- material: Cloth
|
||||
amount: 15
|
||||
doAfter: 15
|
||||
- node: vest
|
||||
entity: UnfinishedClothingOuterArmorPaladin
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: BladePlasteelGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: blade
|
||||
steps:
|
||||
- material: Plasteel
|
||||
amount: 6
|
||||
doAfter: 15
|
||||
- node: blade
|
||||
entity: BladePlasteel
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: HiltPlasteelGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: hilt
|
||||
steps:
|
||||
- material: Plasteel
|
||||
amount: 4
|
||||
doAfter: 10
|
||||
- node: hilt
|
||||
entity: HiltPlasteel
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: BladeSteelGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: blade
|
||||
steps:
|
||||
- material: Steel
|
||||
amount: 4
|
||||
doAfter: 10
|
||||
- node: blade
|
||||
entity: BladeSteel
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
- type: constructionGraph
|
||||
id: ClaymoreForgedGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: tool
|
||||
steps:
|
||||
- tag: BladePlasteel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/plasteel_blade.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-PB
|
||||
- tag: CrayonGreen
|
||||
icon:
|
||||
sprite: Objects/Fun/crayons.rsi
|
||||
state: green
|
||||
name: crafting-menu-name-CGREN
|
||||
- tag: CrayonYellow
|
||||
icon:
|
||||
sprite: Objects/Fun/crayons.rsi
|
||||
state: yellow
|
||||
name: crafting-menu-name-CYELO
|
||||
- material: Plasteel
|
||||
amount: 15
|
||||
doAfter: 25
|
||||
- material: Cloth
|
||||
amount: 8
|
||||
doAfter: 5
|
||||
- node: tool
|
||||
entity: HiltPlasteel
|
||||
edges:
|
||||
- to: sword
|
||||
steps:
|
||||
- tag: HiltPlasteel
|
||||
icon:
|
||||
sprite: _Starlight/Objects/Misc/plasteel_hilt.rsi
|
||||
state: icon
|
||||
name: crafting-menu-name-PH
|
||||
- node: sword
|
||||
entity: UnfinishedClaymoreForged
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
- type: constructionGraph
|
||||
id: HiltWoodGraph
|
||||
start: start
|
||||
graph:
|
||||
- node: start
|
||||
edges:
|
||||
- to: hilt
|
||||
steps:
|
||||
- material: WoodPlank
|
||||
amount: 3
|
||||
doAfter: 4
|
||||
- node: hilt
|
||||
entity: HiltWood
|
||||
|
|
@ -0,0 +1,559 @@
|
|||
- type: construction
|
||||
name: crafting-menu-name-FDB
|
||||
id: WeaponShotgunForged
|
||||
graph: ForgedShotgunGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FDB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MP
|
||||
id: WeaponPistolMakeshiftCrafted
|
||||
graph: MakeshiftPistolCraftedGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MP
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IP
|
||||
id: WeaponPistolImprovised
|
||||
graph: ImprovisedPistolGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IP
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FP
|
||||
id: WeaponPistolForged
|
||||
graph: ForgedPistolGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FP
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IPB
|
||||
id: CartridgePistolImprovised
|
||||
graph: ImprovisedPistolBulletGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IPB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IPM
|
||||
id: MagazinePistolImprovised
|
||||
graph: ImprovisedPistolMagazineGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IPM
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MR
|
||||
id: WeaponRevolverMakeshift
|
||||
graph: MakeshiftRevolverGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IR
|
||||
id: WeaponRevolverImprovised
|
||||
graph: ImprovisedRevolverGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FR
|
||||
id: WeaponRevolverForged
|
||||
graph: ForgedRevolverGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMB
|
||||
id: CartridgeMagnumImprovised
|
||||
graph: ImprovisedMagnumBulletGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMS
|
||||
id: SpeedLoaderMagnumImprovised
|
||||
graph: ImprovisedMagnumSpeedLoaderGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMS
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MB
|
||||
id: ModularBarrel
|
||||
graph: ModularBarrelGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-misc
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MSH
|
||||
id: WeaponShotgunMakeshift
|
||||
graph: MakeshiftShotgunGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MSH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MS
|
||||
id: WeaponSMGMakeshift
|
||||
graph: MakeshiftSMGGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MS
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IS
|
||||
id: WeaponSubMachineGunImprovised
|
||||
graph: ImprovisedSMGGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IS
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FS
|
||||
id: WeaponSubMachineGunForged
|
||||
graph: ForgedSMGGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FS
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-ISM
|
||||
id: MagazinePistolSubMachineGunImprovised
|
||||
graph: ImprovisedMagazinePistolSubMachineGunGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-ISM
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MRR
|
||||
id: WeaponSniperMakeshift
|
||||
graph: MakeshiftSniperGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MRR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IRR
|
||||
id: WeaponSniperImprovised
|
||||
graph: ImprovisedSniperGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IRR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FRR
|
||||
id: WeaponSniperForged
|
||||
graph: ForgedSniperGraph
|
||||
startNode: start
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FRR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IRB
|
||||
id: CartridgeLightRifleImprovised
|
||||
graph: ImprovisedLightRifleBulletGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IRB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMGB
|
||||
id: BaseMagazineBoxImprovised
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
startNode: start
|
||||
targetNode: shell
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMGB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMGP
|
||||
id: MagazineBoxImprovisedPistol
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
startNode: startpistol
|
||||
targetNode: pistol
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMGP
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMGR
|
||||
id: MagazineBoxImprovisedRifle
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
startNode: startrifle
|
||||
targetNode: rifle
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMGR
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMGM
|
||||
id: MagazineBoxImprovisedMagnum
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
startNode: startmagnum
|
||||
targetNode: magnum
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMGM
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IMGS
|
||||
id: MagazineBoxImprovisedShotgun
|
||||
graph: ImprovisedMagazineBoxGraph
|
||||
startNode: startshotgun
|
||||
targetNode: shotgun
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IMGS
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MC
|
||||
id: CrowbarMakeshift
|
||||
graph: MakeshiftCrowbarGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MC
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IC
|
||||
id: CrowbarImprovised
|
||||
graph: ImprovisedCrowbarGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IC
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-ISC
|
||||
id: ScrewdriverImprovised
|
||||
graph: ImprovisedScrewdriverGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IC
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IW
|
||||
id: WirecutterImprovised
|
||||
graph: ImprovisedWirecutterGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IC
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IWR
|
||||
id: WrenchImprovised
|
||||
graph: ImprovisedWrenchGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IC
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IM
|
||||
id: MultitoolImprovised
|
||||
graph: ImprovisedMultitoolGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IM
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IO
|
||||
id: OmnitoolImprovised
|
||||
graph: ImprovisedOmnitoolGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IO
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FO
|
||||
id: OmnitoolForged
|
||||
graph: ForgedOmnitoolGraph
|
||||
startNode: start
|
||||
targetNode: tool
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FO
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-WH
|
||||
id: HiltWood
|
||||
graph: HiltWoodGraph
|
||||
startNode: start
|
||||
targetNode: hilt
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-WH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-PH
|
||||
id: HiltPlasteel
|
||||
graph: HiltPlasteelGraph
|
||||
startNode: start
|
||||
targetNode: hilt
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-PH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-SB
|
||||
id: BladeSteel
|
||||
graph: BladeSteelGraph
|
||||
startNode: start
|
||||
targetNode: blade
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-SB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-PB
|
||||
id: BladePlasteel
|
||||
graph: BladePlasteelGraph
|
||||
startNode: start
|
||||
targetNode: blade
|
||||
category: construction-category-tools
|
||||
objectType: Item
|
||||
description: crafting-menu-text-PB
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MSW
|
||||
id: SwordMakeshift
|
||||
graph: SwordMakeshiftGraph
|
||||
startNode: start
|
||||
targetNode: sword
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MSW
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-ISW
|
||||
id: SwordImprovised
|
||||
graph: SwordImprovisedGraph
|
||||
startNode: start
|
||||
targetNode: sword
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-ISW
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FSW
|
||||
id: SwordForged
|
||||
graph: SwordForgedGraph
|
||||
startNode: start
|
||||
targetNode: sword
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FSW
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-DSW
|
||||
id: SwordFlaming
|
||||
graph: SwordFlamingGraph
|
||||
startNode: start
|
||||
targetNode: sword
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-DSW
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-TSW
|
||||
id: ClaymoreForged
|
||||
graph: ClaymoreForgedGraph
|
||||
startNode: start
|
||||
targetNode: sword
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-TSW
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-ISH
|
||||
id: ImprovisedShield
|
||||
graph: ImprovisedShieldGraph
|
||||
startNode: start
|
||||
targetNode: shield
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-ISH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FSH
|
||||
id: ForgedShieldBuckler
|
||||
graph: ForgedShieldBucklerGraph
|
||||
startNode: start
|
||||
targetNode: shield
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FSH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FSHT
|
||||
id: ForgedShieldTower
|
||||
graph: ForgedShieldTowerGraph
|
||||
startNode: start
|
||||
targetNode: shield
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FSHT
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-PSH
|
||||
id: PaladinShield
|
||||
graph: PaladinShieldGraph
|
||||
startNode: start
|
||||
targetNode: shield
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-PSH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-PSHG
|
||||
id: PaladinShieldGreat
|
||||
graph: PaladinShieldGreatGraph
|
||||
startNode: start
|
||||
targetNode: shield
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-PSHG
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MVT
|
||||
id: ClothingOuterArmorMakeshift
|
||||
graph: ClothingOuterArmorMakeshiftGraph
|
||||
startNode: start
|
||||
targetNode: vest
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MVT
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IVT
|
||||
id: ClothingOuterArmorImprovised
|
||||
graph: ClothingOuterArmorImprovisedGraph
|
||||
startNode: start
|
||||
targetNode: vest
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IVT
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FVT
|
||||
id: ClothingOuterArmorForged
|
||||
graph: ClothingOuterArmorForgedGraph
|
||||
startNode: start
|
||||
targetNode: vest
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FVT
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-PVT
|
||||
id: ClothingOuterArmorPaladin
|
||||
graph: ClothingOuterArmorPaladinGraph
|
||||
startNode: start
|
||||
targetNode: vest
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-PVT
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-MVTH
|
||||
id: ClothingHeadHelmetMakeshift
|
||||
graph: ClothingHeadHelmetMakeshiftGraph
|
||||
startNode: start
|
||||
targetNode: helmet
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-MVTH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-IVTH
|
||||
id: ClothingHeadHelmetImprovised
|
||||
graph: ClothingHeadHelmetImprovisedGraph
|
||||
startNode: start
|
||||
targetNode: helmet
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-IVTH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-FVTH
|
||||
id: ClothingHeadHelmetForged
|
||||
graph: ClothingHeadHelmetForgedGraph
|
||||
startNode: start
|
||||
targetNode: helmet
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-FVTH
|
||||
|
||||
- type: construction
|
||||
name: crafting-menu-name-PVTH
|
||||
id: ClothingHeadHelmetPaladin
|
||||
graph: ClothingHeadHelmetPaladinGraph
|
||||
startNode: start
|
||||
targetNode: helmet
|
||||
category: construction-category-weapons
|
||||
objectType: Item
|
||||
description: crafting-menu-text-PVTH
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
- type: construction
|
||||
name: crafting-menu-name-phosphorus
|
||||
id: CrushedPhosphorus
|
||||
graph: CrushedPhosphorus
|
||||
startNode: start
|
||||
targetNode: crushed
|
||||
category: construction-category-misc
|
||||
objectType: Item
|
||||
description: crafting-menu-text-phosphorus
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
- type: stack
|
||||
id: CrushedPhosphorus
|
||||
name: stack-phosphorus
|
||||
icon: { sprite: _Starlight/Objects/Materials/phosphorus.rsi, state: phosphorus_3 }
|
||||
spawn: CrushedPhosphorus1
|
||||
maxCount: 30
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
# ALPHABETIZE
|
||||
|
||||
- type: Tag
|
||||
id: BladePlasteel
|
||||
|
||||
- type: Tag
|
||||
id: BladeSteel
|
||||
|
||||
- type: Tag
|
||||
id: CartridgePistolImprovised
|
||||
|
||||
- type: Tag
|
||||
id: CartridgeMagnumImprovised
|
||||
|
||||
- type: Tag
|
||||
id: CartridgeLightRifleImprovised
|
||||
|
||||
- type: Tag
|
||||
id: EmergencyWelder
|
||||
|
||||
- type: Tag
|
||||
id: HiltPlasteel
|
||||
|
||||
- type: Tag
|
||||
id: HiltWood
|
||||
|
||||
- type: Tag
|
||||
id: ImprovisedAmmoBox
|
||||
|
||||
- type: Tag
|
||||
id: MagazinePistolImprovised
|
||||
|
||||
- type: Tag
|
||||
id: MagazineSMGImprovised
|
||||
|
||||
- type: Tag
|
||||
id: ModularBarrel
|
||||
|
||||
- type: Tag
|
||||
id: SwordForged
|
||||
|
||||
- type: Tag
|
||||
id: SpeedLoaderMagnumImprovised
|
||||
|
||||
- type: Tag
|
||||
id: ShellShotgunImprovised
|
||||
|
||||
- type: Tag
|
||||
id: SpeedLoaderShotgun
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue