quickfix nukie uplinks (#9765)

This commit is contained in:
Nemanja
2022-07-15 15:06:05 -04:00
committed by GitHub
parent 491a1f3b60
commit 7b6de14f12
3 changed files with 13 additions and 23 deletions

View File

@@ -1,7 +1,6 @@
using Content.Shared.Traitor.Uplink;
using JetBrains.Annotations;
using Robust.Client.GameObjects;
using Robust.Shared.GameObjects;
namespace Content.Client.Traitor.Uplink
{
@@ -12,6 +11,7 @@ namespace Content.Client.Traitor.Uplink
public UplinkBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey)
{
}
protected override void Open()
@@ -29,7 +29,6 @@ namespace Content.Client.Traitor.Uplink
{
_menu.CurrentFilterCategory = category;
SendMessage(new UplinkRequestUpdateInterfaceMessage());
};
_menu.OnWithdrawAttempt += (tc) =>

View File

@@ -1,10 +1,8 @@
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using Content.Server.Traitor.Uplink.Components;
using Content.Shared.Stacks;
using Content.Shared.Traitor.Uplink;
using Robust.Shared.Map;
using Robust.Shared.Prototypes;
namespace Content.Server.Traitor.Uplink.Account
{
@@ -70,28 +68,18 @@ namespace Content.Server.Traitor.Uplink.Account
}
public bool TryPurchaseItem(UplinkComponent component, string itemId, EntityCoordinates spawnCoords, [NotNullWhen(true)] out EntityUid? purchasedItem)
public bool TryPurchaseItem(UplinkAccount acc, string itemId, EntityCoordinates spawnCoords, [NotNullWhen(true)] out EntityUid? purchasedItem)
{
var acc = component.UplinkAccount;
purchasedItem = null;
if (acc == null) return false;
if (acc.AccountHolder == null) return false;
if (!_listingSystem.TryGetListing(itemId, out var listing))
{
return false;
}
if (acc.Balance < listing.Price)
{
return false;
}
if (!RemoveFromBalance(acc, listing.Price))
{
return false;
}
purchasedItem = EntityManager.SpawnEntity(listing.ItemId, spawnCoords);
return true;

View File

@@ -111,7 +111,7 @@ namespace Content.Server.Traitor.Uplink
if (message.Session.AttachedEntity is not { Valid: true } player) return;
if (uplink.UplinkAccount == null) return;
if (!_accounts.TryPurchaseItem(uplink, message.ItemId,
if (!_accounts.TryPurchaseItem(uplink.UplinkAccount, message.ItemId,
EntityManager.GetComponent<TransformComponent>(player).Coordinates, out var entity))
{
SoundSystem.Play(uplink.InsufficientFundsSound.GetSound(),
@@ -190,14 +190,14 @@ namespace Content.Server.Traitor.Uplink
}
// filter out items not on the whitelist
if (component.JobWhitelist != null)
{
for (var i = 0; i < listings.Count; i++)
{
var entry = listings[i];
if (entry.JobWhitelist != null)
{
var found = false;
if (component.JobWhitelist != null)
{
foreach (var job in component.JobWhitelist)
{
if (entry.JobWhitelist.Contains(job))
@@ -206,8 +206,11 @@ namespace Content.Server.Traitor.Uplink
break;
}
}
}
if (!found)
{
listings.Remove(entry);
i--;
}
}
}