From 7da7c2be0449c8083eb14c4b66306aa43aa83b86 Mon Sep 17 00:00:00 2001 From: Max Lundgren Date: Sat, 7 Jun 2025 22:05:12 +0300 Subject: [PATCH] Add back #646 - trade ship gold by travelled distance (#1085) ## Description: Return #646 - gold from tradeships by travelled distance https://github.com/openfrontio/OpenFrontIO/pull/646/ ## Please complete the following: - [X] I have added screenshots for all UI updates - [X] I process any text displayed to the user through translateText() and I've added it to the en.json file - [X] I have added relevant tests to the test directory - [X] I confirm I have thoroughly tested these changes and take full responsibility for any bugs introduced - [X] I understand that submitting code with bugs that could have been caught through manual testing blocks releases and new features for all contributors ## Please put your Discord username so you can be contacted if a bug or regression is found: maxion_ --- src/core/execution/TradeShipExecution.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/core/execution/TradeShipExecution.ts b/src/core/execution/TradeShipExecution.ts index 3094b9384..231b3a87c 100644 --- a/src/core/execution/TradeShipExecution.ts +++ b/src/core/execution/TradeShipExecution.ts @@ -21,6 +21,7 @@ export class TradeShipExecution implements Execution { private tradeShip: Unit | undefined; private wasCaptured = false; private pathFinder: PathFinder; + private tilesTraveled = 0; constructor( private _owner: PlayerID, @@ -113,6 +114,7 @@ export class TradeShipExecution implements Execution { this.tradeShip.setSafeFromPirates(); } this.tradeShip.move(result.tile); + this.tilesTraveled++; break; case PathFindResultType.PathNotFound: consolex.warn("captured trade ship cannot find route"); @@ -127,11 +129,7 @@ export class TradeShipExecution implements Execution { private complete() { this.active = false; this.tradeShip!.delete(false); - const gold = this.mg - .config() - .tradeShipGold( - this.mg.manhattanDist(this.srcPort.tile(), this._dstPort.tile()), - ); + const gold = this.mg.config().tradeShipGold(this.tilesTraveled); if (this.wasCaptured) { this.tradeShip!.owner().addGold(gold);