Inline UID
This commit is contained in:
@@ -58,7 +58,7 @@ namespace Content.Server.Cargo.Components
|
||||
[DataField("errorSound")]
|
||||
private SoundSpecifier _errorSound = new SoundPathSpecifier("/Audio/Effects/error.ogg");
|
||||
|
||||
private bool Powered => !IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out ApcPowerReceiverComponent? receiver) || receiver.Powered;
|
||||
private bool Powered => !IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner, out ApcPowerReceiverComponent? receiver) || receiver.Powered;
|
||||
private CargoConsoleSystem _cargoConsoleSystem = default!;
|
||||
|
||||
[ViewVariables] private BoundUserInterface? UserInterface => Owner.GetUIOrNull(CargoConsoleUiKey.Key);
|
||||
@@ -91,7 +91,7 @@ namespace Content.Server.Cargo.Components
|
||||
|
||||
private void UserInterfaceOnOnReceiveMessage(ServerBoundUserInterfaceMessage serverMsg)
|
||||
{
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out CargoOrderDatabaseComponent? orders))
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner, out CargoOrderDatabaseComponent? orders))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -143,7 +143,7 @@ namespace Content.Server.Cargo.Components
|
||||
(capacity.CurrentCapacity == capacity.MaxCapacity
|
||||
|| capacity.CurrentCapacity + order.Amount > capacity.MaxCapacity
|
||||
|| !_cargoConsoleSystem.CheckBalance(_bankAccount.Id, (-product.PointCost) * order.Amount)
|
||||
|| !_cargoConsoleSystem.ApproveOrder(Owner.Uid, uid.Value, orders.Database.Id, msg.OrderNumber)
|
||||
|| !_cargoConsoleSystem.ApproveOrder(Owner, uid.Value, orders.Database.Id, msg.OrderNumber)
|
||||
|| !_cargoConsoleSystem.ChangeBalance(_bankAccount.Id, (-product.PointCost) * order.Amount))
|
||||
)
|
||||
{
|
||||
@@ -162,20 +162,20 @@ namespace Content.Server.Cargo.Components
|
||||
// TODO replace with shuttle code
|
||||
// TEMPORARY loop for spawning stuff on telepad (looks for a telepad adjacent to the console)
|
||||
IEntity? cargoTelepad = null;
|
||||
var indices = IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner.Uid).Coordinates.ToVector2i(IoCManager.Resolve<IEntityManager>(), _mapManager);
|
||||
var indices = IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).Coordinates.ToVector2i(IoCManager.Resolve<IEntityManager>(), _mapManager);
|
||||
var offsets = new Vector2i[] { new Vector2i(0, 1), new Vector2i(1, 1), new Vector2i(1, 0), new Vector2i(1, -1),
|
||||
new Vector2i(0, -1), new Vector2i(-1, -1), new Vector2i(-1, 0), new Vector2i(-1, 1), };
|
||||
var adjacentEntities = new List<IEnumerable<IEntity>>(); //Probably better than IEnumerable.concat
|
||||
foreach (var offset in offsets)
|
||||
{
|
||||
adjacentEntities.Add((indices+offset).GetEntitiesInTileFast(IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner.Uid).GridID));
|
||||
adjacentEntities.Add((indices+offset).GetEntitiesInTileFast(IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).GridID));
|
||||
}
|
||||
|
||||
foreach (var enumerator in adjacentEntities)
|
||||
{
|
||||
foreach (IEntity entity in enumerator)
|
||||
{
|
||||
if (IoCManager.Resolve<IEntityManager>().HasComponent<CargoTelepadComponent>(entity.Uid) && IoCManager.Resolve<IEntityManager>().TryGetComponent<ApcPowerReceiverComponent?>(entity.Uid, out var powerReceiver) && powerReceiver.Powered)
|
||||
if (IoCManager.Resolve<IEntityManager>().HasComponent<CargoTelepadComponent>(entity) && IoCManager.Resolve<IEntityManager>().TryGetComponent<ApcPowerReceiverComponent?>(entity, out var powerReceiver) && powerReceiver.Powered)
|
||||
{
|
||||
cargoTelepad = entity;
|
||||
break;
|
||||
@@ -184,7 +184,7 @@ namespace Content.Server.Cargo.Components
|
||||
}
|
||||
if (cargoTelepad != null)
|
||||
{
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<CargoTelepadComponent?>(cargoTelepad.Uid, out var telepadComponent))
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<CargoTelepadComponent?>(cargoTelepad, out var telepadComponent))
|
||||
{
|
||||
var approvedOrders = _cargoConsoleSystem.RemoveAndGetApprovedOrders(orders.Database.Id);
|
||||
orders.Database.ClearOrderCapacity();
|
||||
@@ -201,7 +201,7 @@ namespace Content.Server.Cargo.Components
|
||||
|
||||
private void UpdateUIState()
|
||||
{
|
||||
if (_bankAccount == null || !IoCManager.Resolve<IEntityManager>().EntityExists(Owner.Uid))
|
||||
if (_bankAccount == null || !IoCManager.Resolve<IEntityManager>().EntityExists(Owner))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -67,14 +67,14 @@ namespace Content.Server.Cargo.Components
|
||||
{
|
||||
if (args.Powered && _currentState == CargoTelepadState.Unpowered) {
|
||||
_currentState = CargoTelepadState.Idle;
|
||||
if(IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner.Uid, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
if(IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
spriteComponent.LayerSetState(0, "idle");
|
||||
TeleportLoop();
|
||||
}
|
||||
else if (!args.Powered)
|
||||
{
|
||||
_currentState = CargoTelepadState.Unpowered;
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner.Uid, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
spriteComponent.LayerSetState(0, "offline");
|
||||
}
|
||||
}
|
||||
@@ -83,23 +83,23 @@ namespace Content.Server.Cargo.Components
|
||||
if (_currentState == CargoTelepadState.Idle && _teleportQueue.Count > 0)
|
||||
{
|
||||
_currentState = CargoTelepadState.Charging;
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner.Uid, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
spriteComponent.LayerSetState(0, "idle");
|
||||
Owner.SpawnTimer((int) (TeleportDelay * 1000), () =>
|
||||
{
|
||||
if (!Deleted && !((!IoCManager.Resolve<IEntityManager>().EntityExists(Owner.Uid) ? EntityLifeStage.Deleted : IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(Owner.Uid).EntityLifeStage) >= EntityLifeStage.Deleted) && _currentState == CargoTelepadState.Charging && _teleportQueue.Count > 0)
|
||||
if (!Deleted && !((!IoCManager.Resolve<IEntityManager>().EntityExists(Owner) ? EntityLifeStage.Deleted : IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(Owner).EntityLifeStage) >= EntityLifeStage.Deleted) && _currentState == CargoTelepadState.Charging && _teleportQueue.Count > 0)
|
||||
{
|
||||
_currentState = CargoTelepadState.Teleporting;
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner.Uid, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
spriteComponent.LayerSetState(0, "beam");
|
||||
Owner.SpawnTimer((int) (TeleportDuration * 1000), () =>
|
||||
{
|
||||
if (!Deleted && !((!IoCManager.Resolve<IEntityManager>().EntityExists(Owner.Uid) ? EntityLifeStage.Deleted : IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(Owner.Uid).EntityLifeStage) >= EntityLifeStage.Deleted) && _currentState == CargoTelepadState.Teleporting && _teleportQueue.Count > 0)
|
||||
if (!Deleted && !((!IoCManager.Resolve<IEntityManager>().EntityExists(Owner) ? EntityLifeStage.Deleted : IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(Owner).EntityLifeStage) >= EntityLifeStage.Deleted) && _currentState == CargoTelepadState.Teleporting && _teleportQueue.Count > 0)
|
||||
{
|
||||
SoundSystem.Play(Filter.Pvs(Owner), _teleportSound.GetSound(), Owner, AudioParams.Default.WithVolume(-8f));
|
||||
SpawnProduct(_teleportQueue[0]);
|
||||
_teleportQueue.RemoveAt(0);
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner.Uid, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SpriteComponent?>(Owner, out var spriteComponent) && spriteComponent.LayerCount > 0)
|
||||
spriteComponent.LayerSetState(0, "idle");
|
||||
_currentState = CargoTelepadState.Idle;
|
||||
TeleportLoop();
|
||||
@@ -119,18 +119,18 @@ namespace Content.Server.Cargo.Components
|
||||
if (!_prototypeManager.TryIndex(data.ProductId, out CargoProductPrototype? prototype))
|
||||
return;
|
||||
|
||||
var product = IoCManager.Resolve<IEntityManager>().SpawnEntity(prototype.Product, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner.Uid).Coordinates);
|
||||
var product = IoCManager.Resolve<IEntityManager>().SpawnEntity(prototype.Product, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).Coordinates);
|
||||
|
||||
IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(product.Uid).Anchored = false;
|
||||
IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(product).Anchored = false;
|
||||
|
||||
// spawn a piece of paper.
|
||||
var printed = IoCManager.Resolve<IEntityManager>().SpawnEntity(PrinterOutput, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner.Uid).Coordinates);
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(printed.Uid, out PaperComponent paper))
|
||||
var printed = IoCManager.Resolve<IEntityManager>().SpawnEntity(PrinterOutput, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).Coordinates);
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(printed, out PaperComponent paper))
|
||||
return;
|
||||
|
||||
// fill in the order data
|
||||
string val = Loc.GetString("cargo-console-paper-print-name", ("orderNumber", data.OrderNumber));
|
||||
IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(printed.Uid).EntityName = val;
|
||||
IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(printed).EntityName = val;
|
||||
paper.SetContent(Loc.GetString(
|
||||
"cargo-console-paper-print-text",
|
||||
("orderNumber", data.OrderNumber),
|
||||
@@ -139,7 +139,7 @@ namespace Content.Server.Cargo.Components
|
||||
("approver", data.Approver)));
|
||||
|
||||
// attempt to attach the label
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(product.Uid, out PaperLabelComponent label))
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(product, out PaperLabelComponent label))
|
||||
{
|
||||
EntitySystem.Get<ItemSlotsSystem>().TryInsert(OwnerUid, label.LabelSlot, printed);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user