//ライセンス情報はAgeOnフォルダのLISENCEフォルダを参照してください
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Drawing;

namespace nispi
{
    class SpecialPointWorld
    {
        public SpecialPointWorld()
        {
        }

        public static void AddPoint(List<Point> yokoPoint, string yomi, ref Point point, int w, int h)
        {
            if (yomi.Equals("Russia") == true)
            {
                yokoPoint.Add(new Point(231, 199));
                yokoPoint.Add(new Point(383, 182));
                yokoPoint.Add(new Point(351, 76));
                yokoPoint.Add(new Point(399, 66));
                yokoPoint.Add(new Point(377, 48));
                yokoPoint.Add(new Point(368, 52));
                yokoPoint.Add(new Point(382, 16));
                yokoPoint.Add(new Point(448, 24));
                yokoPoint.Add(new Point(478, 36));
                yokoPoint.Add(new Point(633, 9));
                yokoPoint.Add(new Point(765, 21));
                yokoPoint.Add(new Point(883, 69));
                yokoPoint.Add(new Point(939, 48));
                yokoPoint.Add(new Point(769, 228));
                yokoPoint.Add(new Point(825, 232));
                yokoPoint.Add(new Point(745, 200));
                yokoPoint.Add(new Point(767, 206));
                yokoPoint.Add(new Point(794, 2));
                yokoPoint.Add(new Point(758, 2));
                yokoPoint.Add(new Point(767, 2));
                yokoPoint.Add(new Point(752, 2));

                yokoPoint.Add(new Point(863, 170));
                yokoPoint.Add(new Point(861, 171));
            }
            else if (yomi.Equals("Canada") == true)
            {
                yokoPoint.Add(new Point(1246, 62));
                yokoPoint.Add(new Point(1194, 22));
                yokoPoint.Add(new Point(1235, 5));
                yokoPoint.Add(new Point(1346, 5));
                yokoPoint.Add(new Point(1313, 3));
                yokoPoint.Add(new Point(1320, 23));
                yokoPoint.Add(new Point(1292, 37));
                yokoPoint.Add(new Point(1255, 81));
                yokoPoint.Add(new Point(1297, 74));
                yokoPoint.Add(new Point(1340, 43));
                yokoPoint.Add(new Point(1381, 27));
                yokoPoint.Add(new Point(1395, 89));
                yokoPoint.Add(new Point(1356, 122));
                yokoPoint.Add(new Point(1365, 141));
                yokoPoint.Add(new Point(1379, 144));
                yokoPoint.Add(new Point(1483, 239));
                yokoPoint.Add(new Point(1497, 251));
                yokoPoint.Add(new Point(1451, 237));
                yokoPoint.Add(new Point(1450, 266));
                yokoPoint.Add(new Point(1463, 256));
                yokoPoint.Add(new Point(1453, 256));
                yokoPoint.Add(new Point(1453, 238));
                yokoPoint.Add(new Point(1174, 234));
                yokoPoint.Add(new Point(1145, 207));
                yokoPoint.Add(new Point(1233, 188));
                yokoPoint.Add(new Point(1264, 23));
                yokoPoint.Add(new Point(1254, 0));
                yokoPoint.Add(new Point(1452, 256));
                yokoPoint.Add(new Point(1400, 147));
                yokoPoint.Add(new Point(1373, 213));
            }
            else if (yomi.Equals("Japan") == true)
            {
                yokoPoint.Add(new Point(752, 311));
                yokoPoint.Add(new Point(728, 327));
                yokoPoint.Add(new Point(714, 330));
                yokoPoint.Add(new Point(770, 273));
            }
            else if (yomi.Equals("Australia") == true)
            {
                yokoPoint.Add(new Point(745, 597));
                yokoPoint.Add(new Point(784, 688));

                yokoPoint.Add(new Point(741, 548));
                yokoPoint.Add(new Point(714, 537));
                yokoPoint.Add(new Point(746, 654));
                yokoPoint.Add(new Point(791, 677));
                yokoPoint.Add(new Point(792, 678));
            }

            else if (yomi.Equals("Denmark") == true)
            {
                yokoPoint.Add(new Point(175, 191));
                yokoPoint.Add(new Point(1543, 38));
                yokoPoint.Add(new Point(1495, 68));
                yokoPoint.Add(new Point(11, 64));
                yokoPoint.Add(new Point(30, 36));
                yokoPoint.Add(new Point(32, 30));
                yokoPoint.Add(new Point(185, 196));
                yokoPoint.Add(new Point(185, 200));
                yokoPoint.Add(new Point(1502, 83));
                yokoPoint.Add(new Point(179, 196));
            }
            else if (yomi.Equals("Thailand") == true)
            {
                yokoPoint.Add(new Point(583, 414));
                yokoPoint.Add(new Point(573, 446));
            }

            else if (yomi.Equals("Malaysia") == true)
            {
                yokoPoint.Add(new Point(584, 464));
                yokoPoint.Add(new Point(635, 472));
            }

            else if (yomi.Equals("UnitedKingdom") == true)
            {
                yokoPoint.Add(new Point(126, 209));
                yokoPoint.Add(new Point(102, 201));
                yokoPoint.Add(new Point(103, 176));
            }

            else if (yomi.Equals("Ireland") == true)
            {
                yokoPoint.Add(new Point(96, 214));
                yokoPoint.Add(new Point(96, 201));
            }
            else if (yomi.Equals("UnitedStatesofAmerica") == true)
            {
                yokoPoint.Add(new Point(1268, 294));
                yokoPoint.Add(new Point(1065, 106));
                yokoPoint.Add(new Point(1130, 179));
                yokoPoint.Add(new Point(1144, 195));
                yokoPoint.Add(new Point(1051, 183));
                yokoPoint.Add(new Point(995, 161));
                yokoPoint.Add(new Point(979, 134));

                yokoPoint.Add(new Point(1005, 200));
                yokoPoint.Add(new Point(993, 208));
                yokoPoint.Add(new Point(985, 210));
                yokoPoint.Add(new Point(1055, 177));
            }
            else if (yomi.Equals("Indonesia") == true)
            {
                yokoPoint.Add(new Point(748, 498));
                yokoPoint.Add(new Point(723, 492));
                yokoPoint.Add(new Point(708, 498));
                yokoPoint.Add(new Point(686, 529));
                yokoPoint.Add(new Point(668, 493));
                yokoPoint.Add(new Point(644, 482));
                yokoPoint.Add(new Point(628, 517));
                yokoPoint.Add(new Point(591, 499));
                yokoPoint.Add(new Point(674, 481));
                yokoPoint.Add(new Point(667, 529));
                yokoPoint.Add(new Point(659, 523));
                yokoPoint.Add(new Point(671, 524));
                yokoPoint.Add(new Point(697, 500));
                yokoPoint.Add(new Point(603, 494));
                yokoPoint.Add(new Point(646, 523));
                yokoPoint.Add(new Point(652, 524));
                yokoPoint.Add(new Point(613, 497));
                yokoPoint.Add(new Point(703, 483));
                yokoPoint.Add(new Point(687, 493));
                yokoPoint.Add(new Point(688, 493));
                yokoPoint.Add(new Point(689, 493));
                yokoPoint.Add(new Point(567, 479));

            }
            else if (yomi.Equals("NewZealand") == true)
            {
                yokoPoint.Add(new Point(883, 706));
                yokoPoint.Add(new Point(916, 670));
                yokoPoint.Add(new Point(908, 655));
            }

            else if (yomi.Equals("Italy") == true)
            {
                yokoPoint.Add(new Point(173, 293));
                yokoPoint.Add(new Point(174, 282));
                yokoPoint.Add(new Point(176, 262));
                yokoPoint.Add(new Point(196, 305));
            }
            else if (yomi.Equals("Norway") == true)
            {
                yokoPoint.Add(new Point(238, 70));
                yokoPoint.Add(new Point(235, 59));
                yokoPoint.Add(new Point(202, 78));
                yokoPoint.Add(new Point(203, 82));
                yokoPoint.Add(new Point(211, 72));
            }
            else if (yomi.Equals("PeoplesRepublicofChina") == true)
            {
                yokoPoint.Add(new Point(612, 346));
                yokoPoint.Add(new Point(619, 400));
                yokoPoint.Add(new Point(639, 383));
                yokoPoint.Add(new Point(641, 383));
            }
            else if (yomi.Equals("Spain") == true)
            {
                yokoPoint.Add(new Point(114, 286));
                yokoPoint.Add(new Point(146, 296));
            }
            else if (yomi.Equals("Chile") == true)
            {
                yokoPoint.Add(new Point(1418, 752));
                yokoPoint.Add(new Point(1426, 762));
                yokoPoint.Add(new Point(1422, 768));
                yokoPoint.Add(new Point(1422, 768));
                yokoPoint.Add(new Point(1405, 694));
                yokoPoint.Add(new Point(1426, 762));
                yokoPoint.Add(new Point(1413, 669));
                yokoPoint.Add(new Point(1400, 726));
                yokoPoint.Add(new Point(1405, 688));
            }
            else if (yomi.Equals("Philippines") == true)
            {
                yokoPoint.Add(new Point(673, 408));
                yokoPoint.Add(new Point(689, 432));
                yokoPoint.Add(new Point(678, 435));
                yokoPoint.Add(new Point(679, 442));
                yokoPoint.Add(new Point(679, 423));
                yokoPoint.Add(new Point(672, 428));
                yokoPoint.Add(new Point(689, 451));
                yokoPoint.Add(new Point(686, 439));

                yokoPoint.Add(new Point(683, 431));
                yokoPoint.Add(new Point(678, 436));
                yokoPoint.Add(new Point(689, 438));
                yokoPoint.Add(new Point(685, 441));
                yokoPoint.Add(new Point(688, 436));
                yokoPoint.Add(new Point(687, 436));
            }
            else if (yomi.Equals("Azerbaijan") == true)
            {
                yokoPoint.Add(new Point(335, 298));
                yokoPoint.Add(new Point(351, 291));
                yokoPoint.Add(new Point(337, 299));
            }
            else if (yomi.Equals("Greece") == true)
            {
                yokoPoint.Add(new Point(233, 308));
                yokoPoint.Add(new Point(231, 297));
                yokoPoint.Add(new Point(241, 319));
                yokoPoint.Add(new Point(239, 318));
            }
            else if (yomi.Equals("Sweden") == true)
            {
                yokoPoint.Add(new Point(215, 181));
                yokoPoint.Add(new Point(205,135));
            }
            else if (yomi.Equals("Estonia") == true)
            {
                yokoPoint.Add(new Point(233, 174));
                yokoPoint.Add(new Point(247, 170));
            }
            else if (yomi.Equals("Argentina") == true)
            {
                yokoPoint.Add(new Point(1432, 767));
                yokoPoint.Add(new Point(1449, 644));
            }
            else if (yomi.Equals("SouthKorea") == true)
            {
                yokoPoint.Add(new Point(695, 329));
                yokoPoint.Add(new Point(703, 313));
            }
            else if (yomi.Equals("PapuaNewGuinea") == true)
            {
                yokoPoint.Add(new Point(799, 511));
                yokoPoint.Add(new Point(770, 511));
                yokoPoint.Add(new Point(823, 512));
            }
            else if (yomi.Equals("Ecuador") == true)
            {
                yokoPoint.Add(new Point(1383, 490));
            }
            else if (yomi.Equals("Israel") == true)
            {
                yokoPoint.Add(new Point(290, 331));
                yokoPoint.Add(new Point(289, 343));
            }

            else if (yomi.Equals("hokkaido") == true)
            {
                yokoPoint.Add(new Point(119, 57));
                yokoPoint.Add(new Point(24, 283));
                yokoPoint.Add(new Point(246, 232));
            }
            else if (yomi.Equals("okinawa") == true)
            {
                yokoPoint.Add(new Point(737, 541));
                yokoPoint.Add(new Point(439, 775));
                yokoPoint.Add(new Point(459, 769));
                yokoPoint.Add(new Point(660, 647));
            }
            else if (yomi.Equals("nagasaki") == true)
            {
                yokoPoint.Add(new Point(72, 509));
                yokoPoint.Add(new Point(35, 630));
                yokoPoint.Add(new Point(102, 613));
                yokoPoint.Add(new Point(63, 530));
                yokoPoint.Add(new Point(87, 531));
            }
            else if (yomi.Equals("kumamoto") == true)
            {
                yokoPoint.Add(new Point(110, 644));
                yokoPoint.Add(new Point(159, 649));
            }
            else if (yomi.Equals("kagoshima") == true)
            {
                yokoPoint.Add(new Point(131, 777));
                yokoPoint.Add(new Point(157, 764));
                yokoPoint.Add(new Point(134, 694));
            }
            else if (yomi.Equals("niigata") == true)
            {
                yokoPoint.Add(new Point(562, 270));
                yokoPoint.Add(new Point(599, 284));
            }
            else if (yomi.Equals("hyogo") == true)
            {
                yokoPoint.Add(new Point(365, 522));
                yokoPoint.Add(new Point(368, 473));
            }
            else if (yomi.Equals("shimane") == true)
            {
                yokoPoint.Add(new Point(284, 392));
                yokoPoint.Add(new Point(272, 465));
            }
            else if (yomi.Equals("Bangladesh") == true)
            {
                yokoPoint.Add(new Point(533, 376));
                yokoPoint.Add(new Point(544, 384));
            }

            else
            {
                yokoPoint.Add(new Point(point.X, point.Y));
            }
        }

        public static void AddMarkPoint(List<Point> markPoint, string yomi)
        {
            if (yomi.Equals("UnitedKingdom") == true)
            {
                markPoint.Add(new Point(1470, 748));
                markPoint.Add(new Point(1569, 765));
            }
            else if (yomi.Equals("UnitedStatesofAmerica") == true)
            {
                markPoint.Add(new Point(1041, 395));
                markPoint.Add(new Point(1439, 404));
            }
            else if (yomi.Equals("France") == true)
            {
                markPoint.Add(new Point(1497, 466));
                markPoint.Add(new Point(1080, 522));
                markPoint.Add(new Point(868, 582));
                markPoint.Add(new Point(383, 581));
                markPoint.Add(new Point(441, 734));
            }
            else if (yomi.Equals("Ecuador") == true)
            {
                markPoint.Add(new Point(1328, 489));
            }
            else if (yomi.Equals("Japan") == true)
            {
                markPoint.Add(new Point(702, 362));
            }

            return;
        }
    }
}