feat(battle-engine): close the AI-simulation subsystem (verbatim)

Copied the 89 uncopied AI*SimulationUtility/extension files defining the
AIVirtualCard/AIVirtualField extension methods; the compile loop then auto-closed
the revealed type deps (~3049 files total, drift-clean). 10.0k -> 62 errors.
This commit is contained in:
gamer147
2026-06-05 20:30:59 -04:00
parent 78f310c2b3
commit 824309ec44
472 changed files with 55870 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
using System.Collections.Generic;
using Wizard.Battle.View.Vfx;
namespace Wizard.Battle.Mulligan;
public class NetworkOpponentMulliganCtrl : OpponentMulliganCtrl
{
public NetworkOpponentMulliganCtrl(BattlePlayerBase player, MulliganInfoControl mulliganInfo, bool isUseExchangeMark)
: base(player, mulliganInfo, isUseExchangeMark)
{
_mulliganView = new OpponentMulliganView(mulliganInfo, isUseExchangeMark);
_isHideCard = true;
}
public override VfxBase StartMulliganVfx(SkillProcessor skillProcessor)
{
SequentialVfxPlayer sequentialVfxPlayer = SequentialVfxPlayer.Create();
sequentialVfxPlayer.Register(_battlePlayer.BattleMgr.LoadCardResources(_firstDrawList));
sequentialVfxPlayer.Register(new EnemyMulliganDrawVfx(_firstDrawList, GetMulliganInfo()));
_battlePlayer.CallRecordingMulliganStart(_firstDrawList);
return sequentialVfxPlayer;
}
protected override IDictionary<int, BattleCardBase> _MoveNewCardToHand(IList<BattleCardBase> AbandonCards)
{
return NetworkMoveNewCardToHand(AbandonCards);
}
}

View File

@@ -0,0 +1,39 @@
using System.Collections.Generic;
using Wizard.Battle.View;
using Wizard.Battle.View.Vfx;
namespace Wizard.Battle.Mulligan;
public class NetworkPlayerMulliganCtrl : PlayerMulliganCtrl
{
public NetworkPlayerMulliganCtrl(BattlePlayerBase player, MulliganInfoControl mulliganInfo, IPlayerView view)
: base(player, mulliganInfo, view)
{
_playerMulliganView = new PlayerMulliganView(mulliganInfo, view);
_mulliganView = _playerMulliganView;
m_AbandonList = new List<BattleCardBase>();
}
public override VfxBase StartMulliganVfx(SkillProcessor skillProcessor)
{
DrawFirstMulliganCard();
SequentialVfxPlayer sequentialVfxPlayer = SequentialVfxPlayer.Create();
sequentialVfxPlayer.Register(new PlayerMulliganDrawVfx(_firstDrawList, GetMulliganInfo()));
sequentialVfxPlayer.Register(_playerMulliganView.SortFirstDrawsToKeepZone(_firstDrawList));
sequentialVfxPlayer.Register(InstantVfx.Create(delegate
{
for (int i = 0; i < _firstDrawList.Count; i++)
{
_firstDrawList[i].SetOnDraw(draw: false);
}
_isSetOnCard = true;
}));
_battlePlayer.CallRecordingMulliganStart(_firstDrawList);
return sequentialVfxPlayer;
}
protected override IDictionary<int, BattleCardBase> _MoveNewCardToHand(IList<BattleCardBase> AbandonCards)
{
return NetworkMoveNewCardToHand(AbandonCards);
}
}