2021-04-08 20:09:59 +08:00
|
|
|
|
using Cal.DataTable;
|
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
namespace ET
|
|
|
|
|
{
|
|
|
|
|
[ActorMessageHandler]
|
2021-05-01 11:27:41 +08:00
|
|
|
|
public class C2M_StartManulEquipBattleHandler: AMActorLocationRpcHandler<Unit, C2M_StartManulEquipBattle, M2C_StartManulEquipBattle>
|
2021-04-08 20:09:59 +08:00
|
|
|
|
{
|
|
|
|
|
protected override async ETTask Run(Unit unit, C2M_StartManulEquipBattle request, M2C_StartManulEquipBattle response, Action reply)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
//!排除队伍
|
2021-05-01 11:27:41 +08:00
|
|
|
|
// Team team = TeamComponent.Instance.Get(unit.TeamLeaderId);
|
|
|
|
|
// if (team != null)
|
|
|
|
|
// {
|
|
|
|
|
// if (!AppConfig.inst.isTest)
|
|
|
|
|
// if (team.MemberCount < 3)
|
|
|
|
|
// {
|
|
|
|
|
// response.Message = "至少3人才能挑战!";
|
|
|
|
|
// reply();
|
|
|
|
|
// return;
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// if (team.TeamState == TeamState.Fight)
|
|
|
|
|
// {
|
|
|
|
|
// Log.Error($"*【{UserComponent.Instance.Get(unit.Id)?.NickName} ({unit.Id})】多次进行手工副本战斗");
|
|
|
|
|
// response.Message = "系统错误";
|
|
|
|
|
// reply();
|
|
|
|
|
// return;
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// UnitScene unitScene = unit.GetComponent<UnitScene>();
|
|
|
|
|
// UnitSceneType unitSceneType = MapHelper.GetMapType(unitScene.MapId / 100);
|
|
|
|
|
// if (unitSceneType != UnitSceneType.ManulEquip)
|
|
|
|
|
// {
|
|
|
|
|
// Log.Error($"*【{UserComponent.Instance.Get(unit.Id)?.NickName} ({unit.Id})】场景{unitScene.MapId / 100}错误");
|
|
|
|
|
// response.Message = "系统错误";
|
|
|
|
|
// reply();
|
|
|
|
|
// return;
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// MapMonsterComponent monsterComponent = unit.GetComponent<MapMonsterComponent>();
|
|
|
|
|
// if (!monsterComponent.TryGet(MapMonsterType.ManulEquip,out Unit _unit))
|
|
|
|
|
// {
|
|
|
|
|
// response.Message = "您已击杀此领主";
|
|
|
|
|
// reply();
|
|
|
|
|
// return;
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// long configId = _unit.GetComponent<ConfigIdComponent>().configId;
|
|
|
|
|
// ManulEquipMonsterConfig config = ManulEquipMonsterConfigCategory.Instance.Get(configId);
|
|
|
|
|
// MapMonsterConfig mapMonsterConfig =
|
|
|
|
|
// MapMonsterConfigCategory.Instance.Get(MapMonsterConfigCategory.Instance.GetManulEquipId((int) (configId % 1000 / 100)));
|
|
|
|
|
// if ((unitScene.Position - new UnityEngine.Vector2(mapMonsterConfig.X, mapMonsterConfig.Y)).sqrMagnitude > MoveHelper.AtkDis)
|
|
|
|
|
// {
|
|
|
|
|
// Log.Error($"*【{UserComponent.Instance.Get(unit.Id)?.NickName} ({unit.Id})】位置{unitScene.Position}错误");
|
|
|
|
|
// response.Message = "系统错误";
|
|
|
|
|
// reply();
|
|
|
|
|
// return;
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// ManulEquipMap.instance.DestoryUnit(unit);
|
|
|
|
|
// CopyBattle battle = BattleMgrCompnent.Instance.CreateBattle(team);
|
|
|
|
|
// MonsterFactoryHelper.ManulEquipGenerate(battle, config);
|
|
|
|
|
// battle.Init(battle.team, battle.targetTeam, CopyConfigId.ManulEquipBattle, config.Id);
|
|
|
|
|
//
|
|
|
|
|
// response.ConfigId = (int) config.Id;
|
2021-04-08 20:09:59 +08:00
|
|
|
|
reply();
|
|
|
|
|
await ETTask.CompletedTask;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception e)
|
|
|
|
|
{
|
|
|
|
|
Log.Error(e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|