mech equipment fix (#12969)

This commit is contained in:
Nemanja
2022-12-11 06:31:55 -05:00
committed by GitHub
parent 58d57c2e8e
commit ef8db74533
2 changed files with 5 additions and 4 deletions

View File

@@ -36,6 +36,9 @@ public sealed class MechEquipmentSystem : EntitySystem
if (!TryComp<MechComponent>(mech, out var mechComp)) if (!TryComp<MechComponent>(mech, out var mechComp))
return; return;
if (mechComp.Broken)
return;
if (args.User == mechComp.PilotSlot.ContainedEntity) if (args.User == mechComp.PilotSlot.ContainedEntity)
return; return;
@@ -62,7 +65,6 @@ public sealed class MechEquipmentSystem : EntitySystem
{ {
component.TokenSource = null; component.TokenSource = null;
_popup.PopupEntity(Loc.GetString("mech-equipment-finish-install", ("item", uid)), args.Mech, Filter.Pvs(args.Mech)); _popup.PopupEntity(Loc.GetString("mech-equipment-finish-install", ("item", uid)), args.Mech, Filter.Pvs(args.Mech));
_mech.InsertEquipment(args.Mech, uid); _mech.InsertEquipment(args.Mech, uid);
} }

View File

@@ -292,15 +292,14 @@ public abstract class SharedMechSystem : EntitySystem
if (attemptev.Cancelled) if (attemptev.Cancelled)
return; return;
} }
equipmentComponent.EquipmentOwner = null;
component.EquipmentContainer.Remove(toRemove, EntityManager);
var ev = new MechEquipmentRemovedEvent(uid); var ev = new MechEquipmentRemovedEvent(uid);
RaiseLocalEvent(toRemove, ref ev); RaiseLocalEvent(toRemove, ref ev);
if (component.CurrentSelectedEquipment == toRemove) if (component.CurrentSelectedEquipment == toRemove)
CycleEquipment(uid, component); CycleEquipment(uid, component);
equipmentComponent.EquipmentOwner = null;
component.EquipmentContainer.Remove(toRemove, EntityManager);
UpdateUserInterface(uid, component); UpdateUserInterface(uid, component);
} }