public async Task <MethodResult <GetBuddyWalkedResponse> > GetBuddyWalked() { GetBuddyWalkedResponse getBuddyWalkedResponse = null; try { var response = await ClientSession.RpcClient.SendRemoteProcedureCallAsync(new Request { RequestType = RequestType.GetBuddyWalked, RequestMessage = new GetBuddyWalkedMessage { }.ToByteString() }); getBuddyWalkedResponse = GetBuddyWalkedResponse.Parser.ParseFrom(response); } catch (Exception ex) { LogCaller(new LoggerEventArgs("GetBuddyWalkedResponse is empty", LoggerTypes.Exception, ex)); return(new MethodResult <GetBuddyWalkedResponse> { Data = getBuddyWalkedResponse }); } return(new MethodResult <GetBuddyWalkedResponse> { Data = getBuddyWalkedResponse, Success = true }); }
public static void ProcessGetBuddyWalkedResponse(Client client, GetBuddyWalkedResponse response) { if (response == null) { return; } Logger.Debug("Success:" + response.Success); Logger.Debug("CandyEarnedCount:" + response.CandyEarnedCount); Logger.Debug("FamilyCandyId:" + response.FamilyCandyId); }
public static void ProcessGetBuddyWalkedResponse(Client client, GetBuddyWalkedResponse response) { if (response == null) { return; } if (response.CandyEarnedCount > 0) { Logger.Info("Buddy earnt " + response.CandyEarnedCount + " candies walking."); } }
public static void ProcessCommonResponses(Client client, RepeatedField <ByteString> responses, bool processBuddyWalked = true, bool processInBox = true) { if (responses != null) { var checkChallengeResponse = new CheckChallengeResponse(); if (responses.Count > 1) { checkChallengeResponse.MergeFrom(responses[1]); CommonRequest.ProcessCheckChallengeResponse(client, checkChallengeResponse); } var getHatchedEggsResponse = new GetHatchedEggsResponse(); if (responses.Count > 2) { getHatchedEggsResponse.MergeFrom(responses[2]); CommonRequest.ProcessGetHatchedEggsResponse(client, getHatchedEggsResponse); } var getInventoryResponse = new GetInventoryResponse(); if (responses.Count > 3) { getInventoryResponse.MergeFrom(responses[3]); CommonRequest.ProcessGetInventoryResponse(client, getInventoryResponse); } var checkAwardedBadgesResponse = new CheckAwardedBadgesResponse(); if (responses.Count > 4) { checkAwardedBadgesResponse.MergeFrom(responses[4]); CommonRequest.ProcessCheckAwardedBadgesResponse(client, checkAwardedBadgesResponse); } var downloadSettingsResponse = new DownloadSettingsResponse(); if (responses.Count > 5) { downloadSettingsResponse.MergeFrom(responses[5]); CommonRequest.ProcessDownloadSettingsResponse(client, downloadSettingsResponse); } var index = 5; if (processBuddyWalked) { index++; var getBuddyWalkedResponse = new GetBuddyWalkedResponse(); if (responses.Count > index) { getBuddyWalkedResponse.MergeFrom(responses[index]); CommonRequest.ProcessGetBuddyWalkedResponse(client, getBuddyWalkedResponse); } } if (processInBox) { index++; var getInboxResponse = new GetInboxResponse(); if (responses.Count > index) { getInboxResponse.MergeFrom(responses[index]); CommonRequest.ProcessGetInboxResponse(client, getInboxResponse); } } } }
private void OnBuddyWalked(object sender, GetBuddyWalkedResponse data) { ClientManager.LogCaller(new LoggerEventArgs($"Buddy Walked CandyID: {data.FamilyCandyId}, Candy Count: {data.CandyEarnedCount}", LoggerTypes.Buddy)); }
/// <summary> /// Provides a safe way to invoke the <see cref="BuddyWalkedReceived" /> event. /// </summary> /// <param name="value"></param> public void RaiseBuddyWalkedReceived(GetBuddyWalkedResponse value) => BuddyWalkedReceived?.Invoke(this, value);
internal void OnBuddyWalked(GetBuddyWalkedResponse buddyWalked) { BuddyWalked?.Invoke(this, new GetBuddyWalkedResponse(buddyWalked)); }