Example #1
0
        protected override void DrawContents(Gdk.Drawable d, Cairo.Context g, int width, int height, bool screenChanged)
        {
            g.SelectFontFace(Text.MONOSPACE_FONT, FontSlant.Normal, FontWeight.Bold);
            g.SetFontSize(24);



            TextExtents te;

            string exp, next, llvl;


            #region Top Row

            DrawCharacterStatus(d, g);

            exp  = Party.Selected.Exp.ToString();
            next = Party.Selected.ExpToNextLevel.ToString();
            llvl = Party.Selected.LimitLevel.ToString();

            Text.ShadowedText(g, "Exp:", X + x8, Y + ya);
            Text.ShadowedText(g, "Next lvl:", X + x8, Y + yb);
            Text.ShadowedText(g, "Limit lvl:", X + x8, Y + yc);

            te = g.TextExtents(exp);
            Text.ShadowedText(g, exp, X + x11 - te.Width, Y + ya);
            te = g.TextExtents(next);
            Text.ShadowedText(g, next, X + x11 - te.Width, Y + yb);
            te = g.TextExtents(llvl);
            Text.ShadowedText(g, llvl, X + x11 - te.Width, Y + yc);

            #endregion Top


            #region Left

            string str, vit, dex, mag, spi, lck;
            string atk, atkp, def, defp, mat, mdf, mdfp;

            str = Party.Selected.Strength.ToString();
            vit = Party.Selected.Vitality.ToString();
            dex = Party.Selected.Dexterity.ToString();
            mag = Party.Selected.Magic.ToString();
            spi = Party.Selected.Spirit.ToString();
            lck = Party.Selected.Luck.ToString();

            atk  = Ally.Attack(Party.Selected).ToString();
            atkp = Ally.AttackPercent(Party.Selected).ToString();
            def  = Ally.Defense(Party.Selected).ToString();
            defp = Ally.DefensePercent(Party.Selected).ToString();
            mat  = Ally.MagicAttack(Party.Selected).ToString();
            mdf  = Ally.MagicDefense(Party.Selected).ToString();
            mdfp = Ally.MagicDefensePercent(Party.Selected).ToString();

            Cairo.Color greenish = Colors.TEXT_TEAL;

            Text.ShadowedText(g, greenish, "Strength", X + x0, Y + yq + (line * 0));
            Text.ShadowedText(g, greenish, "Vitality", X + x0, Y + yq + (line * 1));
            Text.ShadowedText(g, greenish, "Dexterity", X + x0, Y + yq + (line * 2));
            Text.ShadowedText(g, greenish, "Magic", X + x0, Y + yq + (line * 3));
            Text.ShadowedText(g, greenish, "Spirit", X + x0, Y + yq + (line * 4));
            Text.ShadowedText(g, greenish, "Luck", X + x0, Y + yq + (line * 5));

            Text.ShadowedText(g, greenish, "Attack", X + x0, Y + yr + (line * 0));
            Text.ShadowedText(g, greenish, "Attack %", X + x0, Y + yr + (line * 1));
            Text.ShadowedText(g, greenish, "Defense", X + x0, Y + yr + (line * 2));
            Text.ShadowedText(g, greenish, "Defense %", X + x0, Y + yr + (line * 3));
            Text.ShadowedText(g, greenish, "Magic", X + x0, Y + yr + (line * 4));
            Text.ShadowedText(g, greenish, "Magic def", X + x0, Y + yr + (line * 5));
            Text.ShadowedText(g, greenish, "Magic def %", X + x0, Y + yr + (line * 6));

            te = g.TextExtents(str);
            Text.ShadowedText(g, str, X + x1 - te.Width, Y + yq + (line * 0));
            te = g.TextExtents(vit);
            Text.ShadowedText(g, vit, X + x1 - te.Width, Y + yq + (line * 1));
            te = g.TextExtents(dex);
            Text.ShadowedText(g, dex, X + x1 - te.Width, Y + yq + (line * 2));
            te = g.TextExtents(mag);
            Text.ShadowedText(g, mag, X + x1 - te.Width, Y + yq + (line * 3));
            te = g.TextExtents(spi);
            Text.ShadowedText(g, spi, X + x1 - te.Width, Y + yq + (line * 4));
            te = g.TextExtents(lck);
            Text.ShadowedText(g, lck, X + x1 - te.Width, Y + yq + (line * 5));

            te = g.TextExtents(atk);
            Text.ShadowedText(g, atk, X + x1 - te.Width, Y + yr + (line * 0));
            te = g.TextExtents(atkp);
            Text.ShadowedText(g, atkp, X + x1 - te.Width, Y + yr + (line * 1));
            te = g.TextExtents(def);
            Text.ShadowedText(g, def, X + x1 - te.Width, Y + yr + (line * 2));
            te = g.TextExtents(defp);
            Text.ShadowedText(g, defp, X + x1 - te.Width, Y + yr + (line * 3));
            te = g.TextExtents(mat);
            Text.ShadowedText(g, mat, X + x1 - te.Width, Y + yr + (line * 4));
            te = g.TextExtents(mdf);
            Text.ShadowedText(g, mdf, X + x1 - te.Width, Y + yr + (line * 5));
            te = g.TextExtents(mdfp);
            Text.ShadowedText(g, mdfp, X + x1 - te.Width, Y + yr + (line * 6));

            #endregion Left


            #region Right



            MateriaSlots.Render(g, Party.Selected.Weapon, X + x9, Y + yi);
            MateriaSlots.Render(g, Party.Selected.Armor, X + x9, Y + yk);



            g.Color = Colors.TEXT_TEAL;
            g.MoveTo(X + x7, Y + yh);
            g.ShowText("Wpn.");
            g.MoveTo(X + x7, Y + yj);
            g.ShowText("Arm.");
            g.MoveTo(X + x7, Y + yl);
            g.ShowText("Acc.");
            g.Color = Colors.WHITE;

            Text.ShadowedText(g, Party.Selected.Weapon.Name, X + x8, Y + yh);
            Text.ShadowedText(g, Party.Selected.Armor.Name, X + x8, Y + yj);
            Text.ShadowedText(g, Party.Selected.Accessory.Name, X + x8, Y + yl);

            #endregion Right
        }
Example #2
0
        protected override void DrawContents(Gdk.Drawable d, Cairo.Context g, int width, int height, bool screenChanged)
        {
            g.SelectFontFace(Text.MONOSPACE_FONT, FontSlant.Normal, FontWeight.Bold);
            g.SetFontSize(24);

            TextExtents te;

            #region Left

            int atk, atkp, def, defp, mat, mdf, mdfp;

            atk  = Ally.Attack(MenuState.Party.Selected);
            atkp = Ally.AttackPercent(MenuState.Party.Selected);
            def  = Ally.Defense(MenuState.Party.Selected);
            defp = Ally.DefensePercent(MenuState.Party.Selected);
            mat  = Ally.MagicAttack(MenuState.Party.Selected);
            mdf  = Ally.MagicDefense(MenuState.Party.Selected);
            mdfp = Ally.MagicDefensePercent(MenuState.Party.Selected);

            Cairo.Color greenish = Colors.TEXT_TEAL;

            Text.ShadowedText(g, greenish, "Attack", X + x0, Y + yr + (line * 0));
            Text.ShadowedText(g, greenish, "Attack %", X + x0, Y + yr + (line * 1));
            Text.ShadowedText(g, greenish, "Defense", X + x0, Y + yr + (line * 2));
            Text.ShadowedText(g, greenish, "Defense %", X + x0, Y + yr + (line * 3));
            Text.ShadowedText(g, greenish, "Magic", X + x0, Y + yr + (line * 4));
            Text.ShadowedText(g, greenish, "Magic def", X + x0, Y + yr + (line * 5));
            Text.ShadowedText(g, greenish, "Magic def %", X + x0, Y + yr + (line * 6));

            te = g.TextExtents(atk.ToString());
            Text.ShadowedText(g, atk.ToString(), X + x1 - te.Width, Y + yr + (line * 0));
            te = g.TextExtents(atkp.ToString());
            Text.ShadowedText(g, atkp.ToString(), X + x1 - te.Width, Y + yr + (line * 1));
            te = g.TextExtents(def.ToString());
            Text.ShadowedText(g, def.ToString(), X + x1 - te.Width, Y + yr + (line * 2));
            te = g.TextExtents(defp.ToString());
            Text.ShadowedText(g, defp.ToString(), X + x1 - te.Width, Y + yr + (line * 3));
            te = g.TextExtents(mat.ToString());
            Text.ShadowedText(g, mat.ToString(), X + x1 - te.Width, Y + yr + (line * 4));
            te = g.TextExtents(mdf.ToString());
            Text.ShadowedText(g, mdf.ToString(), X + x1 - te.Width, Y + yr + (line * 5));
            te = g.TextExtents(mdfp.ToString());
            Text.ShadowedText(g, mdfp.ToString(), X + x1 - te.Width, Y + yr + (line * 6));

            if (MenuState.EquipList.IsControl)
            {
                int t_atk, t_atkp, t_def, t_defp, t_mat, t_mdf, t_mdfp;

                IInventoryItem temp;

                switch (MenuState.EquipTop.Option)
                {
                case 0:
                    temp = MenuState.Party.Selected.Weapon;
                    MenuState.Party.Selected.Weapon = (Weapon)MenuState.EquipList.Selection;
                    break;

                case 1:
                    temp = MenuState.Party.Selected.Armor;
                    MenuState.Party.Selected.Armor = (Armor)MenuState.EquipList.Selection;
                    break;

                case 2:
                    temp = MenuState.Party.Selected.Accessory;
                    MenuState.Party.Selected.Accessory = (Accessory)MenuState.EquipList.Selection;
                    break;

                default:
                    temp = MenuState.Party.Selected.Weapon;
                    break;
                }

                t_atk  = Ally.Attack(MenuState.Party.Selected);
                t_atkp = Ally.AttackPercent(MenuState.Party.Selected);
                t_def  = Ally.Defense(MenuState.Party.Selected);
                t_defp = Ally.DefensePercent(MenuState.Party.Selected);
                t_mat  = Ally.MagicAttack(MenuState.Party.Selected);
                t_mdf  = Ally.MagicDefense(MenuState.Party.Selected);
                t_mdfp = Ally.MagicDefensePercent(MenuState.Party.Selected);

                switch (MenuState.EquipTop.Option)
                {
                case 0:
                    MenuState.Party.Selected.Weapon = (Weapon)temp;
                    break;

                case 1:
                    MenuState.Party.Selected.Armor = (Armor)temp;
                    break;

                case 2:
                    MenuState.Party.Selected.Accessory = (Accessory)temp;
                    break;

                default: break;
                }

                Color c;

                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 0));
                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 1));
                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 2));
                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 3));
                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 4));
                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 5));
                Text.ShadowedText(g, ">", X + x2, Y + yr + (line * 6));

                te = g.TextExtents(t_atk.ToString());
                if (t_atk < atk)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_atk > atk)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_atk.ToString(), X + x3 - te.Width, Y + yr + (line * 0));

                te = g.TextExtents(t_atkp.ToString());
                if (t_atkp < atkp)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_atkp > atkp)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_atkp.ToString(), X + x3 - te.Width, Y + yr + (line * 1));

                te = g.TextExtents(t_def.ToString());
                if (t_def < def)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_def > def)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_def.ToString(), X + x3 - te.Width, Y + yr + (line * 2));

                te = g.TextExtents(t_defp.ToString());
                if (t_defp < defp)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_defp > defp)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_defp.ToString(), X + x3 - te.Width, Y + yr + (line * 3));

                te = g.TextExtents(t_mat.ToString());
                if (t_mat < mat)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_mat > mat)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_mat.ToString(), X + x3 - te.Width, Y + yr + (line * 4));

                te = g.TextExtents(t_mdf.ToString());
                if (t_mdf < mdf)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_mdf > mdf)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_mdf.ToString(), X + x3 - te.Width, Y + yr + (line * 5));

                te = g.TextExtents(t_mdfp.ToString());
                if (t_mdfp < mdfp)
                {
                    c = Colors.TEXT_RED;
                }
                else if (t_mdfp > mdfp)
                {
                    c = Colors.TEXT_YELLOW;
                }
                else
                {
                    c = Colors.WHITE;
                }
                Text.ShadowedText(g, c, t_mdfp.ToString(), X + x3 - te.Width, Y + yr + (line * 6));
            }

            #endregion Left
        }