Fix inventory flickering and missing InventoryTemplateUpdated event (#39379)
* fix flickering * move InitClothing * fix this
This commit is contained in:
parent
f76e3b63b7
commit
6b6bb2e319
3 changed files with 11 additions and 6 deletions
|
|
@ -115,6 +115,13 @@ namespace Content.Client.Inventory
|
|||
OnLinkInventorySlots?.Invoke(uid, component);
|
||||
}
|
||||
|
||||
protected override void OnInit(Entity<InventoryComponent> ent, ref ComponentInit args)
|
||||
{
|
||||
base.OnInit(ent, ref args);
|
||||
|
||||
_clothingVisualsSystem.InitClothing(ent.Owner, ent.Comp);
|
||||
}
|
||||
|
||||
public override void Shutdown()
|
||||
{
|
||||
CommandBinds.Unregister<ClientInventorySystem>();
|
||||
|
|
@ -261,7 +268,6 @@ namespace Content.Client.Inventory
|
|||
TryAddSlotData((ent.Owner, inventorySlots), (SlotData)slot);
|
||||
}
|
||||
|
||||
_clothingVisualsSystem.InitClothing(ent, ent.Comp);
|
||||
if (ent.Owner == _playerManager.LocalEntity)
|
||||
ReloadInventory(inventorySlots);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -194,8 +194,6 @@ public abstract partial class InventorySystem
|
|||
if (triggerHandContact && !((slotDefinition.SlotFlags & SlotFlags.GLOVES) == 0))
|
||||
TriggerHandContactInteraction(target);
|
||||
|
||||
Dirty(target, inventory);
|
||||
|
||||
_movementSpeed.RefreshMovementSpeedModifiers(target);
|
||||
|
||||
return true;
|
||||
|
|
@ -487,8 +485,6 @@ public abstract partial class InventorySystem
|
|||
if (triggerHandContact && !((slotDefinition.SlotFlags & SlotFlags.GLOVES) == 0))
|
||||
TriggerHandContactInteraction(target);
|
||||
|
||||
Dirty(target, inventory);
|
||||
|
||||
_movementSpeed.RefreshMovementSpeedModifiers(target);
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ public partial class InventorySystem : EntitySystem
|
|||
Dirty(target, targetComp);
|
||||
}
|
||||
|
||||
private void OnInit(Entity<InventoryComponent> ent, ref ComponentInit args)
|
||||
protected virtual void OnInit(Entity<InventoryComponent> ent, ref ComponentInit args)
|
||||
{
|
||||
UpdateInventoryTemplate(ent);
|
||||
}
|
||||
|
|
@ -111,6 +111,9 @@ public partial class InventorySystem : EntitySystem
|
|||
container.OccludesLight = false;
|
||||
ent.Comp.Containers[i] = container;
|
||||
}
|
||||
|
||||
var ev = new InventoryTemplateUpdated();
|
||||
RaiseLocalEvent(ent, ref ev);
|
||||
}
|
||||
|
||||
private void OnOpenSlotStorage(OpenSlotStorageNetworkMessage ev, EntitySessionEventArgs args)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue