using System; namespace ET { [ActorMessageHandler] public class C2M_PeopleMoveHandler: AMActorLocationRpcHandler { protected async override ETTask Run(Unit unit, C2M_PeopleMove request, M2C_PeopleMove response, Action reply) { try { People people = unit.GetComponent().GetChild(request.PeopleId); if (people != null && people.PeopleMove(request.X, request.Y)) { response.Error = ErrorCode.ERR_Success; } else { response.Error = ErrorCode.ERR_PeopleMoveFail; } reply(); } catch (Exception e) { response.Message = e.ToString(); response.Error = ErrorCode.ERR_PeopleMoveFail; reply(); } await ETTask.CompletedTask; } } }