fix: pass gameState to _canAfford in MacroActionMapper
Static method was referencing bare gameState which is always null. Now accepts gameState as parameter, and all 5 callers pass it through. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
b7f9c119cb
commit
30c3ab5a89
1 file changed
+6
-6
@@ -707,7 +707,7 @@ class MacroActionMapper {
|
||||
if (castable.length === 0) return false;
|
||||
castable.sort((a, b) => (MacroActionMapper._cmc(b) - MacroActionMapper._cmc(a)));
|
||||
for (const card of castable) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card)) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card, gameState)) {
|
||||
const idx = hand.indexOf(card);
|
||||
if (idx !== -1) {
|
||||
if (!card.imageUrl) card.imageUrl = generateAiCardSVG(card);
|
||||
@@ -728,7 +728,7 @@ class MacroActionMapper {
|
||||
});
|
||||
|
||||
for (const card of creatures) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card)) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card, gameState)) {
|
||||
const idx = hand.indexOf(card);
|
||||
if (idx !== -1) {
|
||||
if (!card.imageUrl) card.imageUrl = generateAiCardSVG(card);
|
||||
@@ -752,7 +752,7 @@ class MacroActionMapper {
|
||||
if (removal.length === 0) return false;
|
||||
|
||||
for (const card of removal) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card)) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card, gameState)) {
|
||||
const idx = hand.indexOf(card);
|
||||
if (idx !== -1) {
|
||||
if (!card.imageUrl) card.imageUrl = generateAiCardSVG(card);
|
||||
@@ -781,7 +781,7 @@ class MacroActionMapper {
|
||||
);
|
||||
|
||||
for (const card of drawSpells) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card)) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card, gameState)) {
|
||||
const idx = hand.indexOf(card);
|
||||
if (idx !== -1) {
|
||||
if (!card.imageUrl) card.imageUrl = generateAiCardSVG(card);
|
||||
@@ -826,7 +826,7 @@ class MacroActionMapper {
|
||||
);
|
||||
|
||||
for (const card of rampSpells) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card)) {
|
||||
if (MacroActionMapper._canAfford(playerIdx, card, gameState)) {
|
||||
const idx = hand.indexOf(card);
|
||||
if (idx !== -1) {
|
||||
if (!card.imageUrl) card.imageUrl = generateAiCardSVG(card);
|
||||
@@ -884,7 +884,7 @@ class MacroActionMapper {
|
||||
return 0;
|
||||
}
|
||||
|
||||
static _canAfford(playerIdx, card) {
|
||||
static _canAfford(playerIdx, card, gameState) {
|
||||
if (!gameState) return false;
|
||||
const available = typeof aiCountUntappedLands === 'function'
|
||||
? aiCountUntappedLands(playerIdx)
|
||||
|
||||
Reference in new issue
Block a user