private bool onClaimDelayedReward(RewardServiceEvents.ClaimDelayedReward evt) { bool flag = false; foreach (KeyValuePair <RewardedUserCollection, SignedResponse <RewardedUserCollectionJsonHelper> > delayedReward in delayedRewards) { if (delayedReward.Key.source == evt.Source && delayedReward.Key.sourceId == evt.SourceId) { RewardedUserCollection key = delayedReward.Key; SignedResponse <RewardedUserCollectionJsonHelper> value = delayedReward.Value; if (key.rewards.ContainsKey(clubPenguinClient.PlayerSessionId)) { APICall <AddRewardOperation> aPICall = clubPenguinClient.RewardApi.AddReward(value); aPICall.OnResponse += onAssetsSet; aPICall.OnError += handleCPResponseError; aPICall.Execute(); } Service.Get <EventDispatcher>().DispatchEvent(new RewardServiceEvents.RewardsEarned(key)); delayedRewards.Remove(key); flag = true; break; } } if (!flag) { } return(false); }
private void onRewardsReceivedDelayed(GameServerEvent gameServerEvent, object data) { SignedResponse <RewardedUserCollectionJsonHelper> signedResponse = (SignedResponse <RewardedUserCollectionJsonHelper>)data; RewardedUserCollection key = signedResponse.Data.toRewardedUserCollection(); delayedRewards.Add(key, signedResponse); }
public RewardedUserCollection toRewardedUserCollection() { RewardedUserCollection rewardedUserCollection = new RewardedUserCollection(); rewardedUserCollection.source = source; rewardedUserCollection.sourceId = sourceId; rewardedUserCollection.rewards = new Dictionary <long, Reward>(); foreach (KeyValuePair <string, RewardJsonReader> reward in rewards) { rewardedUserCollection.rewards.Add(long.Parse(reward.Key), reward.Value.ToReward()); } return(rewardedUserCollection); }
private void onRewardsReceived(GameServerEvent gameServerEvent, object data) { SignedResponse <RewardedUserCollectionJsonHelper> signedResponse = (SignedResponse <RewardedUserCollectionJsonHelper>)data; RewardedUserCollection rewardedUserCollection = signedResponse.Data.toRewardedUserCollection(); if (rewardedUserCollection.rewards.ContainsKey(clubPenguinClient.PlayerSessionId)) { APICall <AddRewardOperation> aPICall = clubPenguinClient.RewardApi.AddReward(signedResponse); aPICall.OnResponse += onAssetsSet; aPICall.OnError += handleCPResponseError; aPICall.Execute(); } Service.Get <EventDispatcher>().DispatchEvent(new RewardServiceEvents.RewardsEarned(rewardedUserCollection)); }
public RewardsEarned(RewardedUserCollection rewardedUsers) { RewardedUsers = rewardedUsers; }