diff --git a/ChangeLog.md b/ChangeLog.md index 316b3f0e..3468f1dd 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -2,6 +2,7 @@ * Fix crash when removing the special effect from a module * Ensure comparisons with saved stock ships work correctly * Add 'Racer' role + * Tidy up shipyard page; remove units from data columns and re-order for legibility #2.3.3 * Remove unused blueprint when hitting reset diff --git a/src/app/pages/ShipyardPage.jsx b/src/app/pages/ShipyardPage.jsx index 277ac5b3..778ff01a 100644 --- a/src/app/pages/ShipyardPage.jsx +++ b/src/app/pages/ShipyardPage.jsx @@ -54,7 +54,18 @@ function shipSummary(shipId, shipData) { summary.retailCost = ship.totalCost; // Record Stock/Default/retail cost ship.optimizeMass({ pd: '1D' }); // Optimize Mass with 1D PD for maximum possible jump range summary.maxJumpRange = ship.unladenRange; // Record Jump Range - ship.optimizeMass({ th: ship.standard[1].maxClass + 'A', fsd: '2D', ft: '1C' }); // Optmize mass with Max Thrusters + + // Best thrusters + let th; + if (ship.standard[1].maxClass === 3) { + th = 'tz'; + } else if (ship.standard[1].maxClass === 2) { + th = 'u0'; + } else { + th = ship.standard[1].maxClass + 'A'; + } + + ship.optimizeMass({ th: th, fsd: '2D', ft: '1C' }); // Optmize mass with Max Thrusters summary.topSpeed = ship.topSpeed; summary.topBoost = ship.topBoost; summary.baseArmour = ship.armour; @@ -139,19 +150,22 @@ export default class ShipyardPage extends Page { className={cn({ highlighted: noTouch && this.state.shipId === s.id })} onMouseEnter={noTouch && this._highlightShip.bind(this, s.id)} > - {s.manufacturer} - {translate(SizeMap[s.class])} + {s.manufacturer} + {fInt(s.retailCost)} + {translate(SizeMap[s.class])} + {fInt(s.crew)} + {s.masslock} {fInt(s.agility)} {fInt(s.hardness)} - {fInt(s.crew)} - {fInt(s.speed)}{u['m/s']} - {fInt(s.boost)}{u['m/s']} + {fInt(s.hullMass)} + {fInt(s.speed)} + {fInt(s.boost)} {fInt(s.baseArmour)} - {fInt(s.baseShieldStrength)}{u.MJ} - {fInt(s.topSpeed)}{u['m/s']} - {fInt(s.topBoost)}{u['m/s']} - {fRound(s.maxJumpRange)}{u.LY} - {fInt(s.maxCargo)}{u.T} + {fInt(s.baseShieldStrength)} + {fInt(s.topSpeed)} + {fInt(s.topBoost)} + {fRound(s.maxJumpRange)} + {fInt(s.maxCargo)} {s.standard[0]} {s.standard[1]} {s.standard[2]} @@ -171,9 +185,6 @@ export default class ShipyardPage extends Page { {s.int[5]} {s.int[6]} {s.int[7]} - {fInt(s.hullMass)}{u.T} - {s.masslock} - {fInt(s.retailCost)}{u.CR} ; } @@ -236,7 +247,7 @@ export default class ShipyardPage extends Page { let detailRows = new Array(shipSummaries.length); for (let s of shipSummaries) { - detailRows[i] = this._shipRowElement(s, translate, units, fInt, fRound); + detailRows[i] = this._shipRowElement(s, translate, units, fInt, formats.f1); shipRows[i] = ( - {translate('ship')} + {translate('ship')} @@ -267,21 +278,23 @@ export default class ShipyardPage extends Page { - - - - - + + + + + + + + - - - - - - + + + + + @@ -292,6 +305,21 @@ export default class ShipyardPage extends Page { + + + + + + + + + + + + + + +
{translate('manufacturer')}{translate('size')}{translate('agility')}{translate('hardness')}{translate('crew')}{translate('manufacturer')} {translate('size')}{translate('crew')}{translate('MLF')}{translate('agility')}{translate('hrd')}  {translate('base')} {translate('max')}{translate('core module classes')}{translate('hardpoints')}{translate('internal compartments')}{translate('hull')}{translate('MLF')}{translate('cost')}
{translate('cost')}{translate('hull')} {translate('speed')} {translate('boost')} {translate('armour')}{translate('jump')} {translate('cargo')}{translate('core module classes')}{translate('hardpoints')}{translate('internal compartments')}
{units.CR}{units.T}{units['m/s']}{units['m/s']} {units.MJ}{units['m/s']}{units['m/s']}{units.LY}{units.T} {'pp'} {'th'} {'fsd'}