Drive ATTACK frames through the headless receive conductor and assert on engine board state (node-native harness). Two cases: follower -> enemy leader (leader life drops by atk, attacker spent) and a lethal follower-vs-follower trade (both removed). ATTACK opcode confirmed = 10 (NetworkBattleDefine.PlayActionType). Headless view-untangle (no Engine logic edits; drift clean): - IBattlePlayerView.AttackSelectControl -> non-null HeadlessAttackSelectControl (no-op RegisterAttackPair/ResetCardAfterAttack); IsCardTranslatable left to base. - IBattleCardView.CardInfo -> backing card via BuildInfo (so IsCardTranslatable reads authentic IsClass); class/null view ctors now chain : base(buildInfo). - IBattleCardView._inPlayFrameEffect -> non-null no-op control. - Seed Certification.viewer_id headless so the IsRecovery target parse (vid != UserViewerID) does not throw inside SavedataManager and silently drop the parsed targetList. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
20 lines
978 B
C#
20 lines
978 B
C#
// AUTO-GENERATED no-op stubs (m1_stub_gen) from Shadowverse_Code_2026-05-23\Wizard.Battle.View\EnemyClassBattleCardView.cs
|
|
using UnityEngine;
|
|
using Wizard.Battle.Player.ClassCharacter;
|
|
namespace Wizard.Battle.View
|
|
{
|
|
public partial class EnemyClassBattleCardView
|
|
{
|
|
private static readonly Vector3 ENEMY_FORECASTICON_POS;
|
|
private readonly PlayerClassCharacter _classCharacter;
|
|
public IClassCharacter ClassCharacter { get; set; }
|
|
public float OriginalRootYPosition { get; set; }
|
|
public EnemyClassBattleCardView(BuildInfo buildInfo) : base(buildInfo) { } // HEADLESS-FIX (M-HC-4a): chain BuildInfo so the leader view's CardInfo resolves (attack-on-leader targetting)
|
|
public void StartOutFrame() { }
|
|
public void StartIntoFrame() { }
|
|
public float GetCurrentClipTime() => default!;
|
|
public bool GetCurrentClipIsName(ClassCharaPrm.MotionType motionType) => default!;
|
|
public void ClearSpineObject() { }
|
|
}
|
|
}
|