public void HandleSpecialAttackDeployedEvent(object cookie) { SpecialAttack specialAttack = (SpecialAttack)cookie; SpecialAttackDeployedAction specialAttackDeployedAction = new SpecialAttackDeployedAction(); specialAttackDeployedAction.Time = this.GetActionTime(); specialAttackDeployedAction.SpecialAttackId = specialAttack.VO.Uid; specialAttackDeployedAction.BoardX = specialAttack.TargetBoardX; specialAttackDeployedAction.BoardZ = specialAttack.TargetBoardZ; specialAttackDeployedAction.TeamType = specialAttack.TeamType; this.battleRecord.Add(specialAttackDeployedAction); }
private void SpecialAttackDeployedActionCallback(uint id, object cookie) { SpecialAttackDeployedAction specialAttackDeployedAction = cookie as SpecialAttackDeployedAction; IDataController dataController = Service.Get <IDataController>(); SpecialAttackTypeVO specialAttackTypeVO = dataController.Get <SpecialAttackTypeVO>(specialAttackDeployedAction.SpecialAttackId); Vector3 vector = new Vector3(Units.BoardToWorldX(specialAttackDeployedAction.BoardX), 0f, Units.BoardToWorldZ(specialAttackDeployedAction.BoardZ)); Service.Get <SpecialAttackController>().DeploySpecialAttack(specialAttackTypeVO, specialAttackDeployedAction.TeamType, vector); IntPosition boardPosition = Units.WorldToBoardIntPosition(vector); this.battleController.OnSpecialAttackDeployed(specialAttackTypeVO.Uid, specialAttackDeployedAction.TeamType, boardPosition); }