예제 #1
0
파일: KChart.cs 프로젝트: shimakiui/PKHeX
        private void PopEntry(int index)
        {
            var p = SAV.Personal[index];

            int  s      = index > SAV.MaxSpeciesID ? baseForm[index] : index;
            var  f      = index <= SAV.MaxSpeciesID ? 0 : formVal[index];
            bool alolan = s > 721 || Legal.PastGenAlolanNatives.Contains(s);

            if (alolanOnly && !alolan)
            {
                return;
            }

            var row = new DataGridViewRow();

            row.CreateCells(DGV);

            int r = 0;

            row.Cells[r++].Value         = s.ToString("000") + (f > 0 ? "-" + f.ToString("00") :"");
            row.Cells[r++].Value         = PKMUtil.GetSprite(s, f, 0, 0, false, false, SAV.Generation);
            row.Cells[r++].Value         = species[index];
            row.Cells[r++].Value         = s > 721 || Legal.PastGenAlolanNatives.Contains(s);
            row.Cells[r].Style.BackColor = MapColor((int)((Math.Max(p.BST - 175, 0)) / 3f));
            row.Cells[r++].Value         = p.BST.ToString("000");
            row.Cells[r++].Value         = PKMUtil.GetTypeSprite(p.Type1, SAV.Generation);
            row.Cells[r++].Value         = p.Type1 == p.Type2 ? Resources.slotTrans : PKMUtil.GetTypeSprite(p.Type2, SAV.Generation);
            row.Cells[r].Style.BackColor = MapColor(p.HP);
            row.Cells[r++].Value         = p.HP.ToString("000");
            row.Cells[r].Style.BackColor = MapColor(p.ATK);
            row.Cells[r++].Value         = p.ATK.ToString("000");
            row.Cells[r].Style.BackColor = MapColor(p.DEF);
            row.Cells[r++].Value         = p.DEF.ToString("000");
            row.Cells[r].Style.BackColor = MapColor(p.SPA);
            row.Cells[r++].Value         = p.SPA.ToString("000");
            row.Cells[r].Style.BackColor = MapColor(p.SPD);
            row.Cells[r++].Value         = p.SPD.ToString("000");
            row.Cells[r].Style.BackColor = MapColor(p.SPE);
            row.Cells[r++].Value         = p.SPE.ToString("000");
            row.Cells[r++].Value         = abilities[p.Abilities[0]];
            row.Cells[r++].Value         = abilities[p.Abilities[1]];
            row.Cells[r].Value           = abilities[p.Abilities.Length <= 2 ? 0 : p.Abilities[2]];
            DGV.Rows.Add(row);
        }