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;
        }
    }
Example #3
0
 public void Reward(TeakReward reward)
 {
     this.EvaluatePredicate(this.OnReward, reward, (TestState state) => {
         this.reward = state;
     });
 }