using System; using PlayerStatus; namespace BackupParamAccessor { public static class BackupParamAccessor { public static void BackupParam(int? slotId, SCENE_ID sceneId_f) { if (slotId == null) { for (int i = 0; i < 40; i++) { BackupParamAccessor.BackupParam(new int?(i), sceneId_f); } } int num = (slotId == null) ? 0 : slotId.Value; string str = sceneId_f.ToString(); Params @params = new Params(); Maid scheduleSlot = GameMain.Instance.CharacterMgr.status.GetScheduleSlot(num); if (scheduleSlot != null) { @params.salon_cleanliness = 0; @params.salon_gorgeous = 0; @params.salon_evaluation = GameMain.Instance.CharacterMgr.status.clubEvaluation; @params.money = GameMain.Instance.CharacterMgr.status.money; @params.clubEvaluation = GameMain.Instance.CharacterMgr.status.clubEvaluation; @params.clubMoney = (int)GameMain.Instance.CharacterMgr.status.money; @params.evaluation = scheduleSlot.status.evaluation; @params.sales = scheduleSlot.status.sales; @params.study_rate = scheduleSlot.status.studyRate; @params.reception = scheduleSlot.status.reception; @params.care = scheduleSlot.status.care; @params.lovely = scheduleSlot.status.lovely; @params.elegance = scheduleSlot.status.elegance; @params.charm = scheduleSlot.status.charm; @params.teach_rate = scheduleSlot.status.teachRate; @params.cooking = scheduleSlot.status.cooking; @params.vocal = scheduleSlot.status.vocal; @params.dance = scheduleSlot.status.dance; @params.appealPoint = scheduleSlot.status.appealPoint; @params.inyoku = scheduleSlot.status.inyoku; @params.m_value = scheduleSlot.status.mvalue; @params.hentai = scheduleSlot.status.hentai; @params.housi = scheduleSlot.status.housi; if (scheduleSlot.status.selectedJobClass != null) { @params.maidClassLv = scheduleSlot.status.selectedJobClass.level; @params.maidClassExp = scheduleSlot.status.selectedJobClass.expSystem.GetTotalExp(); } if (scheduleSlot.status.selectedYotogiClass != null) { @params.yotogiClassLv = scheduleSlot.status.selectedYotogiClass.level; @params.yotogiClassExp = scheduleSlot.status.selectedYotogiClass.expSystem.GetTotalExp(); } @params.yotogi_play_count = scheduleSlot.status.playCountYotogi; @params.others_play_count = scheduleSlot.status.playCountNightWork; @params.likability = scheduleSlot.status.likability; } BackupParamAccessor.slots = GameMain.Instance.CharacterMgr.status.scheduleSlot; BackupParamAccessor.slots[num].backup_status_dic[str + "_clubMoney"] = @params.clubMoney; BackupParamAccessor.slots[num].backup_status_dic[str + "_clubEvaluation"] = @params.clubEvaluation; BackupParamAccessor.slots[num].backup_status_dic[str + "_salon_cleanliness"] = @params.salon_cleanliness; BackupParamAccessor.slots[num].backup_status_dic[str + "_salon_gorgeous"] = @params.salon_gorgeous; BackupParamAccessor.slots[num].backup_status_dic[str + "_salon_evaluation"] = @params.salon_evaluation; BackupParamAccessor.slots[num].backup_status_dic[str + "_money_top0"] = @params.money_top0; BackupParamAccessor.slots[num].backup_status_dic[str + "_money_top10"] = @params.money_top10; BackupParamAccessor.slots[num].backup_status_dic[str + "_evaluation"] = @params.evaluation; BackupParamAccessor.slots[num].backup_status_dic[str + "_sales_top0"] = @params.sales_top0; BackupParamAccessor.slots[num].backup_status_dic[str + "_sales_top10"] = @params.sales_top10; BackupParamAccessor.slots[num].backup_status_dic[str + "_study_rate"] = @params.study_rate; BackupParamAccessor.slots[num].backup_status_dic[str + "_reception"] = @params.reception; BackupParamAccessor.slots[num].backup_status_dic[str + "_care"] = @params.care; BackupParamAccessor.slots[num].backup_status_dic[str + "_lovely"] = @params.lovely; BackupParamAccessor.slots[num].backup_status_dic[str + "_elegance"] = @params.elegance; BackupParamAccessor.slots[num].backup_status_dic[str + "_charm"] = @params.charm; BackupParamAccessor.slots[num].backup_status_dic[str + "_teach_rate"] = @params.teach_rate; BackupParamAccessor.slots[num].backup_status_dic[str + "_cooking"] = @params.cooking; BackupParamAccessor.slots[num].backup_status_dic[str + "_vocal"] = @params.vocal; BackupParamAccessor.slots[num].backup_status_dic[str + "_dance"] = @params.dance; BackupParamAccessor.slots[num].backup_status_dic[str + "_appealPoint"] = @params.appealPoint; BackupParamAccessor.slots[num].backup_status_dic[str + "_inyoku"] = @params.inyoku; BackupParamAccessor.slots[num].backup_status_dic[str + "_m_value"] = @params.m_value; BackupParamAccessor.slots[num].backup_status_dic[str + "_hentai"] = @params.hentai; BackupParamAccessor.slots[num].backup_status_dic[str + "_housi"] = @params.housi; BackupParamAccessor.slots[num].backup_status_dic[str + "_maidClassLv"] = @params.maidClassLv; BackupParamAccessor.slots[num].backup_status_dic[str + "_maidClassExp"] = @params.maidClassExp; BackupParamAccessor.slots[num].backup_status_dic[str + "_yotogiClassLv"] = @params.yotogiClassLv; BackupParamAccessor.slots[num].backup_status_dic[str + "_yotogiClassExp"] = @params.yotogiClassExp; BackupParamAccessor.slots[num].backup_status_dic[str + "_yotogi_play_count"] = @params.yotogi_play_count; BackupParamAccessor.slots[num].backup_status_dic[str + "_others_play_count"] = @params.others_play_count; BackupParamAccessor.slots[num].backup_status_dic[str + "_likability"] = @params.likability; } public static void Clear(int? slotId = null) { if (slotId == null) { for (int i = 0; i < 40; i++) { BackupParamAccessor.Clear(new int?(i)); } } int num = (slotId == null) ? 0 : slotId.Value; BackupParamAccessor.slots[num].backup_status_dic.Clear(); } public static Params GetBackupParams(int slotId, SCENE_ID sceneId) { return new Params { clubMoney = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "clubMoney"), clubEvaluation = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "clubEvaluation"), salon_cleanliness = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "salon_cleanliness"), salon_gorgeous = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "salon_gorgeous"), salon_evaluation = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "salon_evaluation"), money_top0 = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "money_top0"), money_top10 = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "money_top10"), evaluation = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "evaluation"), sales_top0 = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "sales_top0"), sales_top10 = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "sales_top10"), study_rate = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "study_rate"), teach_rate = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "teach_rate"), reception = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "reception"), care = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "care"), lovely = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "lovely"), elegance = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "elegance"), charm = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "charm"), cooking = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "cooking"), vocal = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "vocal"), dance = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "dance"), appealPoint = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "appealPoint"), inyoku = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "inyoku"), m_value = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "m_value"), hentai = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "hentai"), housi = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "housi"), maidClassLv = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "maidClassLv"), maidClassExp = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "maidClassExp"), yotogiClassLv = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "yotogiClassLv"), yotogiClassExp = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "yotogiClassExp"), yotogi_play_count = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "yotogi_play_count"), others_play_count = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "others_play_count"), likability = BackupParamAccessor.GetBackupParamsParts(slotId, sceneId, "likability") }; } public static int GetBackupParamsParts(int slotId, SCENE_ID sceneId_f, string name) { BackupParamAccessor.slots = GameMain.Instance.CharacterMgr.status.scheduleSlot; string str = sceneId_f.ToString(); if (BackupParamAccessor.slots[slotId].backup_status_dic.ContainsKey(str + "_" + name)) { return BackupParamAccessor.slots[slotId].backup_status_dic[str + "_" + name]; } return 0; } public static bool YotogiPlayed(int slotId, SCENE_ID baseId) { return (BackupParamAccessor.GetBackupParams(slotId, baseId + 1) - BackupParamAccessor.GetBackupParams(slotId, baseId - 1)).yotogi_play_count > 0; } public static ScheduleData[] slots = GameMain.Instance.CharacterMgr.status.scheduleSlot; } }