[Dependency] private readonly UseDelaySystem _useDelay = default!;
[Dependency] private readonly PricingSystem _pricingSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
+ [Dependency] private readonly CargoSystem _bountySystem = default!;
/// <inheritdoc/>
public override void Initialize()
if (!TryComp(uid, out UseDelayComponent? useDelay) || _useDelay.IsDelayed((uid, useDelay)))
return;
- var price = _pricingSystem.GetPrice(args.Target.Value);
+ // Check if we're scanning a bounty crate
+ if (_bountySystem.IsBountyComplete(args.Target.Value, (EntityUid?) null, out _))
+ {
+ _popupSystem.PopupEntity(Loc.GetString("price-gun-bounty-complete"), args.User, args.User);
+ }
+ else // Otherwise appraise the price
+ {
+ double price = _pricingSystem.GetPrice(args.Target.Value);
+ _popupSystem.PopupEntity(Loc.GetString("price-gun-pricing-result", ("object", Identity.Entity(args.Target.Value, EntityManager)), ("price", $"{price:F2}")), args.User, args.User);
+ }
- _popupSystem.PopupEntity(Loc.GetString("price-gun-pricing-result", ("object", Identity.Entity(args.Target.Value, EntityManager)), ("price", $"{price:F2}")), args.User, args.User);
_useDelay.TryResetDelay((uid, useDelay));
args.Handled = true;
}
parent: BaseItem
id: AppraisalTool
name: appraisal tool
- description: A beancounter's best friend, with a quantum connection to the galactic market and the ability to appraise even the toughest items.
+ description: A beancounter's best friend, with a quantum connection to the galactic market and the ability to appraise even the toughest items. It will also tell you if a crate contains a completed bounty.
components:
- type: Sprite
sprite: Objects/Tools/appraisal-tool.rsi