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 |
}
|