Skip to content
This repository was archived by the owner on Aug 22, 2025. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 35 additions & 16 deletions Content.Client/_White/WeaponsModules/WeaponModulesVisuals.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
using Content.Client.Weapons.Ranged.Components;
using Content.Shared._White.WeaponModules;
using Content.Shared.Rounding;
using Content.Shared.Weapons.Ranged.Systems;
using Content.Shared._White.WeaponModules;
using Robust.Client.GameObjects;

namespace Content.Client._White.WeaponsModules;
Expand All @@ -16,26 +13,48 @@ protected override void OnAppearanceChange(EntityUid uid, WeaponModulesComponent
if(args.Sprite == null)
return;

args.Sprite.LayerSetVisible(ModuleVisualState.HandGuardModule, false);
args.Sprite.LayerSetVisible(ModuleVisualState.BarrelModule, false);
args.Sprite.LayerSetVisible(ModuleVisualState.AimModule, false);
if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.BarrelModule, out var barrelModule, args.Component))
{
if (barrelModule.Length != 0 && barrelModule != "none")
{
args.Sprite.LayerSetState(ModuleVisualState.BarrelModule, barrelModule);
args.Sprite.LayerSetVisible(ModuleVisualState.BarrelModule, true);
}
else
args.Sprite.LayerSetVisible(ModuleVisualState.BarrelModule, false);
}

if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.HandGuardModule, out var handguardModule, args.Component) && handguardModule.Length != 0 && handguardModule != "none")
if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.HandGuardModule, out var handguardModule, args.Component))
{
args.Sprite.LayerSetState(ModuleVisualState.HandGuardModule, handguardModule);
args.Sprite.LayerSetVisible(ModuleVisualState.HandGuardModule, true);
if (handguardModule.Length != 0 && handguardModule != "none")
{
args.Sprite.LayerSetState(ModuleVisualState.HandGuardModule, handguardModule);
args.Sprite.LayerSetVisible(ModuleVisualState.HandGuardModule, true);
}
else
args.Sprite.LayerSetVisible(ModuleVisualState.HandGuardModule, false);
}

if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.BarrelModule, out var barrelModule, args.Component) && barrelModule.Length != 0 && barrelModule != "none")
if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.AimModule, out var aimModule, args.Component))
{
args.Sprite.LayerSetState(ModuleVisualState.BarrelModule, barrelModule);
args.Sprite.LayerSetVisible(ModuleVisualState.BarrelModule, true);
if (aimModule.Length != 0 && aimModule != "none")
{
args.Sprite.LayerSetState(ModuleVisualState.AimModule, aimModule);
args.Sprite.LayerSetVisible(ModuleVisualState.AimModule, true);
}
else
args.Sprite.LayerSetVisible(ModuleVisualState.AimModule, false);
}

if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.AimModule, out var aimModule, args.Component) && aimModule.Length != 0 && aimModule != "none")
if (AppearanceSystem.TryGetData<string>(uid, ModuleVisualState.ShutterModule, out var shutterModule, args.Component))
{
args.Sprite.LayerSetState(ModuleVisualState.AimModule, aimModule);
args.Sprite.LayerSetVisible(ModuleVisualState.AimModule, true);
if (shutterModule.Length != 0 && shutterModule != "none")
{
args.Sprite.LayerSetState(ModuleVisualState.ShutterModule, shutterModule);
args.Sprite.LayerSetVisible(ModuleVisualState.ShutterModule, true);
}
else
args.Sprite.LayerSetVisible(ModuleVisualState.ShutterModule, false);
}

if (AppearanceSystem.TryGetData(uid, Modules.Light, out var data, args.Component))
Expand Down
8 changes: 4 additions & 4 deletions Content.Server/_White/WeaponModules/WeaponModulesSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ private void FlameHiderModuleOnInsert(EntityUid module, FlameHiderModuleComponen
return;

weaponModulesComponent.WeaponFireEffect = true;
Dirty(module, weaponModulesComponent);
Dirty(weapon, weaponModulesComponent);
}

private void SilencerModuleOnInsert(EntityUid module, SilencerModuleComponent component, EntGotInsertedIntoContainerMessage args)
Expand All @@ -142,7 +142,7 @@ private void SilencerModuleOnInsert(EntityUid module, SilencerModuleComponent co
weaponModulesComponent.WeaponFireEffect = true;
_gunSystem.SetSound(weapon, component.NewSoundGunshot);

Dirty(module, weaponModulesComponent);
Dirty(weapon, weaponModulesComponent);
}

private void AcceleratorModuleOnInsert(EntityUid module, AcceleratorModuleComponent component, EntGotInsertedIntoContainerMessage args)
Expand Down Expand Up @@ -205,7 +205,7 @@ private void FlameHiderModuleOnEject(EntityUid module, FlameHiderModuleComponent
return;

weaponModulesComponent.WeaponFireEffect = false;
Dirty(module, weaponModulesComponent);
Dirty(weapon, weaponModulesComponent);
}

private void SilencerModuleOnEject(EntityUid module, SilencerModuleComponent component, EntGotRemovedFromContainerMessage args)
Expand All @@ -217,7 +217,7 @@ private void SilencerModuleOnEject(EntityUid module, SilencerModuleComponent com

weaponModulesComponent.WeaponFireEffect = false;
_gunSystem.SetSound(weapon, component.OldSoundGunshot!);
Dirty(module, weaponModulesComponent);
Dirty(weapon, weaponModulesComponent);
}

private void AcceleratorModuleOnEject(EntityUid module, AcceleratorModuleComponent component, EntGotRemovedFromContainerMessage args)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public sealed partial class BallisticAmmoProviderComponent : Component
[ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField]
public int UnspawnedCount;

[ViewVariables(VVAccess.ReadWrite), DataField]
[ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField]
public EntityWhitelist? Whitelist;

public Container Container = default!;
Expand Down