public async void SendMatchRequest() { var request = NetRequest.CreateAndSend(BBClient.Instance.connection, new MatchMakingRequest(playerId, new MatchMakingSettings())); NetReceivedData response = await request.WaitForResponse(); Log.D(response.data); }
public async Task <bool> TryAuthenticate(Credentials credentials) { if (isConnected == false) { return(false); } Log.Info(LogTag, $"Attempting to authenticate player. Username: {credentials.username}."); NetReceivedData response = await NetRequest.CreateAndSend(connection, credentials).WaitForResponse(); if (response.data is AuthenticationResult authenticationResult) { if (authenticationResult.authenticationSuccessfull) { authToken = authenticationResult.authToken; playerId = authenticationResult.playerId; state = ClientState.Authenticated; Log.Info(LogTag, "Authentication successfull."); return(true); } else { Log.Info(LogTag, "Authentication failed."); } } else { Log.Error(LogTag, "Authentication error: Unexpected response type."); } return(false); }
public void HandleBattleCommandStartActionPhase(NetReceivedData receivedData) { if (receivedData.data is BattleCommandStartActionPhase battleCommandStartActionPhase) { StartActionPhase(); receivedData.SendResponse(true); } }
public override bool IsValidFor(NetReceivedData receivedData) { if (receivedData.data is UnitOrder unitOrder) { return(unitOrder.battleId == battleId); } return(false); }
public void HandleUnitActionStop(NetReceivedData receivedData) { if (receivedData.data is UnitActionStop unitAction) { BattleUnit battleUnit = GetBattleUnit(unitAction.unitInstanceId); battleUnit.HandleUnitActionStop(unitAction); receivedData.SendResponse(true); } }
public async void HandleUnitActionDie(NetReceivedData receivedData) { if (receivedData.data is UnitActionDie unitAction) { BattleUnit battleUnit = GetBattleUnit(unitAction.unitInstanceId); await battleUnit.HandleUnitActionDie(unitAction); receivedData.SendResponse(true); } }
public async void HandleMatchMakingRequestDataEvent(NetReceivedData receivedData) { if (receivedData.data is MatchMakingRequest matchMakingRequest) { receivedData.requestHandled = true; PlayerData playerData = BBServer.Instance.Systems.Database.GetPlayerDataById(matchMakingRequest.playerId); MatchMakingResult result = await FindAMatch(playerData, matchMakingRequest.matchMakingSettings); Log.D(result); receivedData.SendResponse(result); } }
public void HandleBattleCommandStartPlanningPhase(NetReceivedData receivedData) { if (receivedData.data is BattleCommandStartPlanningPhase battleCommandStartPlanningPhase) { turnStartTime = DateTime.Now; turnEndTime = DateTime.Now.AddMilliseconds(battleCommandStartPlanningPhase.phaseTime); CalculateCurrentTurnTimerValues(); enableTimerDisplay.Value = true; StartPlanningPhase(); receivedData.SendResponse(true); } }
public void HandleLoadBattleRequest(NetReceivedData receivedData) { LoadBattleRequestData loadBattleRequest = receivedData.data as LoadBattleRequestData; battleData = loadBattleRequest.battle; ClearSpawnedUnits(); foreach (var unitInstanceData in battleData.unitsOnBoard) { SpawnUnitFor(unitInstanceData); } receivedData.SendResponse(true); }
public async void HandleUnitActionRetaliate(NetReceivedData receivedData) { if (receivedData.data is UnitActionRetaliate unitAction) { BattleUnit battleUnit = GetBattleUnit(unitAction.unitInstanceId); await battleUnit.HandleUnitActionRetaliate(unitAction); BattleUnit targetUnit = GetBattleUnit(unitAction.targetUnitInstanceId); targetUnit?.SetCount(unitAction.targetRemainingCount); targetUnit?.SetAttack(unitAction.targetRecalculatedAttack); receivedData.SendResponse(true); } }
public void HandleAuthenticationRequest(NetReceivedData receivedData) { if (receivedData.data is Credentials credentials) { if (TryAuthenticateClient(receivedData.connection, credentials, out BBConnectedClient connectedClient)) { RemoveUnauthenticatedClient(connectedClient.NetworkingClient.Connection); AddConnectedClient(connectedClient); receivedData.SendResponse(new AuthenticationResult(true, connectedClient.AuthToken, connectedClient.PlayerData.id)); } else { receivedData.SendResponse(new AuthenticationResult(false, null, null)); } } }
public void HandleUnitOrderStop(NetReceivedData receivedData) { if (receivedData.data is UnitOrderStop unitOrder) { if (battlePhase == BattlePhase.PlanningPhase) { var existingOrder = orders.Find(u => u.unitInstanceId == unitOrder.unitInstanceId); if (existingOrder != null) { orders.Remove(existingOrder); } orders.Add(unitOrder); receivedData.SendResponse(true); } else { receivedData.SendResponse(false); } } }
public override bool IsValidFor(NetReceivedData receivedData) { return(filter1.IsValidFor(receivedData) || filter2.IsValidFor(receivedData)); }
public abstract bool IsValidFor(NetReceivedData receivedData);