Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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();
        }
Exemplo n.º 3
0
        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());
        }
Exemplo n.º 4
0
        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);
        }