Add escort-specific status labels to job board
- Introduce `escortActive` and `escortActivate` strings in sidequests.json so escort contracts display distinct copy instead of the generic patrol text. - Update JobBoardWindow status and action buttons to branch on `category === 'escort'`, falling back to existing bounty/patrol labels.
This commit is contained in:
parent
f49051be69
commit
335eccde70
|
|
@ -684,6 +684,8 @@
|
||||||
"activate": "SET PATROL ACTIVE",
|
"activate": "SET PATROL ACTIVE",
|
||||||
"bountyActive": "HUNT ACTIVE",
|
"bountyActive": "HUNT ACTIVE",
|
||||||
"bountyActivate": "SET HUNT ACTIVE",
|
"bountyActivate": "SET HUNT ACTIVE",
|
||||||
|
"escortActive": "ESCORT ACTIVE",
|
||||||
|
"escortActivate": "SET ESCORT ACTIVE",
|
||||||
"complete": "CONTRACT COMPLETE",
|
"complete": "CONTRACT COMPLETE",
|
||||||
"claim": "CLAIM REWARD — {reward} CR",
|
"claim": "CLAIM REWARD — {reward} CR",
|
||||||
"claimXp": "CLAIM REWARD — {reward} CR · +{xp} XP",
|
"claimXp": "CLAIM REWARD — {reward} CR · +{xp} XP",
|
||||||
|
|
|
||||||
|
|
@ -616,11 +616,14 @@ export class JobBoardWindow extends Phaser.GameObjects.Container {
|
||||||
rightTxt = String(ui.complete ?? 'CONTRACT COMPLETE');
|
rightTxt = String(ui.complete ?? 'CONTRACT COMPLETE');
|
||||||
rightColor = C.neon;
|
rightColor = C.neon;
|
||||||
} else if (state === 'active') {
|
} else if (state === 'active') {
|
||||||
// A hunt flying reads as a HUNT, not a patrol (data → ui.bountyActive);
|
// A hunt flying reads as a HUNT, an escort as an ESCORT, not a patrol
|
||||||
// every other contract keeps the standing copy.
|
// (data → ui.bountyActive / ui.escortActive); every other contract
|
||||||
|
// keeps the standing copy.
|
||||||
rightTxt = p.category === 'bounty'
|
rightTxt = p.category === 'bounty'
|
||||||
? String(ui.bountyActive ?? 'HUNT ACTIVE')
|
? String(ui.bountyActive ?? 'HUNT ACTIVE')
|
||||||
: String(ui.active ?? 'PATROL ACTIVE');
|
: p.category === 'escort'
|
||||||
|
? String(ui.escortActive ?? 'ESCORT ACTIVE')
|
||||||
|
: String(ui.active ?? 'PATROL ACTIVE');
|
||||||
rightColor = this._activeColor();
|
rightColor = this._activeColor();
|
||||||
} else if (state === 'accepted') {
|
} else if (state === 'accepted') {
|
||||||
rightTxt = String(ui.accepted ?? 'CONTRACT ACCEPTED');
|
rightTxt = String(ui.accepted ?? 'CONTRACT ACCEPTED');
|
||||||
|
|
@ -931,13 +934,17 @@ export class JobBoardWindow extends Phaser.GameObjects.Container {
|
||||||
} else if (state === 'accepted') {
|
} else if (state === 'accepted') {
|
||||||
label = sel.category === 'bounty'
|
label = sel.category === 'bounty'
|
||||||
? String(ui.bountyActivate ?? 'SET HUNT ACTIVE')
|
? String(ui.bountyActivate ?? 'SET HUNT ACTIVE')
|
||||||
: String(ui.activate ?? 'SET PATROL ACTIVE');
|
: sel.category === 'escort'
|
||||||
|
? String(ui.escortActivate ?? 'SET ESCORT ACTIVE')
|
||||||
|
: String(ui.activate ?? 'SET PATROL ACTIVE');
|
||||||
color = C.green;
|
color = C.green;
|
||||||
action = 'activate';
|
action = 'activate';
|
||||||
} else if (state === 'active') {
|
} else if (state === 'active') {
|
||||||
label = sel.category === 'bounty'
|
label = sel.category === 'bounty'
|
||||||
? String(ui.bountyActive ?? 'HUNT ACTIVE')
|
? String(ui.bountyActive ?? 'HUNT ACTIVE')
|
||||||
: String(ui.active ?? 'PATROL ACTIVE');
|
: sel.category === 'escort'
|
||||||
|
? String(ui.escortActive ?? 'ESCORT ACTIVE')
|
||||||
|
: String(ui.active ?? 'PATROL ACTIVE');
|
||||||
color = this._activeColor();
|
color = this._activeColor();
|
||||||
} else if (state === 'complete') {
|
} else if (state === 'complete') {
|
||||||
label =
|
label =
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue