public void OnPointerClick(PointerEventData eventData) { if (!TaiwuEditor.settings.SwitchTheBook.Value) { return; } //将该书籍的真传和手抄属性进行切换 int gongFaID = int.Parse(DateFile.instance.GetItemDate(_itemid, 32, false)); int isPirate = int.Parse(DateFile.instance.GetItemDate(_itemid, 35, false)); //int itemTrueID = int.Parse(DateFile.instance.GetItemDate(_itemid, 999, false)); int newItemTrueID = GongFaDict.Get_GongFa_ID(gongFaID, 1 - isPirate); if (newItemTrueID == -1) { TaiwuEditor.Logger.LogError("We fail to get the GongFa ID:" + _text.text); } else { // DateFile.instance.itemsDate[_itemid][999] = newItemTrueID.ToString(); GameData.Items.SetItemProperty(_itemid, 999, newItemTrueID.ToString()); } // DateFile.instance.ChangItemDate(_itemid, 999, newItemTrueID, true); DateFile.instance.GetItem(_actorid, _itemid, 1, false, 0, 0); // GameData.Items.GetItem(_itemid); TaiwuEditor.Logger.LogInfo("We may complete the book switch."); // ActorMenu.instance.UpdateItemInformation(_itemid); //if (isPirate > 0) // DateFile.instance.itemsDate[_itemid][999] = (itemTrueID - 200000).ToString(); //else // DateFile.instance.itemsDate[_itemid][999] = (itemTrueID + 200000).ToString(); }
/// <summary> /// 加载功法数据 /// </summary> private static void DateFile_LoadDate_Prefix() { if (TaiwuEditor.enabled && TaiwuEditor.settings.SwitchTheBook.Value) { if (!GongFaDict.IsDictLoaded) { if (DateFile.instance != null) { //建立功法ID的索引 int iterNum = 0; foreach (KeyValuePair <int, Dictionary <int, string> > item in DateFile.instance.presetitemDate) { iterNum += 1; //确认该物品为图纸或图书 if (int.Parse(item.Value[4]) == 5) { //确认该物品为图书 if (int.Parse(item.Value[5]) == 21) { //确认该物品为功法书 if (int.Parse(item.Value[506]) >= 20) { //将其加入功法词典 GongFaDict.Add_new_GongFa(int.Parse(item.Value[32]), int.Parse(item.Value[35]), int.Parse(item.Value[999])); } } } } GongFaDict.IsDictLoaded = true; TaiwuEditor.Logger.LogInfo("GongFaDict Loaded with size: " + GongFaDict.Size().ToString()); TaiwuEditor.Logger.LogInfo("Totally find itemsDate with size: " + iterNum); TaiwuEditor.Logger.LogInfo("Dict of itemsDate with size: " + DateFile.instance.presetitemDate.Count().ToString()); } else { TaiwuEditor.Logger.LogError("GongFaDict already Loaded?"); } } else { TaiwuEditor.Logger.LogError("We fail to load the GongFaDict!"); } } }