private void Update_String()
            {
                if (Junction != null && Junction.GetMode().Equals(Mode.TopMenu_Auto) && Enabled)
                {
                    FF8String Changed = null;
                    switch (CURSOR_SELECT)
                    {
                    case 0:
                        Changed = Strings.Description.AutoAtk;
                        break;

                    case 1:
                        Changed = Strings.Description.AutoDef;
                        break;

                    case 2:
                        Changed = Strings.Description.AutoMag;
                        break;
                    }
                    if (Changed != null && Junction != null)
                    {
                        Junction.ChangeHelp(Changed);
                    }
                }
            }
Exemple #2
0
            public override bool Update()
            {
                var ret = base.Update();

                if (Junction != null && Junction.GetMode().Equals(Mode.Abilities))
                {
                    Cursor_Status &= ~Cursor_Status.Blinking;

                    if (Commands != null && Ability != null)
                    {
                        if (CURSOR_SELECT >= Commands.Count)
                        {
                            if (Ability.Descriptions != null && Ability.Descriptions.TryGetValue(CURSOR_SELECT - Commands.Count, out var v))
                            {
                                Junction.ChangeHelp(v);
                            }
                        }
                        else
                        {
                            if (Commands.Descriptions != null && Commands.Descriptions.TryGetValue(CURSOR_SELECT, out var v))
                            {
                                Junction.ChangeHelp(v);
                            }
                        }
                    }
                }
                else
                {
                    Cursor_Status |= Cursor_Status.Blinking;
                }

                return(ret);
            }
            public override bool Update()
            {
                if (Junction != null && !Junction.GetMode().Equals(Mode.Abilities_Commands))
                {
                    Cursor_Status &= ~Cursor_Status.Enabled;
                }
                else
                {
                    Cursor_Status |= Cursor_Status.Enabled;
                }
                var pos  = 0;
                var skip = Page * Rows;

                if (Damageable != null && Damageable.GetCharacterData(out var c))
                {
                    for (var i = 0;
                         Memory.State.Characters &&
                         i < c.UnlockedGFAbilities.Count &&
                         pos < Rows; i++)
                    {
                        if (c.UnlockedGFAbilities[i] == Kernel.Abilities.None)
                        {
                            continue;
                        }
                        var j = (c.UnlockedGFAbilities[i]);
                        if (!Source.ContainsKey(j) || skip-- > 0)
                        {
                            continue;
                        }
                        Font.ColorID cid;
                        if (c.Commands.Contains(j))
                        {
                            cid         = Font.ColorID.Grey;
                            BLANKS[pos] = true;
                        }
                        else
                        {
                            cid         = Font.ColorID.White;
                            BLANKS[pos] = false;
                        }
                        ((IGMDataItem.Text)ITEM[pos, 0]).Data      = Source[j].Name;
                        ((IGMDataItem.Text)ITEM[pos, 0]).FontColor = cid;
                        ITEM[pos, 0].Show();
                        Contents[pos] = j;
                        pos++;
                    }
                }
                for (; pos < Rows; pos++)
                {
                    ITEM[pos, 0].Hide();
                    BLANKS[pos]   = true;
                    Contents[pos] = Kernel.Abilities.None;
                }

                if (Contents[CURSOR_SELECT] != Kernel.Abilities.None && Junction.GetMode().Equals(Mode.Abilities_Commands))
                {
                    Junction.ChangeHelp(Source[Contents[CURSOR_SELECT]].Description);
                }
                UpdateTitle();
                if (Contents[CURSOR_SELECT] == Kernel.Abilities.None)
                {
                    CURSOR_NEXT();
                }
                if (Pages > 1)
                {
                    if (Contents[0] == Kernel.Abilities.None)
                    {
                        //Pages = Page;
                        PAGE_NEXT();
                        return(Update());
                    }
                    //else if (Contents[Rows - 1] == Kernel_bin.Abilities.None)
                    //    Pages = Page + 1;
                }
                return(base.Update());
            }