/// <summary> /// 現在選択しているオーダーを非表示へ /// </summary> public void Init() { SefiraEnum se = SefiraEnum.MALKUT; for (int i = 0; i < (int)(SefiraEnum.DAAT) * 5; i++) { if (i == 22 || i == 23) { se = SefiraEnum.TIPERERTH2; } if (0 < i && i % 5 == 0) { se++; } m_dayToSefiraEnumDic.Add(i, se); } for (int i = (int)(SefiraEnum.MALKUT); i < (int)(SefiraEnum.DAAT); i++) { for (int level = 1; level < 5; level++) { KeyValuePair <SefiraEnum, int> kv = new KeyValuePair <SefiraEnum, int>((SefiraEnum)i, level); var list = new List <long>(); list.Add(0); if (kv.Key == SefiraEnum.TIPERERTH1 || kv.Key == SefiraEnum.TIPERERTH2) { list.Add(0); } m_creatureOlderDic.Add(kv, list); } } }
/// <summary> /// ランダムを入れていく /// </summary> /// <param name="sefira"></param> /// <param name="level"></param> /// <param name="index"></param> void SetRandom(SefiraEnum sefira, int level, int index = 0) { KeyValuePair <SefiraEnum, int> kv = new KeyValuePair <SefiraEnum, int>(sefira, level); if (m_creatureOlderDic.ContainsKey(kv)) { for (int i = index; i < m_creatureOlderDic[kv].Count; i++) { m_creatureOlderDic[kv][i] = 0; } } }
/// <summary> /// セッティングを読み込む /// </summary> /// <param name="enableAddLob"></param> /// <param name="_orderCreature"></param> public SettingData LoadSettings() { var settingData = new SettingData(); settingData.enableAddLob = true; settingData.enableAddEnergy = false; settingData.enableAlwayGetGift = false; settingData.enableMalkutNote = true; settingData.enableTaskManager = true; settingData.orderCreature = new OrderCreature(); string filePath = Application.persistentDataPath + "/" + EditSettingSaveData.m_saveDataName; string json = LoadSettingText(filePath); EditSettingSaveData saveData = JsonUtility.FromJson <EditSettingSaveData>(json); if (saveData != null) { settingData.enableAddLob = saveData.m_addMob; settingData.enableAddEnergy = saveData.m_addEnergy; settingData.enableAlwayGetGift = saveData.m_alwayGetGift; settingData.enableMalkutNote = saveData.m_malkutNote; settingData.enableTaskManager = saveData.m_taskManager; //アブノーマリティを設定する for (int i = 0; i < saveData.m_abnormaltyDataArray.Length; i++) { string[] strArray = saveData.m_abnormaltyDataArray[i].Split(','); SefiraEnum sefila = (SefiraEnum)int.Parse(strArray[0]); int level = int.Parse(strArray[1]); List <long> creatureList = new List <long>(); for (int j = 2; j < strArray.Length; j++) { creatureList.Add(long.Parse(strArray[j])); } //登録がない場合は0を設定 if (creatureList.Count == 0) { creatureList.Add(0); } settingData.orderCreature.SetOrder(new KeyValuePair <SefiraEnum, int>(sefila, level), creatureList); } } return(settingData); }
/// <summary> /// ランダムにセットする /// </summary> /// <param name="kv"></param> public void SetRandomFromBaseKv(KeyValuePair <SefiraEnum, int> baseKv, int index) { SefiraEnum baseSefiraEnum = baseKv.Key; //減殺設定されている一からそのセフィラのレベル分までランダムをぶっこむ for (int level = baseKv.Value; level < 5; level++) { SetRandom(baseSefiraEnum, level, index); index = 0; } //その後のセフィラに関してもランダムをぶち込む。 for (int i = (int)(baseSefiraEnum) + 1; i < (int)(SefiraEnum.DAAT); i++) { for (int level = 1; level < 5; level++) { SetRandom((SefiraEnum)i, level); } } }