// ダイアログ(特殊) ガチャラインナップ private void OnLineUp(Scratch.LineUp _type) { if (TutorialManager.IsExists) { MasterDataGacha isMaster = MasterFinder <MasterDataGacha> .Instance.Find((int)Context.lineupMaster[(int)_type]); if (isMaster == null) { return; } if (isMaster.fix_id != GlobalDefine.TUTORIAL_SCRATCH || isMaster.gacha_group_id == 0) { return; } } string title = ""; switch (_type) { case Scratch.LineUp.A: title = GameTextUtil.GetText("gacha_lineup_title1") + GameTextUtil.GetText("gacha_lineup_half1"); break; case Scratch.LineUp.B: title = GameTextUtil.GetText("gacha_lineup_title1") + GameTextUtil.GetText("gacha_lineup_half2"); break; case Scratch.LineUp.Normal: title = GameTextUtil.GetText("gacha_lineup_title1"); break; case Scratch.LineUp.Rainbow: title = GameTextUtil.GetText("gacha_lineup_title2"); break; default: break; } MasterDataStepUpGachaManage stepUpGachaManage = null; MasterDataGacha master = null; if (Context.gachaMaster.type == MasterDataDefineLabel.GachaType.STEP_UP) { stepUpGachaManage = MasterDataUtil.GetCurrentStepUpGachaManageMaster(Context.gachaMaster.fix_id); master = Context.gachaMaster; // タイトルにステップ数追加 if (stepUpGachaManage.step_num == 0) { // 初回ステップ title += GameTextUtil.GetText("gacha_lineup_step1"); } else { title += string.Format(GameTextUtil.GetText("gacha_lineup_step2"), stepUpGachaManage.step_num); } } else { master = MasterFinder <MasterDataGacha> .Instance.Find((int)Context.lineupMaster[(int)_type]); } if (master == null) { return; } ScratchLineUpDialog lineupdialog = ScratchLineUpDialog.Create(); lineupdialog.SetCamera(SceneObjReferMainMenu.Instance.m_MainMenuGroupCamera.GetComponent <Camera>()); lineupdialog.setup(master, stepUpGachaManage, Context.lineupMaster[(int)_type], Context.IsUsedTip, title); SoundUtil.PlaySE(SEID.SE_MENU_OK); }
public void setup(MasterDataGacha _master) { m_IsMoveScratchResult = false; m_Master = _master; m_GroupMaster = MasterFinder <MasterDataGachaGroup> .Instance.Find((int)m_Master.gacha_group_id); if (m_Master.type == MasterDataDefineLabel.GachaType.STEP_UP) { m_StepMaster = MasterDataUtil.GetMasterDataStepUpGachaFromGachaID(m_Master.fix_id); m_StepManageMaster = MasterDataUtil.GetCurrentStepUpGachaManageMaster(m_Master.fix_id); } uint startTimeU = 0; uint endTimeU = 0; if (m_GroupMaster != null) { startTimeU = m_GroupMaster.sale_period_start; endTimeU = m_GroupMaster.sale_period_end; } else { startTimeU = m_Master.timing_start; endTimeU = m_Master.timing_end; } DateText = ""; if (endTimeU != 0) { DateTime startTime = TimeUtil.GetDateTime(startTimeU); DateTime endTime = TimeUtil.GetDateTime(endTimeU); endTime = endTime.SubtractAMinute(); // 看板テキスト string kikanFormat = GameTextUtil.GetText("scratch_display1"); DateText = string.Format(kikanFormat, startTime.ToString("yyyy/MM/dd(HH:mm)"), endTime.ToString("yyyy/MM/dd(HH:mm)")); } // 看板イメージ BoadImage = null; BoadAlpha = 0; if (m_Master.type == MasterDataDefineLabel.GachaType.STEP_UP) { // ステップアップスクラッチの場合は看板サイズ変更 BoadHeight = 234; } // ラインナップボタンの設定 setupLineupButton(); // 詳細ボタンの表示・非表示 m_DetailText = ""; if (m_GroupMaster != null && m_Master.type != MasterDataDefineLabel.GachaType.STEP_UP) { m_DetailText = MasterDataUtil.GetGachaText(EMASTERDATA_SERVER.GACHA_GROUP, m_Master.gacha_group_id, MasterDataDefineLabel.GachaTextRefType.DETAIL); } if (m_DetailText.IsNullOrEmpty() == false || m_Master.type == MasterDataDefineLabel.GachaType.STEP_UP) { IsInfo = true; } else { IsInfo = false; } IsUsedTip = false; IsViewMaxButton = true; updatePointText(); // おまけの表示 if (m_Master.type == MasterDataDefineLabel.GachaType.STEP_UP) { IsViewBonusLabel = (m_StepManageMaster.present_enable == MasterDataDefineLabel.BoolType.ENABLE); string presentName = ""; int presentNum = 0; MasterDataPresent[] presentArray = MasterDataUtil.GetPresentMasterFromGroupID(m_StepManageMaster.present_group_id); if (presentArray.IsNullOrEmpty() == false) { presentName = MasterDataUtil.GetPresentName(presentArray[0]); presentNum = MasterDataUtil.GetPresentCount(presentArray[0]); } string present_message = "「" + presentName + "」" + " ×" + presentNum; BonusText = string.Format(GameTextUtil.GetText("Gacha_Bonus"), present_message); } LoadBoadImage(); }
public static string GetGachaPlayText(int count, MasterDataGacha _master) { string _ret = ""; string payItem = ""; uint price = (uint)(_master.price * count); MasterDataDefineLabel.BoolType paid_tip_only = _master.paid_tip_only; switch (_master.type) { case MasterDataDefineLabel.GachaType.NONE: //Money使用 payItem = "Money"; break; case MasterDataDefineLabel.GachaType.RARE: case MasterDataDefineLabel.GachaType.EVENT: case MasterDataDefineLabel.GachaType.TUTORIAL: // チップ使用 payItem = GameTextUtil.GetText("common_text6"); //有料チップ専用なら有料チップ数を設定 if (paid_tip_only == MasterDataDefineLabel.BoolType.ENABLE) { payItem = GameTextUtil.GetText("common_text13"); } break; case MasterDataDefineLabel.GachaType.NORMAL: case MasterDataDefineLabel.GachaType.LUNCH: // フレンドポイント使用 payItem = GameTextUtil.GetText("common_text1"); break; case MasterDataDefineLabel.GachaType.TICKET: break; case MasterDataDefineLabel.GachaType.EVENT_POINT: break; case MasterDataDefineLabel.GachaType.ITEM_POINT: // アイテムポイント使用 payItem = MasterDataUtil.GetItemNameFromGachaMaster(_master); break; case MasterDataDefineLabel.GachaType.STEP_UP: MasterDataStepUpGacha stepMaster = MasterDataUtil.GetMasterDataStepUpGachaFromGachaID(_master.fix_id); paid_tip_only = stepMaster.paid_tip_only; // チップ使用 payItem = GameTextUtil.GetText("common_text6"); //有料チップ専用なら有料チップ数を設定 if (paid_tip_only == MasterDataDefineLabel.BoolType.ENABLE) { payItem = GameTextUtil.GetText("common_text13"); } break; default: break; } uint itemVal = 0; //-------------------------------- // ガチャタイプにあわせて引ける回数を計算 //-------------------------------- switch (_master.type) { // 友情ガチャ case MasterDataDefineLabel.GachaType.NORMAL: { itemVal = UserDataAdmin.Instance.m_StructPlayer.have_friend_pt; } break; // レア case MasterDataDefineLabel.GachaType.RARE: // イベント(コラボ) case MasterDataDefineLabel.GachaType.EVENT: // チュートリアル case MasterDataDefineLabel.GachaType.TUTORIAL: // イベント2 case MasterDataDefineLabel.GachaType.EVENT_2: { itemVal = UserDataAdmin.Instance.m_StructPlayer.have_stone; //有料チップ専用なら有料チップ数を設定 if (paid_tip_only == MasterDataDefineLabel.BoolType.ENABLE) { itemVal = UserDataAdmin.Instance.m_StructPlayer.have_stone_pay; } } break; // ランチ case MasterDataDefineLabel.GachaType.LUNCH: { itemVal = 1; } break; case MasterDataDefineLabel.GachaType.EVENT_POINT: { itemVal = 1; } break; case MasterDataDefineLabel.GachaType.ITEM_POINT: { itemVal = UserDataAdmin.Instance.GetItemPoint(_master.cost_item_id); } break; // ステップアップ case MasterDataDefineLabel.GachaType.STEP_UP: { MasterDataStepUpGachaManage stepManageMaster = MasterDataUtil.GetCurrentStepUpGachaManageMaster(_master.fix_id); price = stepManageMaster.price; itemVal = UserDataAdmin.Instance.m_StructPlayer.have_stone; //有料チップ専用なら有料チップ数を設定 if (paid_tip_only == MasterDataDefineLabel.BoolType.ENABLE) { itemVal = UserDataAdmin.Instance.m_StructPlayer.have_stone_pay; } } break; } if (count == 1) { string mainFormat = GetText("sc146q_content1"); _ret = string.Format(mainFormat, payItem, price, itemVal); } else { string mainFormat = GetText("sc147q_content"); _ret = string.Format(mainFormat, payItem, price, itemVal, count); } #if BUILD_TYPE_DEBUG if (DebugOption.Instance.disalbeDebugMenu == false) { _ret += "\n\r" + "\n\r<color=#FF0000>デバッグ表示</color>\n\r"; _ret += "スクラッチID[ " + _master.fix_id + " ]"; } #endif return(_ret); }