private void showNextReward()
    {
        ServerAddedReward serverAddedReward = rewardsToShow.Dequeue();

        ShowRewardPopup.Builder builder = new ShowRewardPopup.Builder(DRewardPopup.RewardPopupType.generic, serverAddedReward.reward).setRewardSource("ServerAddedReward");
        builder.setHeaderText("Rewards.ServerAdded.GiftTitle");
        ShowRewardPopup showRewardPopup = builder.Build();

        showRewardPopup.Execute();
    }
    public void ShowGiftMessage(List <ServerAddedReward> rewards)
    {
        string text     = "";
        string bodyText = "";
        string i18nText = "";
        string tier     = "";

        if (rewards.Count > 1)
        {
            bodyText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B2");
            foreach (ServerAddedReward reward in rewards)
            {
                ServerAddedReward current = reward;
                string            str     = string.Format(Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B2.Header"), current.instanceId);
                text = text + str + "\n";
            }
            i18nText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B3");
            tier     = "thankyou_multiple";
        }
        else if (rewards.Count == 1)
        {
            ServerAddedReward current = rewards[0];
            if (current.instanceId == getCurrentDisplayName())
            {
                AccountFlowData accountFlowData = Service.Get <MembershipService>().GetAccountFlowData();
                text     = string.Format(Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referee.A"), accountFlowData.Referrer);
                bodyText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referee.A1");
                i18nText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.PopUp.A");
                tier     = "welcome";
            }
            else
            {
                text     = string.Format(Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B.Header"), current.instanceId);
                bodyText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B.Body");
                i18nText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B3");
                tier     = "thankyou_single";
            }
        }
        DPrompt data = new DPrompt(text, bodyText, DPrompt.ButtonFlags.OK, null, isModal: true, autoClose: true, isTranslated: true);

        data.SetText(DPrompt.PROMPT_TEXT_INFO, i18nText, isTranslated: true);
        Service.Get <ICPSwrveService>().Action("refer_gift_award", tier);
        Content.LoadAsync(delegate(string path, GameObject prefab)
        {
            onFriendshipPromptLoaded(data, prefab);
        }, FriendshipPromptPrefabContentKey);
    }
Beispiel #3
0
        public void ShowGiftMessage(List <ServerAddedReward> rewards)
        {
            string text     = "";
            string bodyText = "";
            string i18nText = "";
            string tier     = "";

            if (rewards.Count > 1)
            {
                bodyText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B2");
                using (List <ServerAddedReward> .Enumerator enumerator = rewards.GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        string text2 = string.Format(arg0: enumerator.Current.instanceId, format: Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B2.Header"));
                        text = text + text2 + "\n";
                    }
                }
                i18nText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B3");
                tier     = "thankyou_multiple";
            }
            else if (rewards.Count == 1)
            {
                ServerAddedReward serverAddedReward = rewards[0];
                if (serverAddedReward.instanceId == getCurrentDisplayName())
                {
                    AccountFlowData accountFlowData = Service.Get <MembershipService>().GetAccountFlowData();
                    text     = string.Format(Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referee.A"), accountFlowData.Referrer);
                    bodyText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referee.A1");
                    i18nText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.PopUp.A");
                    tier     = "welcome";
                }
                else
                {
                    text     = string.Format(Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B.Header"), serverAddedReward.instanceId);
                    bodyText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B.Body");
                    i18nText = Service.Get <Localizer>().GetTokenTranslation("Playercard.FriendInvite.Referrer.B3");
                    tier     = "thankyou_single";
                }
            }
            DPrompt     data      = default(DPrompt);
            ref DPrompt reference = ref data;
    private void onClaimServerAddedRewardsResponse(ClaimServerAddedRewardsOperation operation, HttpResponse httpResponse)
    {
        List <ServerAddedReward> list = new List <ServerAddedReward>();

        foreach (ClaimedServerAddedReward claimedReward in operation.ResponseBody.claimedRewards)
        {
            ServerAddedReward item = default(ServerAddedReward);
            item.definitionId = claimedReward.rewardId.definitionId;
            item.instanceId   = claimedReward.rewardId.instanceId;
            item.reward       = claimedReward.reward.ToReward();
            Service.Get <EventDispatcher>().DispatchEvent(new RewardServiceEvents.MyRewardEarned(RewardSource.SERVER_OBJECT, item.instanceId, item.reward));
            list.Add(item);
        }
        if (list.Count > 0)
        {
            Service.Get <EventDispatcher>().DispatchEvent(new RewardServiceEvents.ClaimServerAddedRewardsFound(list));
        }
        else
        {
            Service.Get <EventDispatcher>().DispatchEvent(default(RewardServiceEvents.ClaimServerAddedRewardsNotFound));
        }
        handleCPResponse(operation.ResponseBody);
    }