public static void PrintAbilityGuide(bool csv) { List <string[]> stats = new List <string[]>(); stats.Add(new string[3] { "###", "Name", "Description" }); for (int ii = 0; ii < DataManager.Instance.DataIndices[DataManager.DataType.Intrinsic].Count; ii++) { IntrinsicData entry = DataManager.Instance.GetIntrinsic(ii); if (entry.Released) { stats.Add(new string[3] { ii.ToString("D3"), entry.Name.ToLocal(), entry.Desc.ToLocal() }); } else { stats.Add(new string[3] { ii.ToString("D3"), entry.Name.ToLocal(), "NO DATA" }); } } if (csv) { writeCSVGuide("Abilities", stats); } else { writeHTMLGuide("Abilities", stats); } }
public void SetCurrentChar(CharData chara) { CurrentChar = chara; if (CurrentChar == null) { return; } Portrait.Speaker = CurrentChar.BaseForm; Nickname.Text = CurrentChar.BaseName; Name.Text = CurrentChar.FullFormName; BaseMonsterForm formData = DataManager.Instance.GetMonster(CurrentChar.BaseForm.Species).Forms[CurrentChar.BaseForm.Form]; Level.Text = Text.FormatKey("MENU_TEAM_LEVEL_SHORT", CurrentChar.Level); ElementData element1 = DataManager.Instance.GetElement(formData.Element1); ElementData element2 = DataManager.Instance.GetElement(formData.Element2); string typeString = String.Format("{0}\u2060{1}", element1.Symbol, element1.Name.ToLocal()); if (formData.Element2 != 00) { typeString += "/" + String.Format("{0}\u2060{1}", element2.Symbol, element1.Name.ToLocal()); } Elements.Text = typeString; for (int ii = 0; ii < CharData.MAX_SKILL_SLOTS; ii++) { SlotSkill skill = CurrentChar.BaseSkills[ii]; SkillData data = DataManager.Instance.GetSkill(skill.SkillNum); ElementData element = DataManager.Instance.GetElement(data.Data.Element); string skillString = "-----"; if (skill.SkillNum > -1) { skillString = String.Format("{0}\u2060{1}", element.Symbol, data.Name.ToLocal()); } Skills[ii].Text = skillString; } IntrinsicData entry = DataManager.Instance.GetIntrinsic(CurrentChar.BaseIntrinsics[0]); Intrinsic.Text = entry.Name.ToLocal(); }
public void SetCurrentChar(CharData chara) { CurrentChar = chara; if (CurrentChar == null) { return; } Portrait.Speaker = CurrentChar.BaseForm; Nickname.SetText(CurrentChar.BaseName); Name.SetText(CharData.GetFullFormName(CurrentChar.BaseForm)); BaseMonsterForm formData = DataManager.Instance.GetMonster(CurrentChar.BaseForm.Species).Forms[CurrentChar.BaseForm.Form]; Level.SetText(Text.FormatKey("MENU_TEAM_LEVEL_SHORT", CurrentChar.Level)); ElementData element1 = DataManager.Instance.GetElement(formData.Element1); ElementData element2 = DataManager.Instance.GetElement(formData.Element2); string typeString = element1.GetIconName(); if (formData.Element2 != 00) { typeString += "/" + element2.GetIconName(); } Elements.SetText(typeString); for (int ii = 0; ii < CharData.MAX_SKILL_SLOTS; ii++) { SlotSkill skill = CurrentChar.BaseSkills[ii]; SkillData data = DataManager.Instance.GetSkill(skill.SkillNum); string skillString = "-----"; if (skill.SkillNum > -1) { skillString = data.GetIconName(); } Skills[ii].SetText(skillString); } IntrinsicData entry = DataManager.Instance.GetIntrinsic(CurrentChar.BaseIntrinsics[0]); Intrinsic.SetText(entry.GetColoredName()); }
public MemberFeaturesMenu(int teamSlot, bool assembly, bool allowAssembly) { Bounds = Rect.FromPoints(new Loc(24, 16), new Loc(296, 224)); this.teamSlot = teamSlot; this.assembly = assembly; this.allowAssembly = allowAssembly; Character player = assembly ? DataManager.Instance.Save.ActiveTeam.Assembly[teamSlot] : DataManager.Instance.Save.ActiveTeam.Players[teamSlot]; //TODO: align this text properly Title = new MenuText(Text.FormatKey("MENU_TEAM_FEATURES") + " (1/3)", Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth + 8, GraphicsManager.MenuBG.TileHeight)); Div = new MenuDivider(Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth, GraphicsManager.MenuBG.TileHeight + LINE_SPACE), Bounds.End.X - Bounds.X - GraphicsManager.MenuBG.TileWidth * 2); Portrait = new SpeakerPortrait(player.BaseForm, new EmoteStyle(0), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2, GraphicsManager.MenuBG.TileHeight + TitledStripMenu.TITLE_OFFSET), false); string speciesText = player.GetDisplayName(true) + " / " + CharData.GetFullFormName(player.BaseForm); Name = new MenuText(speciesText, Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2 + 48, GraphicsManager.MenuBG.TileHeight + TitledStripMenu.TITLE_OFFSET)); ElementData element1 = DataManager.Instance.GetElement(player.Element1); ElementData element2 = DataManager.Instance.GetElement(player.Element2); string typeString = element1.GetIconName(); if (player.Element2 != 00) { typeString += "/" + element2.GetIconName(); } bool origElements = (player.Element1 == DataManager.Instance.GetMonster(player.BaseForm.Species).Forms[player.BaseForm.Form].Element1); origElements &= (player.Element2 == DataManager.Instance.GetMonster(player.BaseForm.Species).Forms[player.BaseForm.Form].Element2); Elements = new MenuText(Text.FormatKey("MENU_TEAM_ELEMENT", typeString), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2 + 48, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 1 + TitledStripMenu.TITLE_OFFSET), origElements ? Color.White : Color.Yellow); Level = new MenuText(Text.FormatKey("MENU_TEAM_LEVEL_SHORT", player.Level), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2 + 48, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 2 + TitledStripMenu.TITLE_OFFSET)); HP = new MenuText(Text.FormatKey("MENU_TEAM_HP", player.HP, player.MaxHP), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 3 + TitledStripMenu.TITLE_OFFSET)); Fullness = new MenuText(Text.FormatKey("MENU_TEAM_HUNGER", player.Fullness, player.MaxFullness), Bounds.Start + new Loc((Bounds.End.X - Bounds.X) / 2, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 3 + TitledStripMenu.TITLE_OFFSET)); MainDiv = new MenuDivider(Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 5), Bounds.End.X - Bounds.X - GraphicsManager.MenuBG.TileWidth * 2); SkillTitle = new MenuText(Text.FormatKey("MENU_TEAM_SKILLS"), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 4 + TitledStripMenu.TITLE_OFFSET)); Skills = new MenuText[CharData.MAX_SKILL_SLOTS * 3]; for (int ii = 0; ii < CharData.MAX_SKILL_SLOTS; ii++) { SlotSkill skill = player.BaseSkills[ii]; string skillString = "-----"; string skillCharges = "--"; string totalCharges = "/--"; if (skill.SkillNum > -1) { SkillData data = DataManager.Instance.GetSkill(skill.SkillNum); skillString = data.GetIconName(); skillCharges = skill.Charges.ToString(); totalCharges = "/" + (data.BaseCharges + player.ChargeBoost); } Skills[ii * 3] = new MenuText(skillString, Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * (ii + 5) + TitledStripMenu.TITLE_OFFSET)); Skills[ii * 3 + 1] = new MenuText(skillCharges, new Loc(Bounds.End.X - GraphicsManager.MenuBG.TileWidth * 2 - 16 - GraphicsManager.TextFont.CharSpace, Bounds.Y + GraphicsManager.MenuBG.TileHeight + VERT_SPACE * (ii + 5) + TitledStripMenu.TITLE_OFFSET), DirH.Right); Skills[ii * 3 + 2] = new MenuText(totalCharges, new Loc(Bounds.End.X - GraphicsManager.MenuBG.TileWidth * 2 - 16, Bounds.Y + GraphicsManager.MenuBG.TileHeight + VERT_SPACE * (ii + 5) + TitledStripMenu.TITLE_OFFSET), DirH.Left); } IntrinsicDiv = new MenuDivider(Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 10), Bounds.End.X - Bounds.X - GraphicsManager.MenuBG.TileWidth * 2); bool origIntrinsic = (player.Intrinsics[0].Element.ID == player.BaseIntrinsics[0]); IntrinsicData entry = DataManager.Instance.GetIntrinsic(player.Intrinsics[0].Element.ID); Intrinsic = new MenuText(Text.FormatKey("MENU_TEAM_INTRINSIC", entry.GetColoredName()), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 9 + TitledStripMenu.TITLE_OFFSET), origIntrinsic ? Color.White : Color.Yellow); IntrinsicDesc = new DialogueText(entry.Desc.ToLocal(), Bounds.Start + new Loc(GraphicsManager.MenuBG.TileWidth * 2, GraphicsManager.MenuBG.TileHeight + VERT_SPACE * 10 + TitledStripMenu.TITLE_OFFSET), Bounds.End.X - GraphicsManager.MenuBG.TileWidth * 3 - Bounds.X, LINE_SPACE, false); }