private IEnumerator OnGetMaterialsReward(ItemlistModel usedModel, IReward_Materials reward)
        {
            UIGetRewardDialog      dialog          = Util.Instantiate(mPrefab_UIGetRewardDialog.gameObject, mTransform_DialogArea.gameObject).GetComponent <UIGetRewardDialog>();
            List <Reward_Material> rewardMaterials = new List <Reward_Material>();

            IReward_Material[] rewards = reward.Rewards;
            foreach (IReward_Material material in rewards)
            {
                rewardMaterials.Add((Reward_Material)material);
            }
            bool showFlag = true;

            dialog.Initialize(rewardMaterials.ToArray());
            dialog.Show(mKeyController);
            dialog.SetOnDialogClosedCallBack(delegate
            {
                showFlag = false;
                UnityEngine.Object.Destroy(dialog.gameObject);
            });
            while (showFlag)
            {
                yield return(null);
            }
            yield return(null);
        }
        private IEnumerator OnGetUseItemReward(ItemlistModel usedModel, IReward_Useitem reward)
        {
            switch (usedModel.MstId)
            {
            case 10:
            case 11:
            case 12:
            {
                UIUseItemReceiveFurnitureBox furnitureBox = Util.Instantiate(mPrefab_UIUseItemReceiveFurnitureBox.gameObject, mTransform_DialogArea.gameObject).GetComponent <UIUseItemReceiveFurnitureBox>();
                mItemListChildDetai.SetKeyController(null);
                furnitureBox.SetKeyController(mKeyController);
                bool showFlag = true;
                StartCoroutine(furnitureBox.Show(usedModel.MstId, reward.Count, delegate
                    {
                        furnitureBox.SetKeyController(null);
                        UnityEngine.Object.Destroy(furnitureBox.gameObject);
                        showFlag = false;
                    }));
                while (showFlag)
                {
                    yield return(null);
                }
                break;
            }

            case 57:
            {
                UIGetRewardDialog dialog = Util.Instantiate(mPrefab_UIGetRewardDialog.gameObject, mTransform_DialogArea.gameObject).GetComponent <UIGetRewardDialog>();
                bool showDialogFlag      = true;
                dialog.Initialize(new Reward_Useitem[1]
                    {
                        (Reward_Useitem)reward
                    });
                dialog.Show(mKeyController);
                dialog.SetOnDialogClosedCallBack(delegate
                    {
                        showDialogFlag = false;
                        UnityEngine.Object.Destroy(dialog.gameObject);
                    });
                while (showDialogFlag)
                {
                    yield return(null);
                }
                break;
            }
            }
        }