Files
SVSimServer/SVSim.BattleEngine/Shim/View/TouchProcessorIfaces.cs
gamer147 be10425819 feat(battle-engine): VfxWith ctor arg order + Unity conversions + ITouchProcessor reattach (1102->958)
- VfxWith<T> ctor params were swapped ((T,VfxBase) vs decomp (VfxBase,T)) -> ~38
  CS1503 across SkillCollectionBase/BattleCardBase skill-processing (ProcessInfo
  <-> VfxBase). These are on the resolution path. Fixed to match decomp.
- UnityEngine primitives: implicit Vector3/Vector2<->Vector4 + Color->Color32
  conversions; Transform.Translate/Rotate(Vector3,Space) overloads (iTween).
- ITouchProcessor was dropped from touch-processor stubs by base-clause recovery;
  re-attach via Shim/View/TouchProcessorIfaces.cs (interface-only for generated
  full-surface stubs, interface+no-op members for the empty hand stubs).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 23:18:35 -04:00

67 lines
3.2 KiB
C#

// AUTHORED SHIM (not copied). Re-attaches ITouchProcessor to the touch-processor
// stubs. m1_baseclauses.py drops interfaces from recovered base clauses (to avoid
// CS0535), but copied battle code converts these processors to ITouchProcessor
// (e.g. TouchProcessorStack pushes them). Touch input is not on the headless
// resolution path — these are compile-only ballast, so the members are no-ops.
using UnityEngine;
using Wizard.Battle.View.Vfx;
namespace Wizard.Battle.Touch
{
// Generated full-surface stubs already carry Start/Update/End/CheckIsEnd —
// only the dropped interface needs re-declaring.
public partial class CardTouchProcessorBase : ITouchProcessor { }
public partial class ChoiceTouchProcessor : ITouchProcessor { }
public partial class DeckTouchProcessor : ITouchProcessor { }
public partial class EvolutionTouchProcessor : ITouchProcessor { }
public partial class FusionSimpleProcessor : ITouchProcessor { }
public partial class FusionTargetSelectTouchProcessor : ITouchProcessor { }
public partial class SelectCardProcessor : ITouchProcessor { }
// Empty hand stubs: supply the four ITouchProcessor members as no-ops.
public partial class SkillTargetSelectTouchProcessor : ITouchProcessor
{
public VfxBase Start() => NullVfx.GetInstance();
public VfxBase Update(float dt, Camera camera) => NullVfx.GetInstance();
public VfxWith<ITouchProcessor> End() => default!;
public bool CheckIsEnd() => default!;
}
public partial class SetCardProcessor : ITouchProcessor
{
public VfxBase Start() => NullVfx.GetInstance();
public VfxBase Update(float dt, Camera camera) => NullVfx.GetInstance();
public VfxWith<ITouchProcessor> End() => default!;
public bool CheckIsEnd() => default!;
}
public partial class EvolutionSimpleProcessor : ITouchProcessor
{
public VfxBase Start() => NullVfx.GetInstance();
public VfxBase Update(float dt, Camera camera) => NullVfx.GetInstance();
public VfxWith<ITouchProcessor> End() => default!;
public bool CheckIsEnd() => default!;
}
public partial class EmotionTouchProcessor : ITouchProcessor
{
public VfxBase Start() => NullVfx.GetInstance();
public VfxBase Update(float dt, Camera camera) => NullVfx.GetInstance();
public VfxWith<ITouchProcessor> End() => default!;
public bool CheckIsEnd() => default!;
}
public partial class ClassBuffTouchProcessor : ITouchProcessor
{
public VfxBase Start() => NullVfx.GetInstance();
public VfxBase Update(float dt, Camera camera) => NullVfx.GetInstance();
public VfxWith<ITouchProcessor> End() => default!;
public bool CheckIsEnd() => default!;
}
// Decomp: DetailPanelTouchProcessor : CardTouchProcessorBase; the hand stub omits
// the base, so supply the interface members directly like the other empty stubs.
public partial class DetailPanelTouchProcessor : ITouchProcessor
{
public VfxBase Start() => NullVfx.GetInstance();
public VfxBase Update(float dt, Camera camera) => NullVfx.GetInstance();
public VfxWith<ITouchProcessor> End() => default!;
public bool CheckIsEnd() => default!;
}
}