Refactor magvisualizer (#8568)
This commit is contained in:
@@ -0,0 +1,33 @@
|
|||||||
|
using Content.Client.Weapons.Ranged.Systems;
|
||||||
|
|
||||||
|
namespace Content.Client.Weapons.Ranged.Components;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Visualizer for gun mag presence; can change states based on ammo count or toggle visibility entirely.
|
||||||
|
/// </summary>
|
||||||
|
[RegisterComponent, Friend(typeof(GunSystem))]
|
||||||
|
public sealed class MagazineVisualsComponent : Component
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// What RsiState we use.
|
||||||
|
/// </summary>
|
||||||
|
[DataField("magState")] public string? MagState;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// How many steps there are
|
||||||
|
/// </summary>
|
||||||
|
[DataField("steps")] public int MagSteps;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Should we hide when the count is 0
|
||||||
|
/// </summary>
|
||||||
|
[DataField("zeroVisible")] public bool ZeroVisible;
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum GunVisualLayers : byte
|
||||||
|
{
|
||||||
|
Base,
|
||||||
|
BaseUnshaded,
|
||||||
|
Mag,
|
||||||
|
MagUnshaded,
|
||||||
|
}
|
||||||
@@ -1,62 +1,61 @@
|
|||||||
|
using Content.Client.Weapons.Ranged.Components;
|
||||||
using Content.Shared.Rounding;
|
using Content.Shared.Rounding;
|
||||||
using Content.Shared.Weapons.Ranged.Systems;
|
using Content.Shared.Weapons.Ranged.Systems;
|
||||||
using JetBrains.Annotations;
|
|
||||||
using Robust.Client.GameObjects;
|
using Robust.Client.GameObjects;
|
||||||
using SharedGunSystem = Content.Shared.Weapons.Ranged.Systems.SharedGunSystem;
|
|
||||||
|
|
||||||
namespace Content.Client.Weapons.Ranged.Components;
|
namespace Content.Client.Weapons.Ranged.Systems;
|
||||||
|
|
||||||
[UsedImplicitly]
|
public sealed partial class GunSystem
|
||||||
public sealed class MagVisualizer : AppearanceVisualizer
|
|
||||||
{
|
{
|
||||||
[DataField("magState")] private string? _magState;
|
private void InitializeMagazineVisuals()
|
||||||
[DataField("steps")] private int _magSteps;
|
|
||||||
[DataField("zeroVisible")] private bool _zeroVisible;
|
|
||||||
|
|
||||||
public override void InitializeEntity(EntityUid entity)
|
|
||||||
{
|
{
|
||||||
base.InitializeEntity(entity);
|
SubscribeLocalEvent<MagazineVisualsComponent, ComponentInit>(OnMagazineVisualsInit);
|
||||||
var sprite = IoCManager.Resolve<IEntityManager>().GetComponent<ISpriteComponent>(entity);
|
SubscribeLocalEvent<MagazineVisualsComponent, AppearanceChangeEvent>(OnMagazineVisualsChange);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnMagazineVisualsInit(EntityUid uid, MagazineVisualsComponent component, ComponentInit args)
|
||||||
|
{
|
||||||
|
if (!TryComp<SpriteComponent>(uid, out var sprite)) return;
|
||||||
|
|
||||||
if (sprite.LayerMapTryGet(GunVisualLayers.Mag, out _))
|
if (sprite.LayerMapTryGet(GunVisualLayers.Mag, out _))
|
||||||
{
|
{
|
||||||
sprite.LayerSetState(GunVisualLayers.Mag, $"{_magState}-{_magSteps - 1}");
|
sprite.LayerSetState(GunVisualLayers.Mag, $"{component.MagState}-{component.MagSteps - 1}");
|
||||||
sprite.LayerSetVisible(GunVisualLayers.Mag, false);
|
sprite.LayerSetVisible(GunVisualLayers.Mag, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sprite.LayerMapTryGet(GunVisualLayers.MagUnshaded, out _))
|
if (sprite.LayerMapTryGet(GunVisualLayers.MagUnshaded, out _))
|
||||||
{
|
{
|
||||||
sprite.LayerSetState(GunVisualLayers.MagUnshaded, $"{_magState}-unshaded-{_magSteps - 1}");
|
sprite.LayerSetState(GunVisualLayers.MagUnshaded, $"{component.MagState}-unshaded-{component.MagSteps - 1}");
|
||||||
sprite.LayerSetVisible(GunVisualLayers.MagUnshaded, false);
|
sprite.LayerSetVisible(GunVisualLayers.MagUnshaded, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OnChangeData(AppearanceComponent component)
|
private void OnMagazineVisualsChange(EntityUid uid, MagazineVisualsComponent component, ref AppearanceChangeEvent args)
|
||||||
{
|
{
|
||||||
base.OnChangeData(component);
|
|
||||||
|
|
||||||
// tl;dr
|
// tl;dr
|
||||||
// 1.If no mag then hide it OR
|
// 1.If no mag then hide it OR
|
||||||
// 2. If step 0 isn't visible then hide it (mag or unshaded)
|
// 2. If step 0 isn't visible then hide it (mag or unshaded)
|
||||||
// 3. Otherwise just do mag / unshaded as is
|
// 3. Otherwise just do mag / unshaded as is
|
||||||
var sprite = IoCManager.Resolve<IEntityManager>().GetComponent<ISpriteComponent>(component.Owner);
|
var sprite = args.Sprite;
|
||||||
|
|
||||||
if (!component.TryGetData(AmmoVisuals.MagLoaded, out bool magloaded) ||
|
if (sprite == null) return;
|
||||||
magloaded)
|
|
||||||
|
if (!args.AppearanceData.TryGetValue(AmmoVisuals.MagLoaded, out var magloaded) ||
|
||||||
|
magloaded is true)
|
||||||
{
|
{
|
||||||
if (!component.TryGetData(AmmoVisuals.AmmoMax, out int capacity))
|
if (!args.AppearanceData.TryGetValue(AmmoVisuals.AmmoMax, out var capacity))
|
||||||
{
|
{
|
||||||
capacity = _magSteps;
|
capacity = component.MagSteps;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!component.TryGetData(AmmoVisuals.AmmoCount, out int current))
|
if (!args.AppearanceData.TryGetValue(AmmoVisuals.AmmoCount, out var current))
|
||||||
{
|
{
|
||||||
current = _magSteps;
|
current = component.MagSteps;
|
||||||
}
|
}
|
||||||
|
|
||||||
var step = ContentHelpers.RoundToLevels(current, capacity, _magSteps);
|
var step = ContentHelpers.RoundToLevels((int) current, (int) capacity, component.MagSteps);
|
||||||
|
|
||||||
if (step == 0 && !_zeroVisible)
|
if (step == 0 && !component.ZeroVisible)
|
||||||
{
|
{
|
||||||
if (sprite.LayerMapTryGet(GunVisualLayers.Mag, out _))
|
if (sprite.LayerMapTryGet(GunVisualLayers.Mag, out _))
|
||||||
{
|
{
|
||||||
@@ -74,13 +73,13 @@ public sealed class MagVisualizer : AppearanceVisualizer
|
|||||||
if (sprite.LayerMapTryGet(GunVisualLayers.Mag, out _))
|
if (sprite.LayerMapTryGet(GunVisualLayers.Mag, out _))
|
||||||
{
|
{
|
||||||
sprite.LayerSetVisible(GunVisualLayers.Mag, true);
|
sprite.LayerSetVisible(GunVisualLayers.Mag, true);
|
||||||
sprite.LayerSetState(GunVisualLayers.Mag, $"{_magState}-{step}");
|
sprite.LayerSetState(GunVisualLayers.Mag, $"{component.MagState}-{step}");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sprite.LayerMapTryGet(GunVisualLayers.MagUnshaded, out _))
|
if (sprite.LayerMapTryGet(GunVisualLayers.MagUnshaded, out _))
|
||||||
{
|
{
|
||||||
sprite.LayerSetVisible(GunVisualLayers.MagUnshaded, true);
|
sprite.LayerSetVisible(GunVisualLayers.MagUnshaded, true);
|
||||||
sprite.LayerSetState(GunVisualLayers.MagUnshaded, $"{_magState}-unshaded-{step}");
|
sprite.LayerSetState(GunVisualLayers.MagUnshaded, $"{component.MagState}-unshaded-{step}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -97,11 +96,3 @@ public sealed class MagVisualizer : AppearanceVisualizer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum GunVisualLayers : byte
|
|
||||||
{
|
|
||||||
Base,
|
|
||||||
BaseUnshaded,
|
|
||||||
Mag,
|
|
||||||
MagUnshaded,
|
|
||||||
}
|
|
||||||
@@ -65,6 +65,7 @@ public sealed partial class GunSystem : SharedGunSystem
|
|||||||
// Plays animated effects on the client.
|
// Plays animated effects on the client.
|
||||||
SubscribeNetworkEvent<HitscanEvent>(OnHitscan);
|
SubscribeNetworkEvent<HitscanEvent>(OnHitscan);
|
||||||
|
|
||||||
|
InitializeMagazineVisuals();
|
||||||
InitializeSpentAmmo();
|
InitializeSpentAmmo();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ namespace Content.Server.Entry
|
|||||||
"DiseaseMachineVisuals",
|
"DiseaseMachineVisuals",
|
||||||
"HandheldGPS",
|
"HandheldGPS",
|
||||||
"SpentAmmoVisuals",
|
"SpentAmmoVisuals",
|
||||||
|
"MagazineVisuals",
|
||||||
"ToggleableLightVisuals",
|
"ToggleableLightVisuals",
|
||||||
"CableVisualizer",
|
"CableVisualizer",
|
||||||
"PotencyVisuals",
|
"PotencyVisuals",
|
||||||
|
|||||||
@@ -14,9 +14,8 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|||||||
@@ -16,12 +16,11 @@
|
|||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Boxes/caseless_rifle.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Boxes/caseless_rifle.rsi
|
||||||
netsync: false
|
netsync: false
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Boxes
|
# Boxes
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -38,12 +37,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag10-1
|
- state: mag10-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag10
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag10
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseMagazineBoxCaselessRifle
|
parent: BaseMagazineBoxCaselessRifle
|
||||||
@@ -59,12 +57,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: magb-1
|
- state: magb-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: magb
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: magb
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseMagazineBoxCaselessRifle
|
parent: BaseMagazineBoxCaselessRifle
|
||||||
@@ -81,12 +78,11 @@
|
|||||||
- state: magb-1
|
- state: magb-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
- state: rubber-b
|
- state: rubber-b
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: magb
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: magb
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseMagazineBoxCaselessRifle
|
parent: BaseMagazineBoxCaselessRifle
|
||||||
|
|||||||
@@ -16,12 +16,11 @@
|
|||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi
|
||||||
netsync: false
|
netsync: false
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Boxes
|
# Boxes
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -38,12 +37,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: magb-1
|
- state: magb-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: magb
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: magb
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseMagazineBoxLightRifle
|
parent: BaseMagazineBoxLightRifle
|
||||||
|
|||||||
@@ -15,12 +15,11 @@
|
|||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi
|
||||||
netsync: false
|
netsync: false
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Boxes
|
# Boxes
|
||||||
- type: entity
|
- type: entity
|
||||||
|
|||||||
@@ -16,12 +16,11 @@
|
|||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi
|
||||||
netsync: false
|
netsync: false
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Boxes
|
# Boxes
|
||||||
- type: entity
|
- type: entity
|
||||||
|
|||||||
@@ -15,12 +15,11 @@
|
|||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Boxes/rifle.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Boxes/rifle.rsi
|
||||||
netsync: false
|
netsync: false
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Boxes
|
# Boxes
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -37,12 +36,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: magb-1
|
- state: magb-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: magb
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: magb
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseMagazineBoxRifle
|
parent: BaseMagazineBoxRifle
|
||||||
@@ -59,12 +57,11 @@
|
|||||||
- state: magb-1
|
- state: magb-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
- state: practice-b
|
- state: practice-b
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: magb
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: magb
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseMagazineBoxRifle
|
parent: BaseMagazineBoxRifle
|
||||||
|
|||||||
@@ -24,12 +24,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BaseMagazineCaselessRifleShort
|
id: BaseMagazineCaselessRifleShort
|
||||||
@@ -70,12 +69,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazineCaselessRifle10x24
|
id: MagazineCaselessRifle10x24
|
||||||
@@ -102,12 +100,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# No flash
|
# No flash
|
||||||
|
|
||||||
@@ -125,12 +122,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazinePistolCaselessRiflePractice
|
id: MagazinePistolCaselessRiflePractice
|
||||||
@@ -146,12 +142,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazinePistolCaselessRifleRubber
|
id: MagazinePistolCaselessRifleRubber
|
||||||
@@ -167,12 +162,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazineCaselessRifle
|
id: MagazineCaselessRifle
|
||||||
|
|||||||
@@ -19,9 +19,8 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|||||||
@@ -25,12 +25,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Magazines
|
# Magazines
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -48,12 +47,11 @@
|
|||||||
size: 10
|
size: 10
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Magazine/LightRifle/light_rifle_box.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Magazine/LightRifle/light_rifle_box.rsi
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 8
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 8
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazineLightRifle
|
id: MagazineLightRifle
|
||||||
@@ -152,9 +150,8 @@
|
|||||||
capacity: 80
|
capacity: 80
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Guns/Ammunition/Magazine/LightRifle/pk_box.rsi
|
sprite: Objects/Weapons/Guns/Ammunition/Magazine/LightRifle/pk_box.rsi
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|||||||
@@ -23,12 +23,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BaseMagazineMagnumSubMachineGun
|
id: BaseMagazineMagnumSubMachineGun
|
||||||
@@ -55,12 +54,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazineMagnum
|
id: MagazineMagnum
|
||||||
|
|||||||
@@ -23,12 +23,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BaseMagazinePistolHighCapacity
|
id: BaseMagazinePistolHighCapacity
|
||||||
@@ -55,12 +54,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BaseMagazinePistolSubMachineGun # Yeah it's weird but it's pistol caliber
|
id: BaseMagazinePistolSubMachineGun # Yeah it's weird but it's pistol caliber
|
||||||
@@ -87,13 +85,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazinePistolSubMachineGunTopMounted
|
id: MagazinePistolSubMachineGunTopMounted
|
||||||
name: WT550 magazine (.35 auto top-mounted)
|
name: WT550 magazine (.35 auto top-mounted)
|
||||||
@@ -116,12 +112,11 @@
|
|||||||
- state: mag-unshaded-1
|
- state: mag-unshaded-1
|
||||||
map: ["enum.GunVisualLayers.MagUnshaded"]
|
map: ["enum.GunVisualLayers.MagUnshaded"]
|
||||||
shader: unshaded
|
shader: unshaded
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazinePistolCalicoTopMounted
|
id: MagazinePistolCalicoTopMounted
|
||||||
@@ -138,12 +133,11 @@
|
|||||||
layers:
|
layers:
|
||||||
- state: icon
|
- state: icon
|
||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazinePistol
|
id: MagazinePistol
|
||||||
|
|||||||
@@ -24,12 +24,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
# Magazines
|
# Magazines
|
||||||
- type: entity
|
- type: entity
|
||||||
|
|||||||
@@ -25,12 +25,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-1
|
- state: mag-1
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 2
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 2
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: MagazineShotgun
|
id: MagazineShotgun
|
||||||
|
|||||||
@@ -26,12 +26,11 @@
|
|||||||
map: [ "enum.GunVisualLayers.Base" ]
|
map: [ "enum.GunVisualLayers.Base" ]
|
||||||
- state: base-6
|
- state: base-6
|
||||||
map: [ "enum.GunVisualLayers.Mag" ]
|
map: [ "enum.GunVisualLayers.Mag" ]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: base
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: base
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderMagnumFlash
|
id: SpeedLoaderMagnumFlash
|
||||||
@@ -47,12 +46,11 @@
|
|||||||
map: [ "enum.GunVisualLayers.Base" ]
|
map: [ "enum.GunVisualLayers.Base" ]
|
||||||
- state: flash-6
|
- state: flash-6
|
||||||
map: [ "enum.GunVisualLayers.Mag" ]
|
map: [ "enum.GunVisualLayers.Mag" ]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: flash
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: flash
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderMagnumHighVelocity
|
id: SpeedLoaderMagnumHighVelocity
|
||||||
@@ -68,12 +66,11 @@
|
|||||||
map: [ "enum.GunVisualLayers.Base" ]
|
map: [ "enum.GunVisualLayers.Base" ]
|
||||||
- state: high-velocity-6
|
- state: high-velocity-6
|
||||||
map: [ "enum.GunVisualLayers.Mag" ]
|
map: [ "enum.GunVisualLayers.Mag" ]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: high-velocity
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: high-velocity
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderMagnumPractice
|
id: SpeedLoaderMagnumPractice
|
||||||
@@ -89,12 +86,11 @@
|
|||||||
map: [ "enum.GunVisualLayers.Base" ]
|
map: [ "enum.GunVisualLayers.Base" ]
|
||||||
- state: practice-6
|
- state: practice-6
|
||||||
map: [ "enum.GunVisualLayers.Mag" ]
|
map: [ "enum.GunVisualLayers.Mag" ]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: practice
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: practice
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderMagnumRubber
|
id: SpeedLoaderMagnumRubber
|
||||||
@@ -110,9 +106,8 @@
|
|||||||
map: [ "enum.GunVisualLayers.Base" ]
|
map: [ "enum.GunVisualLayers.Base" ]
|
||||||
- state: rubber-6
|
- state: rubber-6
|
||||||
map: [ "enum.GunVisualLayers.Mag" ]
|
map: [ "enum.GunVisualLayers.Mag" ]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: rubber
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: rubber
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|||||||
@@ -26,12 +26,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: base-6
|
- state: base-6
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: base
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: base
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderPistolFlash
|
id: SpeedLoaderPistolFlash
|
||||||
@@ -46,12 +45,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: flash-6
|
- state: flash-6
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: flash
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: flash
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderPistolHighVelocity
|
id: SpeedLoaderPistolHighVelocity
|
||||||
@@ -66,12 +64,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: high-velocity-6
|
- state: high-velocity-6
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: high-velocity
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: high-velocity
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderPistolPractice
|
id: SpeedLoaderPistolPractice
|
||||||
@@ -86,12 +83,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: practice-6
|
- state: practice-6
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: practice
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: practice
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderPistolRubber
|
id: SpeedLoaderPistolRubber
|
||||||
@@ -106,9 +102,8 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: rubber-6
|
- state: rubber-6
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: rubber
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: rubber
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|||||||
@@ -17,9 +17,8 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-5
|
- state: mag-5
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: false
|
|
||||||
|
|||||||
@@ -16,12 +16,11 @@
|
|||||||
map: ["enum.GunVisualLayers.Base"]
|
map: ["enum.GunVisualLayers.Base"]
|
||||||
- state: mag-6
|
- state: mag-6
|
||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 7
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 7
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: SpeedLoaderCap
|
id: SpeedLoaderCap
|
||||||
|
|||||||
@@ -16,12 +16,11 @@
|
|||||||
- type: Battery
|
- type: Battery
|
||||||
maxCharge: 1000
|
maxCharge: 1000
|
||||||
startingCharge: 1000
|
startingCharge: 1000
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: false
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: false
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: retro laser gun
|
name: retro laser gun
|
||||||
@@ -43,12 +42,11 @@
|
|||||||
- type: HitscanBatteryAmmoProvider
|
- type: HitscanBatteryAmmoProvider
|
||||||
proto: RedLaser
|
proto: RedLaser
|
||||||
fireCost: 62.5
|
fireCost: 62.5
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: makeshift laser gun
|
name: makeshift laser gun
|
||||||
@@ -240,12 +238,11 @@
|
|||||||
- type: HitscanBatteryAmmoProvider
|
- type: HitscanBatteryAmmoProvider
|
||||||
proto: XrayLaser
|
proto: XrayLaser
|
||||||
fireCost: 100
|
fireCost: 100
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: taser
|
name: taser
|
||||||
@@ -280,12 +277,11 @@
|
|||||||
- type: Battery
|
- type: Battery
|
||||||
maxCharge: 100
|
maxCharge: 100
|
||||||
startingCharge: 100
|
startingCharge: 100
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: antique laser gun
|
name: antique laser gun
|
||||||
@@ -310,11 +306,10 @@
|
|||||||
- type: HitscanBatteryAmmoProvider
|
- type: HitscanBatteryAmmoProvider
|
||||||
proto: RedMediumLaser
|
proto: RedMediumLaser
|
||||||
fireCost: 100
|
fireCost: 100
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 5
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 5
|
|
||||||
zeroVisible: true
|
|
||||||
- type: StaticPrice
|
- type: StaticPrice
|
||||||
price: 750
|
price: 750
|
||||||
@@ -39,9 +39,8 @@
|
|||||||
- type: BallisticAmmoProvider
|
- type: BallisticAmmoProvider
|
||||||
proto: CartridgeMinigun
|
proto: CartridgeMinigun
|
||||||
capacity: 1000
|
capacity: 1000
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 4
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 4
|
|
||||||
zeroVisible: true
|
|
||||||
|
|||||||
@@ -60,9 +60,8 @@
|
|||||||
map: ["enum.GunVisualLayers.Mag"]
|
map: ["enum.GunVisualLayers.Mag"]
|
||||||
- type: Item
|
- type: Item
|
||||||
sprite: Objects/Weapons/Guns/LMGs/l6.rsi
|
sprite: Objects/Weapons/Guns/LMGs/l6.rsi
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 4
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 4
|
|
||||||
zeroVisible: true
|
|
||||||
|
|||||||
@@ -69,12 +69,11 @@
|
|||||||
capacity: 1
|
capacity: 1
|
||||||
soundInsert:
|
soundInsert:
|
||||||
path: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg
|
path: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: multiple rocket launcher
|
name: multiple rocket launcher
|
||||||
@@ -106,9 +105,8 @@
|
|||||||
proto: CartridgeRocketSlow
|
proto: CartridgeRocketSlow
|
||||||
soundInsert:
|
soundInsert:
|
||||||
path: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg
|
path: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|||||||
@@ -42,12 +42,11 @@
|
|||||||
containers:
|
containers:
|
||||||
gun_magazine: !type:ContainerSlot
|
gun_magazine: !type:ContainerSlot
|
||||||
gun_chamber: !type:ContainerSlot
|
gun_chamber: !type:ContainerSlot
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: clarissa
|
name: clarissa
|
||||||
|
|||||||
@@ -45,12 +45,11 @@
|
|||||||
sprite: Objects/Weapons/Guns/Revolvers/deckard.rsi
|
sprite: Objects/Weapons/Guns/Revolvers/deckard.rsi
|
||||||
- type: RevolverAmmoProvider
|
- type: RevolverAmmoProvider
|
||||||
capacity: 5
|
capacity: 5
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 4
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 4
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: Inspector
|
name: Inspector
|
||||||
|
|||||||
@@ -80,12 +80,11 @@
|
|||||||
containers:
|
containers:
|
||||||
gun_magazine: !type:ContainerSlot
|
gun_magazine: !type:ContainerSlot
|
||||||
gun_chamber: !type:ContainerSlot
|
gun_chamber: !type:ContainerSlot
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: Z8 Bulldog
|
name: Z8 Bulldog
|
||||||
@@ -123,12 +122,11 @@
|
|||||||
containers:
|
containers:
|
||||||
gun_magazine: !type:ContainerSlot
|
gun_magazine: !type:ContainerSlot
|
||||||
gun_chamber: !type:ContainerSlot
|
gun_chamber: !type:ContainerSlot
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: Wintermute
|
name: Wintermute
|
||||||
@@ -169,9 +167,8 @@
|
|||||||
containers:
|
containers:
|
||||||
gun_magazine: !type:ContainerSlot
|
gun_magazine: !type:ContainerSlot
|
||||||
gun_chamber: !type:ContainerSlot
|
gun_chamber: !type:ContainerSlot
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|||||||
@@ -60,12 +60,11 @@
|
|||||||
sprite: Objects/Weapons/Guns/SMGs/atreides.rsi
|
sprite: Objects/Weapons/Guns/SMGs/atreides.rsi
|
||||||
- type: Gun
|
- type: Gun
|
||||||
fireRate: 10
|
fireRate: 10
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: C-20r sub machine gun
|
name: C-20r sub machine gun
|
||||||
@@ -86,12 +85,11 @@
|
|||||||
- type: Gun
|
- type: Gun
|
||||||
- type: ChamberMagazineAmmoProvider
|
- type: ChamberMagazineAmmoProvider
|
||||||
# autoEject: true # Do not set this until the PVS prediction issue is resolved
|
# autoEject: true # Do not set this until the PVS prediction issue is resolved
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: Drozd
|
name: Drozd
|
||||||
@@ -134,12 +132,11 @@
|
|||||||
containers:
|
containers:
|
||||||
gun_magazine: !type:ContainerSlot
|
gun_magazine: !type:ContainerSlot
|
||||||
gun_chamber: !type:ContainerSlot
|
gun_chamber: !type:ContainerSlot
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: WT550
|
name: WT550
|
||||||
@@ -184,12 +181,11 @@
|
|||||||
whitelist:
|
whitelist:
|
||||||
tags:
|
tags:
|
||||||
- CartridgePistol
|
- CartridgePistol
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 6
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 6
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: Drozd
|
name: Drozd
|
||||||
|
|||||||
@@ -74,12 +74,11 @@
|
|||||||
gun_magazine: !type:ContainerSlot
|
gun_magazine: !type:ContainerSlot
|
||||||
gun_chamber: !type:ContainerSlot
|
gun_chamber: !type:ContainerSlot
|
||||||
- type: MagazineAmmoProvider
|
- type: MagazineAmmoProvider
|
||||||
|
- type: MagazineVisuals
|
||||||
|
magState: mag
|
||||||
|
steps: 1
|
||||||
|
zeroVisible: true
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
visuals:
|
|
||||||
- type: MagVisualizer
|
|
||||||
magState: mag
|
|
||||||
steps: 1
|
|
||||||
zeroVisible: true
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: double-barreled shotgun
|
name: double-barreled shotgun
|
||||||
|
|||||||
Reference in New Issue
Block a user