diff --git a/src/games/swdbg/SWDBGGame.js b/src/games/swdbg/SWDBGGame.js index 5a6e19a..23d9694 100644 --- a/src/games/swdbg/SWDBGGame.js +++ b/src/games/swdbg/SWDBGGame.js @@ -787,15 +787,20 @@ export default class SWDBGGame extends Phaser.Scene { // the row const rowX0 = 510; const legal = this.humanTurnLegal(); + const humanFaction = gs.players[this.humanSeat].faction; gs.galaxy.row.forEach((card, i) => { const def = cardDef(card); const x = rowX0 + i * (cw + 14); - this._rowPos.set(card.uid, { x, y }); + // nudge cards vertically to hint at ownership: down for the player's own + // faction (easier to buy), up for the opponent's faction, untouched if neutral + const rowNudge = def.faction === 'neutral' ? 0 : def.faction === humanFaction ? 12 : -12; + const cy = y + rowNudge; + this._rowPos.set(card.uid, { x, y: cy }); const buyable = !this.squad.size && legal && legal.buys.some((b) => b.uid === card.uid); const targetable = this.squad.size > 0 && this.rowTargetReachable(card); const freeTarget = this.mode.type === 'target' && ['discardRow', 'freePurchase', 'destroyCapital'].includes(this.mode.decision?.op) && (this.mode.candidates || []).some((c) => c.uid === card.uid); - this.makeCard(x, y, card, cw, ch, { + this.makeCard(x, cy, card, cw, ch, { parent: this.rowLayer, showText: true, highlightBuy: buyable, highlightTarget: targetable, highlightGold: freeTarget, onClick: () => this.onRowClicked(card),