Salvage Job Board (#37549)

* Salvage Job Board

* More development

* Small boy

* Computer yaml (partial)

* UI

* Rank unlock logic

* Job label printing

* appraisal tool integration

* Jobs

* add board to QM locker

* boom!

* command desc

* mild rewording

* ackh, mein pr ist brohken
This commit is contained in:
Nemanja
2025-05-18 00:02:52 -04:00
committed by GitHub
parent 93305c21df
commit 0d878751fa
45 changed files with 1239 additions and 61 deletions

View File

@@ -1,4 +1,5 @@
using Content.Server.Popups;
using Content.Server.Salvage.JobBoard;
using Content.Shared.Cargo.Components;
using Content.Shared.IdentityManagement;
using Content.Shared.Timing;
@@ -13,6 +14,7 @@ public sealed class PriceGunSystem : SharedPriceGunSystem
[Dependency] private readonly PricingSystem _pricingSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly CargoSystem _bountySystem = default!;
[Dependency] private readonly SalvageJobBoardSystem _salvageJobBoard = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!;
protected override bool GetPriceOrBounty(Entity<PriceGunComponent> entity, EntityUid target, EntityUid user)
@@ -24,6 +26,10 @@ public sealed class PriceGunSystem : SharedPriceGunSystem
{
_popupSystem.PopupEntity(Loc.GetString("price-gun-bounty-complete"), user, user);
}
else if (_salvageJobBoard.FulfillsSalvageJob(target, null, out _))
{
_popupSystem.PopupEntity(Loc.GetString("price-gun-salvjob-complete"), user, user);
}
else // Otherwise appraise the price
{
var price = _pricingSystem.GetPrice(target);