more logs
Browse files
src/lib/battle-engine/BattleEngine.ts
CHANGED
|
@@ -440,12 +440,21 @@ export class BattleEngine {
|
|
| 440 |
|
| 441 |
switch (effect.type) {
|
| 442 |
case 'damage':
|
|
|
|
|
|
|
|
|
|
|
|
|
| 443 |
if (effect.target === 'all') {
|
| 444 |
// Self-destruct style moves that damage all targets
|
|
|
|
| 445 |
this.processDamageEffect(effect, attacker, attacker, move); // Self-damage
|
| 446 |
this.processDamageEffect(effect, attacker, defender, move); // Opponent damage
|
| 447 |
} else {
|
| 448 |
const damageTarget = this.resolveTarget(effect.target, attacker, defender);
|
|
|
|
|
|
|
|
|
|
|
|
|
| 449 |
if (damageTarget) this.processDamageEffect(effect, attacker, damageTarget, move);
|
| 450 |
}
|
| 451 |
break;
|
|
@@ -556,12 +565,21 @@ export class BattleEngine {
|
|
| 556 |
}
|
| 557 |
|
| 558 |
private resolveTarget(target: string, attacker: BattlePiclet, defender: BattlePiclet): BattlePiclet | null {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 559 |
switch (target) {
|
| 560 |
case 'self':
|
|
|
|
| 561 |
return attacker;
|
| 562 |
case 'opponent':
|
|
|
|
| 563 |
return defender;
|
| 564 |
default:
|
|
|
|
| 565 |
return null; // Multi-target not implemented yet
|
| 566 |
}
|
| 567 |
}
|
|
|
|
| 440 |
|
| 441 |
switch (effect.type) {
|
| 442 |
case 'damage':
|
| 443 |
+
console.log('βοΈ Processing damage effect:', {
|
| 444 |
+
target: effect.target,
|
| 445 |
+
isAll: effect.target === 'all'
|
| 446 |
+
});
|
| 447 |
if (effect.target === 'all') {
|
| 448 |
// Self-destruct style moves that damage all targets
|
| 449 |
+
console.log('π£ All-target damage (self-destruct)');
|
| 450 |
this.processDamageEffect(effect, attacker, attacker, move); // Self-damage
|
| 451 |
this.processDamageEffect(effect, attacker, defender, move); // Opponent damage
|
| 452 |
} else {
|
| 453 |
const damageTarget = this.resolveTarget(effect.target, attacker, defender);
|
| 454 |
+
console.log('π― Single target damage:', {
|
| 455 |
+
target: effect.target,
|
| 456 |
+
resolvedTarget: damageTarget?.definition.name || 'null'
|
| 457 |
+
});
|
| 458 |
if (damageTarget) this.processDamageEffect(effect, attacker, damageTarget, move);
|
| 459 |
}
|
| 460 |
break;
|
|
|
|
| 565 |
}
|
| 566 |
|
| 567 |
private resolveTarget(target: string, attacker: BattlePiclet, defender: BattlePiclet): BattlePiclet | null {
|
| 568 |
+
console.log('π resolveTarget called:', {
|
| 569 |
+
target,
|
| 570 |
+
attacker: attacker.definition.name,
|
| 571 |
+
defender: defender.definition.name
|
| 572 |
+
});
|
| 573 |
+
|
| 574 |
switch (target) {
|
| 575 |
case 'self':
|
| 576 |
+
console.log('β
Resolved to self (attacker)');
|
| 577 |
return attacker;
|
| 578 |
case 'opponent':
|
| 579 |
+
console.log('β
Resolved to opponent (defender)');
|
| 580 |
return defender;
|
| 581 |
default:
|
| 582 |
+
console.log('β Unknown target, returning null:', target);
|
| 583 |
return null; // Multi-target not implemented yet
|
| 584 |
}
|
| 585 |
}
|