private void OnCartridgeGetState(EntityUid uid, CartridgeAmmoComponent component, ref ComponentGetState args) { args.State = new CartridgeAmmoComponentState() { Spent = component.Spent, }; }
private void OnCartridgeHandleState(EntityUid uid, CartridgeAmmoComponent component, ref ComponentHandleState args) { if (args.Current is not CartridgeAmmoComponentState state) { return; } component.Spent = state.Spent; }
protected void SetCartridgeSpent(CartridgeAmmoComponent cartridge, bool spent) { if (cartridge.Spent != spent) { Dirty(cartridge); } cartridge.Spent = spent; if (!TryComp <AppearanceComponent>(cartridge.Owner, out var appearance)) { return; } appearance.SetData(AmmoVisuals.Spent, spent); }