/// <summary> /// Get full description for Card /// </summary> /// <param name="cardID">Card id to use</param> /// <returns>Card full desscription</returns> public static string GetFullDescriptionForCard(string cardID) { List <XmlDataNode> foundDataNodes = DM.GameInfos.staticInfos["Card"].rootDataNode.GetXmlDataNodesByPathWithXmlInfo("Card", attributeToCheck: new Dictionary <string, string>() { { "ID", cardID } }); if (foundDataNodes.Count <= 0) { foundDataNodes = DM.EditGameData_CardInfos.StaticCard.rootDataNode.GetXmlDataNodesByPathWithXmlInfo("Card", attributeToCheck: new Dictionary <string, string>() { { "ID", cardID } }); } if (foundDataNodes.Count > 0) { XmlDataNode CARD_NODE = foundDataNodes[0]; string CARD_NAME_DES = LocalizedGameDescriptions.GetDecriptionForCard(CARD_NODE.GetAttributesSafe("ID")); string CHAPTER_DES = LocalizedGameDescriptions.GetDescriptionForChapter(CARD_NODE.GetInnerTextByPath("Chapter")); string DIV_INFO_DES = GetDivideInfo.GetDividedCardInfo(cardID); return($"{DIV_INFO_DES} {CHAPTER_DES} / {CARD_NAME_DES}:{cardID}"); } else { return($"Card ID :{cardID}"); } }
/// <summary> /// Get localized passives /// </summary> /// <returns></returns> public static List <string> GetLocalizedPassives() { List <string> passives = new List <string>(); List <string> ETC_PASSIVE_NAMES = new List <string>() { "ui_ability_speeddice", "ui_filter_dice", "ui_dice_slash", "ui_dice_penetrate", "ui_dice_hit", "ui_dice_guard", "ui_dice_evasion", "ui_buf_burn", "ui_buf_paralysis", "ui_buf_bleeding", "ui_buf_vulnerable", "ui_buf_weak", "ui_buf_disarm", "ui_buf_binding", "ui_buf_protection", "ui_buf_strength", "ui_buf_endurance", "ui_buf_quickness", "ui_ability_energy" }; ETC_PASSIVE_NAMES.ForEach((string ETC_PASSIVE_NAME) => { passives.Add(LocalizedGameDescriptions.GetDescriptionForETC(ETC_PASSIVE_NAME)); }); return(passives); }
/// <summary> /// Get full description for DropBook /// </summary> /// <param name="dropBookID">Drop book ID to use</param> /// <returns>Dropbook description</returns> public static string GetFullDescriptionForDropBook(string dropBookID) { List <XmlDataNode> foundDataNodes = DM.GameInfos.staticInfos["DropBook"].rootDataNode.GetXmlDataNodesByPathWithXmlInfo("BookUse", attributeToCheck: new Dictionary <string, string>() { { "ID", dropBookID } }); if (foundDataNodes.Count <= 0) { foundDataNodes = DM.EditGameData_DropBookInfo.StaticDropBookInfo.rootDataNode.GetXmlDataNodesByPathWithXmlInfo("BookUse", attributeToCheck: new Dictionary <string, string>() { { "ID", dropBookID } }); } if (foundDataNodes.Count > 0) { XmlDataNode DROP_BOOK_NODE = foundDataNodes[0]; string DROP_BOOK_DES = LocalizedGameDescriptions.GetDescriptionForETC(DROP_BOOK_NODE.GetInnerTextByPath("TextId")); string CHAPTER_DES = LocalizedGameDescriptions.GetDescriptionForChapter(DROP_BOOK_NODE.GetInnerTextByPath("Chapter")); return($"{CHAPTER_DES} / {DROP_BOOK_DES}:{dropBookID}"); } else { return($"Drop Book ID :{dropBookID}"); } }
/// <summary> /// Get full description of stage /// </summary> /// <param name="stageID">Stage ID to use</param> /// <returns>Full description for stage</returns> public static string GetFullDescriptionForStage(string stageID) { List <XmlDataNode> foundDataNodes = DM.GameInfos.staticInfos["StageInfo"].rootDataNode.GetXmlDataNodesByPathWithXmlInfo("Stage", attributeToCheck: new Dictionary <string, string>() { { "id", stageID } }); if (foundDataNodes.Count <= 0) { foundDataNodes = DM.EditGameData_StageInfo.StaticStageInfo.rootDataNode.GetXmlDataNodesByPathWithXmlInfo("Stage", attributeToCheck: new Dictionary <string, string>() { { "id", stageID } }); } if (foundDataNodes.Count > 0) { XmlDataNode STAGE_NODE = foundDataNodes[0]; string STAGE_ID = STAGE_NODE.GetAttributesSafe("id"); string CHPATER_NUM = STAGE_NODE.GetInnerTextByPath("Chapter"); string STAGE_DES = LocalizedGameDescriptions.GetDescriptionForStage(STAGE_ID); string CHAPTER_DES = LocalizedGameDescriptions.GetDescriptionForChapter(CHPATER_NUM); return($"{CHAPTER_DES} / {STAGE_DES}:{STAGE_ID}"); } else { return($"Stage ID :{stageID}"); } }
/// <summary> /// Get localized chpater lists /// </summary> /// <returns></returns> public static List <string> GetLocalizedChapters(int maxChapterNum = 7) { List <string> chapters = new List <string>(); for (int chpaterNum = 1; chpaterNum <= maxChapterNum; chpaterNum++) { chapters.Add(LocalizedGameDescriptions.GetDescriptionForChapter(chpaterNum.ToString())); } return(chapters); }
/// <summary> /// Get full description of Key Book /// </summary> /// <param name="bookID"></param> /// <returns></returns> public static string GetFullDescriptionForKeyBook(string bookID) { List <XmlDataNode> foundDataNodes = DM.GameInfos.staticInfos["EquipPage"].rootDataNode.GetXmlDataNodesByPathWithXmlInfo("Book", attributeToCheck: new Dictionary <string, string>() { { "ID", bookID } }); if (foundDataNodes.Count <= 0) { foundDataNodes = DM.EditGameData_BookInfos.StaticEquipPage.rootDataNode.GetXmlDataNodesByPathWithXmlInfo("Book", attributeToCheck: new Dictionary <string, string>() { { "ID", bookID } }); } if (foundDataNodes.Count > 0) { XmlDataNode STAGE_NODE = foundDataNodes[0]; string TEXT_ID = STAGE_NODE.GetInnerTextByPath("TextId"); string CHPATER_NUM = STAGE_NODE.GetInnerTextByPath("Chapter"); string BOOK_DES = ""; int KEY_PAGE_ID = Convert.ToInt32(bookID); if (KEY_PAGE_ID > 9000000 && KEY_PAGE_ID < 9999999) { BOOK_DES = LocalizedGameDescriptions.GetDescriptionForBooks(bookID); } else { BOOK_DES = LocalizedGameDescriptions.GetDescriptionForBooks(TEXT_ID); } string CHAPTER_DES = LocalizedGameDescriptions.GetDescriptionForChapter(CHPATER_NUM); string DIV_INFO_DES = GetDivideInfo.GetDividedKeyPageInfo(bookID); return($"{DIV_INFO_DES} {CHAPTER_DES} / {BOOK_DES}:{bookID}"); } else { return($"Book ID :{bookID}"); } }
/// <summary> /// Get full description of Books /// </summary> /// <param name="bookID">Book ID to use</param> /// <returns>Full description of book</returns> public static string GetFullDescriptionForBooks(string bookID) { List <XmlDataNode> foundDataNodes = DM.GameInfos.staticInfos["StageInfo"].rootDataNode.GetXmlDataNodesByPath("Stage"); if (foundDataNodes.Count > 0) { foreach (XmlDataNode foundDataNode in foundDataNodes) { if (foundDataNode.CheckIfGivenPathWithXmlInfoExists("Invitation/Book", bookID)) { string CHPATER_NUM = foundDataNode.GetInnerTextByPath("Chapter"); string CHAPTER_DES = LocalizedGameDescriptions.GetDescriptionForChapter(CHPATER_NUM); string BOOK_DES = LocalizedGameDescriptions.GetDescriptionForBooks(bookID); return($"{CHAPTER_DES} / {BOOK_DES}:{bookID}"); } } return($"Book ID :{bookID}"); } else { return($"Book ID :{bookID}"); } }