Fraser commited on
Commit
54ca588
Β·
1 Parent(s): 8d4d896
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
  }