コード例 #1
0
    /// <summary>
    /// 特性ボタン選択
    /// </summary>
    /// <param name="data"></param>
    private void OnSelectBossAtr(ChallengeSelect.EventData data)
    {
        SoundUtil.PlaySE(SEID.SE_MENU_OK);

        Dialog newDialog = Dialog.Create(DialogType.DialogScroll);

        newDialog.SetDialogTextFromTextkey(DialogTextType.Title, "growth_boss_12");
        newDialog.SetDialogText(DialogTextType.MainText, MasterDataUtil.GetBossAbilityText(data.questMaster));
        newDialog.SetDialogTextFromTextkey(DialogTextType.OKText, "common_button1");
        newDialog.EnableCancel();
        newDialog.Show();
    }
コード例 #2
0
 private void updateRewardFlag(ChallengeSelect.EventData data)
 {
     if (data.info.get_list != null &&
         data.info.get_list.Length > 0)
     {
         m_ChallengeSelect.IsViewRewardFlag = true;
     }
     else
     {
         m_ChallengeSelect.IsViewRewardFlag = false;
     }
 }
コード例 #3
0
    /// <summary>
    /// ルールボタン選択
    /// </summary>
    /// <param name="data"></param>
    private void OnSelectRule(ChallengeSelect.EventData data)
    {
        SoundUtil.PlaySE(SEID.SE_MENU_OK);

        Dialog newDialog = Dialog.Create(DialogType.DialogScroll);

        newDialog.SetDialogTextFromTextkey(DialogTextType.Title, "growth_boss_11");
        newDialog.SetDialogText(DialogTextType.MainText, data.questMaster.quest_requirement_text);
        newDialog.SetDialogTextFromTextkey(DialogTextType.OKText, "common_button1");
        newDialog.EnableCancel();
        newDialog.Show();
    }
コード例 #4
0
    /// <summary>
    /// 報酬ボタン選択
    /// </summary>
    /// <param name="data"></param>
    private void OnSelectReward(ChallengeSelect.EventData data)
    {
        SoundUtil.PlaySE(SEID.SE_MENU_OK);

        ChallengeRewardDialog newDialog = ChallengeRewardDialog.Create(SceneObjReferMainMenu.Instance.m_MainMenuGroupCamera.GetComponent <Camera>());

        newDialog.setup(data.info);
        newDialog.Show(() =>
        {
            updateRewardFlag(data);
        });
    }
コード例 #5
0
    /// <summary>
    /// レベル選択ボタン選択
    /// </summary>
    /// <param name="data"></param>
    private void OnSelectSkip(ChallengeSelect.EventData data)
    {
        SoundUtil.PlaySE(SEID.SE_MENU_OK);

        m_ChallengeSelect.IsViewSkipButton = false;
        ChallengeSkipDialog newDialog = ChallengeSkipDialog.Create(SceneObjReferMainMenu.Instance.m_MainMenuGroupCamera.GetComponent <Camera>());

        newDialog.setup(data);
        newDialog.Show(() =>
        {
            updateQuestInfo(data);
            m_ChallengeSelect.IsViewSkipButton = true;
        });
    }
コード例 #6
0
    /// <summary>
    /// 期間情報更新
    /// </summary>
    /// <param name="data"></param>
    private void updateTerm(ChallengeSelect.EventData data)
    {
        if (TimeEventManager.Instance.ChkEventActive(data.eventMaster.event_id) == true)
        {
            //開催中
            MasterDataEvent eventData   = MasterDataUtil.GetMasterDataEventFromID(data.eventMaster.event_id);
            DateTime        startTime   = TimeUtil.GetDateTime(eventData.timing_start);
            string          kikanFormat = GameTextUtil.GetText("growth_boss_01");
            if (eventData.timing_end != 0)
            {
                DateTime endTime = TimeUtil.GetDateTime(eventData.timing_end);
                endTime = endTime.SubtractAMinute();
                m_ChallengeSelect.Time = string.Format(kikanFormat, startTime.ToString("yyyy/MM/dd(HH:mm)"), endTime.ToString("yyyy/MM/dd(HH:mm)"));
            }
            else
            {
                m_ChallengeSelect.Time = string.Format(kikanFormat, startTime.ToString("yyyy/MM/dd(HH:mm)"), "");
            }

            m_ChallengeSelect.IsActiveSkipButton = true;
            m_ChallengeSelect.IsActiveOkButton   = true;

            MainMenuHeader.UnderMsgRequest(GameTextUtil.GetText("challenge_quest_marquee_open"));
        }
        else
        {
            //イベント終了
            if (data.eventMaster.receiving_end != 0)
            {
                DateTime endTime = TimeUtil.GetDateTime(data.eventMaster.receiving_end);
                endTime = endTime.SubtractAMinute();
                string kikanFormat = GameTextUtil.GetText("growth_boss_02");
                m_ChallengeSelect.Time = string.Format(kikanFormat, endTime.ToString("yyyy/MM/dd(HH:mm)"));
            }
            else
            {
                m_ChallengeSelect.Time = GameTextUtil.GetText("growth_boss_03");
            }

            m_ChallengeSelect.IsActiveSkipButton = false;
            m_ChallengeSelect.IsActiveOkButton   = false;

            MainMenuHeader.UnderMsgRequest(GameTextUtil.GetText("challenge_quest_marquee_end"));
        }
    }
コード例 #7
0
    /// <summary>
    /// 成長ボス選択
    /// </summary>
    /// <param name="data"></param>
    private void OnSelectBoss(ChallengeSelect.EventData data)
    {
        //期間
        updateTerm(data);

        //エリア効果
        updateAreaAmend(data.questMaster.area_id);

        //クエスト情報更新
        updateQuestInfo(data);

        //報酬フラグ
        updateRewardFlag(data);

        //選択保存
        MainMenuParam.SetSaveSelectChallenge(data.questMaster.fix_id);

        //有効化
        UnityUtil.SetObjectEnabledOnce(m_ChallengeQuestInfo.gameObject, true);
    }
コード例 #8
0
    /// <summary>
    /// OKボタン選択
    /// </summary>
    /// <param name="data"></param>
    private void OnSelectOk(ChallengeSelect.EventData data)
    {
        var requirement_id = data.questMaster.quest_requirement_id;
        MasterDataQuestRequirement quest_requirement = null;

        if (requirement_id != 0)
        {
            quest_requirement = MasterDataUtil.GetMasterDataQuestRequirementFromID(requirement_id);
        }

        //--------------------------------
        // ユニット所持数が上限超えてるならクエスト不可
        //--------------------------------
        if (UserDataAdmin.Instance.m_StructPlayer.total_unit < UserDataAdmin.Instance.m_StructPlayer.unit_list.Length)
        {
            openDialogUnitOver();

            SoundUtil.PlaySE(SEID.SE_MENU_RET);
        }
        else if (quest_requirement != null &&
                 quest_requirement.limit_rank > UserDataAdmin.Instance.m_StructPlayer.rank)
        {
            //--------------------------------
            // ランク制限でクエストに入れない場合
            //--------------------------------
            openDialogRankLow();

            SoundUtil.PlaySE(SEID.SE_MENU_RET);
        }
        else if (MainMenuParam.m_QuestStamina != 0 &&
                 UserDataAdmin.Instance.m_StructPlayer.stamina_max < MainMenuParam.m_QuestStamina)
        {
            //--------------------------------
            // スタミナのMAX値が足りずクエストに入れない場合
            //--------------------------------
            openDialogStaminaLow();

            SoundUtil.PlaySE(SEID.SE_MENU_RET);
        }
        else if (MainMenuParam.m_QuestTicket != 0 &&
                 MainMenuParam.m_QuestTicket > UserDataAdmin.Instance.m_StructPlayer.have_ticket)
        {
            //--------------------------------
            // チケット対価不足
            //--------------------------------
            openDialogTicketLow();

            SoundUtil.PlaySE(SEID.SE_MENU_RET);
        }
        else if (MainMenuParam.m_QuestStamina != 0 &&
                 UserDataAdmin.Instance.m_StructPlayer.stamina_max >= data.questMaster.consume_value &&
                 MainMenuParam.m_QuestStamina > UserDataAdmin.Instance.m_StructPlayer.stamina_now)
        {
            //--------------------------------
            // スタミナが足りない場合、スタミナ回復ダイアログを表示
            //--------------------------------

            PacketStructUseItem item = useRecoverItem();

            if (item != null)
            {
                openDialogUseItem(item);
            }
            else
            {
                //--------------------------------
                // チップによる回復ルート
                //--------------------------------

                openDialogUseStone();
            }

            SoundUtil.PlaySE(SEID.SE_MENU_RET);
        }
        else
        {
            //--------------------------------
            // 特にエラーなし。次のフローへ
            //--------------------------------
            //成長ボス選択パラメータ設定
            MainMenuParam.SetChallengeSelectParam(data.questMaster.fix_id, data.bSkip, (data.bSkip ? data.SkipLevel : data.info.challenge_level));

            //成長ボスではMainMenuQuestSelectを経由しないのでAreaCategoryIDをここで設定
            MasterDataArea area = MasterDataUtil.GetAreaParamFromID(data.questMaster.area_id);
            MainMenuParam.m_QuestSelectAreaCateID = (area != null ? area.area_cate_id : 0);

            MainMenuParam.m_QuestAreaAmendList   = m_AreaAmendParam.m_AreaMasterDataAmendList;
            MainMenuParam.m_QuestSelectAreaID    = data.questMaster.area_id;
            MainMenuParam.m_QuestSelectMissionID = data.questMaster.fix_id;
            if (MainMenuManager.HasInstance)
            {
                MainMenuManager.Instance.AddSwitchRequest(MAINMENU_SEQ.SEQ_QUEST_SELECT_FRIEND, false, false);
                SoundUtil.PlaySE(SEID.SE_MENU_OK);
            }
        }
    }
コード例 #9
0
    /// <summary>
    /// クエスト情報更新
    /// </summary>
    /// <param name="data"></param>
    private void updateQuestInfo(ChallengeSelect.EventData data)
    {
        MasterDataParamChara bossMaster = MasterFinder <MasterDataParamChara> .Instance.Find((int)data.questMaster.boss_chara_id);

        //ボスアイコン
        UnitIconImageProvider.Instance.Get(
            data.questMaster.boss_chara_id,
            (sprite) =>
        {
            m_ChallengeSelect.IconImage = sprite;
        });

        //ボス属性
        if (bossMaster != null)
        {
            m_ChallengeSelect.ElementImage = MainMenuUtil.GetElementCircleSprite(bossMaster.element);
        }

        //イベント名
        m_ChallengeSelect.Title = data.eventMaster.title;
        //ボス名
        if (bossMaster != null)
        {
            m_ChallengeQuestInfo.BossName = bossMaster.name;
        }

        //レベル
        if (data.bSkip)
        {
            m_ChallengeSelect.Level = string.Format("{0}", data.SkipLevel);
        }
        else
        {
            m_ChallengeSelect.Level = string.Format("{0}", data.info.challenge_level);
        }

        //経験値
        uint   exp       = (uint)data.questMaster.clear_exp;
        string expFormat = GameTextUtil.GetText("value_colorset");

        if (m_AreaAmendParam.m_QuestSelectAreaAmendEXP != 100)
        {
            // エリア補正時
            exp       = (uint)((float)exp * (m_AreaAmendParam.m_QuestSelectAreaAmendEXP / 100.0f));
            expFormat = GameTextUtil.GetText("stmina_bahutext");
        }

        //コイン
        uint   coin       = (uint)data.questMaster.clear_money;
        string coinFormat = GameTextUtil.GetText("value_colorset");

        if (m_AreaAmendParam.m_QuestSelectAreaAmendCoin != 100)
        {
            // エリア補正時
            coin       = (uint)((float)coin * (m_AreaAmendParam.m_QuestSelectAreaAmendCoin / 100.0f));
            coinFormat = GameTextUtil.GetText("stmina_bahutext");
        }

        //消費スタミナ
        uint   stamina       = 0;
        string staminaFormat = GameTextUtil.GetText("value_colorset");

        MainMenuParam.m_QuestStamina = 0;
        switch (data.questMaster.consume_type)
        {
        case 1:    //スタミナ
            m_ChallengeQuestInfo.StaminaLabel = GameTextUtil.GetText("growth_boss_09");;
            stamina = (uint)data.questMaster.consume_value;
            break;

        case 2:    //Key
            //m_ChallengeQuestInfo.StaminaLabel = "KEY";
            //MainMenuParam.m_QuestKey = (uint)data.questMaster.consume_type;
            break;

        case 3:    //Ticket
            //m_ChallengeQuestInfo.StaminaLabel = "TICKET";
            //MainMenuParam.m_QuestTicket = (uint)data.questMaster.consume_type;
            break;
        }
        if (m_AreaAmendParam.m_QuestSelectAreaAmendStamina != 100 &&
            stamina != 0)
        {
            // エリア補正時
            stamina       = (uint)((float)stamina * ((float)m_AreaAmendParam.m_QuestSelectAreaAmendStamina / 100.0f));
            staminaFormat = GameTextUtil.GetText("stmina_bahutext");

            //最少スタミナチェック
            if (stamina <= DISP_MIN_STAMINA)
            {
                stamina = DISP_MIN_STAMINA;
            }
        }

        MainMenuParam.m_QuestStamina = stamina;

        //消費チケット(成長ボスではスキップにチケットを使用する)
        MainMenuParam.m_QuestTicket = (data.bSkip == true ? (uint)data.UseTicket : 0);

        //消費キー(成長ボスではキー消費はいまのところなし)
        MainMenuParam.m_QuestKey = 0;

        //スコア情報
        uint   score       = 0;
        string scoreFormat = GameTextUtil.GetText("value_colorset");
        MasterDataRenewQuestScore scoreMaster = MasterFinder <MasterDataRenewQuestScore> .Instance.Find((int)data.questMaster.quest_score_id);

        if (scoreMaster != null)
        {
            score = (uint)scoreMaster.base_score;
        }
        if (m_AreaAmendParam.m_QuestSelectAreaAmendScore != 100)
        {
            // エリア補正時
            score       = (uint)((float)score * (m_AreaAmendParam.m_QuestSelectAreaAmendScore / 100.0f));
            scoreFormat = GameTextUtil.GetText("stmina_bahutext");
        }

        m_ChallengeQuestInfo.CountValue   = string.Format(GameTextUtil.GetText("value_colorset"), data.questMaster.battle_count);
        m_ChallengeQuestInfo.ExpValue     = string.Format(expFormat, exp);
        m_ChallengeQuestInfo.CoinValue    = string.Format(coinFormat, coin);
        m_ChallengeQuestInfo.StaminaValue = string.Format(staminaFormat, stamina);
        m_ChallengeQuestInfo.ScoreValue   = string.Format(scoreFormat, score);
    }
コード例 #10
0
 public void setup(ChallengeSelect.EventData data)
 {
     m_EventData    = data;
     IsActiveCancel = data.bSkip;
     updateSkipList();
 }