void OnReward(TeakReward reward) { if (this.testEnumerator != null) { this.testEnumerator.Current.Reward(reward); } }
// To use this callback example, simply register it during Start() like so: // Teak.Instance.OnReward += OnReward; // You can register as many listeners to an event as you like. void OnReward(TeakReward reward) { Debug.Log("[Teak Unity Cleanroom] OnReward: " + reward.ToString()); LogLaunchMatrixEvent("Reward"); switch (reward.Status) { case TeakReward.RewardStatus.GrantReward: { // The user has been issued this reward by Teak foreach (KeyValuePair <string, object> entry in reward.Reward) { Debug.Log("[Teak Unity Cleanroom] OnReward -- Give the user " + entry.Value + " instances of " + entry.Key); } } break; case TeakReward.RewardStatus.SelfClick: { // The user has attempted to claim a reward from their own social post } break; case TeakReward.RewardStatus.AlreadyClicked: { // The user has already been issued this reward } break; case TeakReward.RewardStatus.TooManyClicks: { // The reward has already been claimed its maximum number of times globally } break; case TeakReward.RewardStatus.ExceedMaxClicksForDay: { // The user has already claimed their maximum number of rewards of this type for the day } break; case TeakReward.RewardStatus.Expired: { // This reward has expired and is no longer valid } break; case TeakReward.RewardStatus.InvalidPost: { //Teak does not recognize this reward id } break; } }
public void Reward(TeakReward reward) { this.EvaluatePredicate(this.OnReward, reward, (TestState state) => { this.reward = state; }); }