public static ShakeEblowsRewardSampleManager Instance()
 {
     if (_instance == null)
     {
         _instance = new ShakeEblowsRewardSampleManager();
     }
     return(_instance);
 }
Example #2
0
    /// <summary>
    /// 显示投掷奖励
    /// </summary>
    private void showShakeRewardContent()
    {
        hideAllContent();
        shakeRewardContent.gameObject.SetActive(true);
        List <ShakeEblowsRewardSample> allSample = ShakeEblowsRewardSampleManager.Instance().GetNormalShakeEblowRewardSamples();

        shakeRewardContent.Init(allSample);
        shakeRewardContent.otherDes.text = Colors.RED + ShakeEblowsRewardSampleManager.Instance().GetFiveDiffSample().getPrizesDesc();
    }
Example #3
0
    /// <summary>
    /// 是否为5个不同的面
    /// </summary>
    public bool isFiveDifferentResult()
    {
        int noneSid = ShakeEblowsRewardSampleManager.convertNameToSid("none");

        //五个不同面,且不包含女
        if (resultTable.Count == GuildManagerment.EBLOWS_MAXNUM && !resultTable.ContainsKey(noneSid))
        {
            return(true);
        }
        else
        {
            return(false);
        }
    }
    public void Init(GuildLuckyNvShenShakeResult resultData)
    {
        this.shakeResultData = resultData;
        /** 初始化结果显示 */
        string [] resultStrs = shakeResultData.getResultsString();
        for (int i = 0; i < resultStrs.Length; i++)
        {
            eblowViews[i].Init(resultStrs[i]);
        }
        /** 初始化结果描述 */
        List <PrizeSample> rewards = ShakeEblowsRewardSampleManager.Instance().GetPrizeByResult(shakeResultData);

        awardDes.text = Language("GuildLuckyNvShen_15");
        foreach (PrizeSample p in rewards)
        {
            awardDes.text += p.getPrizeName() + "+" + p.num + ",";
        }
        awardDes.text = awardDes.text.Substring(0, awardDes.text.Length - 1);

        /** 初始化按钮显示 */
        GuildLuckyNvShenInfo info = GuildManagerment.Instance.getGuildLuckyNvShenInfo();

        if (info != null)
        {
            if (info.reShakeCount <= 0)
            {
                buttonReshake.textLabel.text = Language("GuildLuckyNvShen_17") + "(0)";
                buttonReshake.GetComponent <UIButton>().isEnabled = false;
            }
            else
            {
                buttonReshake.textLabel.text = Language("GuildLuckyNvShen_17") + "(" + info.reShakeCount + ")";
                buttonReshake.GetComponent <UIButton>().isEnabled = true;
            }
        }
        /** 初始化规则描述 */
        List <ShakeEblowsRewardSample> allSample = ShakeEblowsRewardSampleManager.Instance().GetNormalShakeEblowRewardSamples();

        shakeRewardContent.Init(allSample);
        shakeRewardContent.otherDes.text = Colors.RED + ShakeEblowsRewardSampleManager.Instance().GetFiveDiffSample().getPrizesDesc();

        /** 初始化加锁信息 */
        lockEblows(GuildLuckyNvShenWindow.lockString);
        //MaskWindow.UnlockUI();
    }
Example #5
0
    private void getRewardCallBack(int addValue)
    {
        UiManager.Instance.openDialogWindow <MessageLineWindow> ((win) => {
            win.dialogCloseUnlockUI = false;
            win.Initialize(LanguageConfigManager.Instance.getLanguage("GuildLuckyNvShen_21"), false);
            if (addValue > 0)
            {
                win.Initialize(LanguageConfigManager.Instance.getLanguage("GuildLuckyNvShen_25", addValue.ToString()), false);
            }
        });
        List <PrizeSample> prizes = ShakeEblowsRewardSampleManager.Instance().GetPrizeByResult(GuildManagerment.Instance.getGuildShakeResult());

        /** 前台更新面板数据 */
        /** 更新个人积分 */
        int addIntegral  = 0;
        int lastIntegral = GuildManagerment.Instance.getGuildLuckyNvShenInfo().selfIntegral;
        int nowIntegral  = 0;

        foreach (PrizeSample p in prizes)
        {
            if (p.type == PrizeType.PRIZE_SHAKE_SCORE)
            {
                addIntegral += p.getPrizeNumByInt();
                break;
            }
        }
        nowIntegral = lastIntegral + addIntegral;
        GuildManagerment.Instance.getGuildLuckyNvShenInfo().selfIntegral = nowIntegral;
        /** 更新周最高积分 , 公会积分 */
        if (nowIntegral > GuildManagerment.Instance.getGuildLuckyNvShenInfo().topIntegral)
        {
            GuildManagerment.Instance.getGuildLuckyNvShenInfo().topIntegral    = nowIntegral;
            GuildManagerment.Instance.getGuildLuckyNvShenInfo().guildIntegral += (nowIntegral - lastIntegral);
            updateRankInfo(nowIntegral);
        }
        /** 清空结果 */
        GuildManagerment.Instance.clearGuildShakeResult();
        /** 刷新面板 */
        updateUI();
    }
Example #6
0
    /// <summary>
    /// 解析结果,构成<sid,num>的KV组合
    /// </summary>
    private void parseResult()
    {
        int key = 0;
        int num = 0;

        for (int i = 0; i < results.Length; ++i)
        {
            key = ShakeEblowsRewardSampleManager.convertNameToSid(results[i]);
            num = 0;
            if (resultTable.ContainsKey(key))
            {
                continue;
            }
            for (int j = i; j < results.Length; ++j)
            {
                int tempKey = ShakeEblowsRewardSampleManager.convertNameToSid(results[j]);
                if (tempKey == key)
                {
                    num++;
                }
            }
            resultTable.Add(key, num);
        }
    }