public void InitExportFilter(uint filter) { List <UseValsID> list = new List <UseValsID>(); if (filter == 1) {//ユニット関係のみ UnitForm.MakeVarsIDArray(list); } else if (filter == 2) {//クラス関係のみ ClassForm.MakeVarsIDArray(list); } else if (filter == 3) {//アイテム関係のみ ItemForm.MakeVarsIDArray(list); } else if (filter == 4) {//サウンドルーム関係のみ if (Program.ROM.RomInfo.version == 6) { SoundRoomFE6Form.MakeVarsIDArray(list); } else { SoundRoomForm.MakeVarsIDArray(list); } } else if (filter == 5) {//支援会話関係 SupportTalkForm.MakeVarsIDArray(list); } else if (filter == 6) {//スキル関係 if (Program.ROM.RomInfo.is_multibyte) { SkillConfigFE8NSkillForm.MakeVarsIDArray(list); SkillConfigFE8NVer2SkillForm.MakeVarsIDArray(list); } else { SkillConfigSkillSystemForm.MakeVarsIDArray(list); } } else {//all ExportFilterArray = null; return; } ExportFilterArray = new Dictionary <int, bool>(); foreach (UseValsID val in list) { ExportFilterArray[(int)val.ID] = true; } }
static uint FindSkillIconAndText(PatchUtil.skill_system_enum skill, uint[] pointers, string searchSkillName, out string outText) { if (skill == PatchUtil.skill_system_enum.FE8N_ver2) { return(SkillConfigFE8NVer2SkillForm.FindSkillIconAndText(pointers, searchSkillName, out outText)); } else if (skill == PatchUtil.skill_system_enum.midori) {//緑パッチ 詳細不明 outText = ""; return(U.NOT_FOUND); } else { return(SkillConfigFE8NSkillForm.FindSkillIconAndText(pointers, searchSkillName, out outText)); } }
public static string GetSkillText(uint id) { uint[] pointer = FindSkillFE8NVer3IconPointers(); if (pointer == null) { return(""); } InputFormRef InputFormRef = Init(null); uint addr = InputFormRef.IDToAddr(id); if (!U.isSafetyOffset(addr)) { return(""); } uint textid = Program.ROM.u16(addr + 0); string text = TextForm.Direct(textid); return(SkillConfigFE8NSkillForm.ParseTextToSkillName(text)); }
static InputFormRef Init(Form self) { InputFormRef ifr = new InputFormRef(self , "" , g_SkillBaseAddress , g_ICON_LIST_SIZE , (int i, uint addr) => { //読込最大値検索 if (Program.ROM.u8(addr) == 0xFF) { //終端コードが出てきたらそこで強制終了 return(false); } return(true); } , (int i, uint addr) => { string text = TextForm.Direct(Program.ROM.u16(addr + 0)); return(U.ToHexString(i) + " " + SkillConfigFE8NSkillForm.ParseTextToSkillName(text)); } ); return(ifr); }
public SkillAssignmentUnitFE8NForm() { InitializeComponent(); PatchUtil.skill_system_enum skill = PatchUtil.SearchSkillSystem(); Dictionary <uint, string> SCROLL1; Dictionary <uint, string> SCROLL2; Dictionary <uint, string> MASTERY; uint[] pointers; if (skill == PatchUtil.skill_system_enum.yugudora) {//ユグドラパッチ 初期FE8Nカスタム pointers = SkillConfigFE8NSkillForm.FindSkillFE8NVer1IconPointers(); SCROLL1 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_yugudora_skill1_scroll_")); SCROLL2 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_yugudora_skill2_scroll_")); MASTERY = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill3_mastery_")); } else if (skill == PatchUtil.skill_system_enum.midori) {//緑パッチ pointers = SkillConfigFE8NSkillForm.FindSkillFE8NVer1IconPointers(); SCROLL1 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_midori_skill1_scroll_")); SCROLL2 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_midori_skill2_scroll_")); MASTERY = U.LoadDicResource(U.ConfigDataFilename("skill_extends_midori_skill3_mastery_")); } else if (skill == PatchUtil.skill_system_enum.FE8N_ver2) {//FE8N ver2 pointers = SkillConfigFE8NVer2SkillForm.FindSkillFE8NVer2IconPointers(); SCROLL1 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill1_scroll_")); SCROLL2 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill2_scroll_")); MASTERY = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill3_mastery_")); } else {//FE8N pointers = SkillConfigFE8NSkillForm.FindSkillFE8NVer1IconPointers(); SCROLL1 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill1_scroll_")); SCROLL2 = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill2_scroll_")); MASTERY = U.LoadDicResource(U.ConfigDataFilename("skill_extends_FE8N_skill3_mastery_")); } string find; string text; uint icon; find = U.at(SCROLL1, 0x01); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_01.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_0.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x02); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_02.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_1.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x04); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_04.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_2.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x08); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_08.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_3.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x10); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_10.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_4.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x20); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_20.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_5.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x40); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_40.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_6.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL1, 0x80); icon = FindSkillIconAndText(skill, pointers, find, out text); L_40_BIT_80.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE0_7.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x01); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_01.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_0.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x02); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_02.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_1.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x04); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_04.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_2.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x08); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_08.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_3.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x10); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_10.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_4.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x20); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_20.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_5.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x40); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_40.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_6.Image = DrawSkillIcon(skill, icon); find = U.at(SCROLL2, 0x80); icon = FindSkillIconAndText(skill, pointers, find, out text); L_41_BIT_80.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE1_7.Image = DrawSkillIcon(skill, icon); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_0.Text = R._("なし"); find = U.at(MASTERY, 0x01); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_1.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_1.Image = DrawSkillIcon(skill, icon); find = U.at(MASTERY, 0x02); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_2.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_2.Image = DrawSkillIcon(skill, icon); find = U.at(MASTERY, 0x03); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_3.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_3.Image = DrawSkillIcon(skill, icon); find = U.at(MASTERY, 0x04); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_4.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_4.Image = DrawSkillIcon(skill, icon); find = U.at(MASTERY, 0x05); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_5.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_5.Image = DrawSkillIcon(skill, icon); find = U.at(MASTERY, 0x06); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_6.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_6.Image = DrawSkillIcon(skill, icon); find = U.at(MASTERY, 0x07); icon = FindSkillIconAndText(skill, pointers, find, out text); L_39_RADIO_7.Text = U.nl2none(icon == U.NOT_FOUND ? find : text); IMAGE2_7.Image = DrawSkillIcon(skill, icon); InputFormRef.TabControlHideTabOption(SkillTab); List <Control> controls = InputFormRef.GetAllControls(this); InputFormRef.MakeLinkEvent("", controls); }