/* * @Author: 白哉 * @Description: 小兵逻辑接口 * @Date: 2025年04月01日 星期二 11:04:32 * @Modify: */ using UnityEngine; using RuntimeData; namespace Logic { public interface IUnitLogic { bool MoveTo(MapData mapData, UnitData unitData, GridData gridData, MoveType moveType); //unit[uid]移动到grid[pos] bool Attack(MapData mapData, UnitData unitDataA, UnitData unitDataB, out float duration); //unit[A]攻击unit[B] void Upgrade(MapData mapData, UnitData unitData); //unit[uid]升级 void Recover(MapData mapData, UnitData unitData); //unit[uid]原地休息 void TransformToShip(MapData mapData, UnitData unitData, UnitType shipType); //unit[uid]进阶成为shipType类型的单位 void LandToBoat(MapData mapData, UnitData unitData); //unit[uid]从陆地进入港口,变为boat void BoatToLand(MapData mapData, UnitData unitData); //unit[uid]从港口进入陆地,变为原来的单位 void Die(MapData mapData, UnitData unitData); //unit[uid]死亡 void StartNextTurn(MapData mapData, UnitData unitData); //unit[uid]进入下一回合 } }