示例#1
0
        void OnFaceOperationChosen(Character talker, NpcEventArgs args)
        {
            if (args.Selection == 0)
            {
                int fco = talker.FaceColorOffset;

                switch (talker.Gender)
                {
                case Gender.Male:
                    ShowStyleRequestDialog(talker, "Please choose a facial style.", new NpcEventHandler(OnFaceChosen),
                                           20000 + fco, 20001 + fco, 20002 + fco, 20003 + fco, 20004 + fco, 20005 + fco,
                                           20006 + fco, 20007 + fco, 20008 + fco, 20009 + fco, 20010 + fco, 20011 + fco,
                                           20012 + fco, 20013 + fco, 20014 + fco, 20016 + fco, 20017 + fco, 20018 + fco,
                                           20019 + fco, 20020 + fco, 20021 + fco, 20022 + fco, 20023 + fco, 20024 + fco,
                                           20026 + fco);
                    break;

                case Gender.Female:
                    ShowStyleRequestDialog(talker, "Please choose a facial style.", new NpcEventHandler(OnFaceChosen),
                                           21000 + fco, 21001 + fco, 21002 + fco, 21003 + fco, 21004 + fco, 21005 + fco,
                                           21006 + fco, 21007 + fco, 21008 + fco, 21009 + fco, 21010 + fco, 21011 + fco,
                                           21012 + fco, 21013 + fco, 21014 + fco, 21016 + fco, 21017 + fco, 21018 + fco,
                                           21019 + fco, 21020 + fco, 21021 + fco, 21022 + fco, 21024 + fco, 21025 + fco);
                    break;
                }
            }
            else if (args.Selection == 1)
            {
                int fso = talker.FaceStyleOffset;

                ShowStyleRequestDialog(talker, "Please choose a face color.", new NpcEventHandler(OnFaceChosen),
                                       fso + 0, fso + 100, fso + 200, fso + 300, fso + 400, fso + 500, fso + 600, fso + 700, fso + 800);
            }
        }
示例#2
0
        public override void Converse(Character talker, NpcEventArgs args)
        {
            if (talker.IsMaster)
            {
                bool advanced = talker.Job == Job.SuperGM;

                foreach (int loopWizetItem in ChannelData.CachedItems.WizetItemIDs)
                {
                    if (!talker.Items.Contains(loopWizetItem))
                    {
                        advanced = false;
                    }
                }

                if (advanced)
                {
                    ShowOkDialog(talker, "You have already fully advanced to #bGameMaster#k.");
                }
                else
                {
                    if (talker.Job != Job.SuperGM)
                    {
                        talker.Job = Job.SuperGM;
                    }

                    talker.MaxHP     = talker.MaxMP = 10000;
                    talker.CurrentHP = talker.CurrentMP = 10000;

                    foreach (int loopWizetItem in ChannelData.CachedItems.WizetItemIDs)
                    {
                        if (!talker.Items.Contains(loopWizetItem))
                        {
                            talker.Items.Add(new Item(loopWizetItem));
                        }
                    }

                    foreach (Item loopItem in talker.Items)
                    {
                        foreach (int loopWizetItem in ChannelData.CachedItems.WizetItemIDs)
                        {
                            if (loopItem.MapleID == loopWizetItem)
                            {
                                loopItem.Equip();
                            }
                        }
                    }

                    ShowOkDialog(talker, "You have been successfully advanced as a #bGameMaster#k.");
                }
            }
            else
            {
                ShowYesNoDialog(talker, "You seem lost. Do you want to be warped out of here?", new NpcEventHandler(OnYesWarpOut));
            }
        }
示例#3
0
        void Converse2(Character talker, NpcEventArgs args)
        {
            string text = @"I am collecting #bBlue Snail Shells#k.
							#i4000000#

							Bring me #r20#k of them. If you lie, I #rkill you#k.

							Do you have them?"                            ;

            ShowYesNoDialog(talker, text, new NpcEventHandler(ClickYes), new NpcEventHandler(ClickNo));
        }
示例#4
0
 public override void Converse(Character talker, NpcEventArgs args)
 {
     if (talker.IsMaster)
     {
         ShowChoiceDialog(talker, "Please select a style category.", new NpcEventHandler(OnCategoryChosen), 0, 0, "Hair", "Face", "Skin");
     }
     else
     {
         ShowYesNoDialog(talker, "You seem lost. Do you want to be warped out of here?", new NpcEventHandler(OnYesWarpOut));
     }
 }
示例#5
0
        void OnHairOperationChosen(Character talker, NpcEventArgs args)
        {
            if (args.Selection == 0)
            {
                int hco = talker.HairColorOffset;

                switch (talker.Gender)
                {
                case Gender.Male:
                    ShowStyleRequestDialog(talker, "Please choose a hair style.", new NpcEventHandler(OnHairChosen),
                                           30000 + hco, 30010 + hco, 30020 + hco, 30030 + hco, 30040 + hco, 30050 + hco,
                                           30060 + hco, 30070 + hco, 30080 + hco, 30090 + hco, 30110 + hco, 30120 + hco,
                                           30130 + hco, 30140 + hco, 30150 + hco, 30160 + hco, 30170 + hco, 30180 + hco,
                                           30190 + hco, 30200 + hco, 30210 + hco, 30220 + hco, 30230 + hco, 30240 + hco,
                                           30250 + hco, 30260 + hco, 30270 + hco, 30280 + hco, 30290 + hco, 30300 + hco,
                                           30310 + hco, 30320 + hco, 30330 + hco, 30340 + hco, 30350 + hco, 30360 + hco,
                                           30370 + hco, 30400 + hco, 30410 + hco, 30420 + hco, 30440 + hco, 30450 + hco,
                                           30460 + hco, 30470 + hco, 30480 + hco, 30490 + hco, 30510 + hco, 30520 + hco,
                                           30530 + hco, 30540 + hco, 30550 + hco, 30560 + hco, 30570 + hco, 30580 + hco,
                                           30590 + hco, 30600 + hco, 30610 + hco, 30620 + hco, 30630 + hco, 30640 + hco,
                                           30650 + hco, 30660 + hco, 30670 + hco, 30680 + hco, 30690 + hco, 30700 + hco,
                                           30710 + hco, 30720 + hco, 30730 + hco, 30740 + hco, 30750 + hco, 30760 + hco,
                                           30770 + hco, 30780 + hco, 30790 + hco, 30800 + hco, 30810 + hco, 30820 + hco,
                                           30840 + hco);
                    break;

                case Gender.Female:
                    ShowStyleRequestDialog(talker, "Please choose a hair style.", new NpcEventHandler(OnHairChosen),
                                           31000 + hco, 31010 + hco, 31020 + hco, 31030 + hco, 31040 + hco, 31050 + hco,
                                           31060 + hco, 31070 + hco, 31080 + hco, 31090 + hco, 31100 + hco, 31110 + hco,
                                           31120 + hco, 31130 + hco, 31140 + hco, 31150 + hco, 31160 + hco, 31170 + hco,
                                           31180 + hco, 31190 + hco, 31200 + hco, 31210 + hco, 31220 + hco, 31230 + hco,
                                           31240 + hco, 31250 + hco, 31260 + hco, 31270 + hco, 31280 + hco, 31290 + hco,
                                           31300 + hco, 31310 + hco, 31320 + hco, 31330 + hco, 31340 + hco, 31350 + hco,
                                           31400 + hco, 31410 + hco, 31420 + hco, 31440 + hco, 31450 + hco, 31460 + hco,
                                           31470 + hco, 31480 + hco, 31490 + hco, 31510 + hco, 31520 + hco, 31530 + hco,
                                           31540 + hco, 31550 + hco, 31560 + hco, 31570 + hco, 31580 + hco, 31590 + hco,
                                           31600 + hco, 31610 + hco, 31620 + hco, 31630 + hco, 31640 + hco, 31650 + hco,
                                           31670 + hco, 31680 + hco, 31690 + hco, 31700 + hco, 31710 + hco, 31720 + hco,
                                           31730 + hco, 31740 + hco, 31750 + hco, 31760 + hco, 31770 + hco, 31780 + hco,
                                           31790 + hco, 31800 + hco, 31810 + hco);
                    break;
                }
            }
            else if (args.Selection == 1)
            {
                int hso = talker.HairStyleOffset;

                ShowStyleRequestDialog(talker, "Please choose a hair color.", new NpcEventHandler(OnHairChosen),
                                       hso + 0, hso + 1, hso + 2, hso + 3, hso + 4, hso + 5, hso + 6, hso + 7);
            }
        }
示例#6
0
        void ClickYes(Character talker, NpcEventArgs args)
        {
            if (talker.Items.Contains(4000000, 20))
            {
                talker.Items.Remove(4000000, 20);

                ShowNumberRequestDialog(talker, "Thank you so much! How many potions do you want?", new NpcEventHandler(Reward), 20, 10, 100);
            }
            else
            {
                ShowOkDialog(talker, "You lied. Prepare to die.", new NpcEventHandler(KillCharacter));
            }
        }
示例#7
0
        void Selection(Character talker, NpcEventArgs args)
        {
            switch (args.Selection)
            {
            case 0:
                talker.ChangeMap(100000000);
                break;

            case 1:
                talker.ChangeMap(101000000);
                break;
            }
        }
示例#8
0
 public override void Converse(Character talker, NpcEventArgs args)
 {
     if (!talker.Quests.Started.ContainsKey(talker.LastQuest.ID)) //Start
     {
         ShowYesNoDialog(talker, "Do you want to start the quest?", new NpcEventHandler(ClickYes));
     }
     else // End
     {
         if (!talker.Items.Contains(2010007))
         {
             talker.GainExperience(10, true);
             talker.Items.Add(new Item(2010000, 3));
             talker.Items.Add(new Item(2010009, 3));
             talker.Quests.Finish(talker.LastQuest, 0);
         }
     }
 }
示例#9
0
        void OnCategoryChosen(Character talker, NpcEventArgs args)
        {
            switch (args.Selection)
            {
            case 0:
                ShowChoiceDialog(talker, "Please select a hair operation.", new NpcEventHandler(OnHairOperationChosen), 0, 0, "Style", "Color");
                break;

            case 1:
                ShowChoiceDialog(talker, "Please select a face operation.", new NpcEventHandler(OnFaceOperationChosen), 0, 0, "Style", "Color");
                break;

            case 2:
                ShowStyleRequestDialog(talker, "Please choose a skin color.", new NpcEventHandler(OnSkinChosen), 0, 1, 2, 3, 4, 5, 9, 10);
                break;
            }
        }
示例#10
0
 void Converse3(Character talker, NpcEventArgs args)
 {
     ShowChoiceDialog(talker, "Whatever. Wanna travel?", new NpcEventHandler(Selection), 0, 0, "Henesys", "Ellinia");
 }
示例#11
0
 void Converse2(Character talker, NpcEventArgs args)
 {
     ShowNextPreviousDialog(talker, "I must be...", new NpcEventHandler(Converse3), new NpcEventHandler(Converse));
 }
示例#12
0
 public override void Converse(Character talker, NpcEventArgs args)
 {
     ShowNextDialog(talker, "Omg, am I Mia? ...", new NpcEventHandler(Converse2));
 }
示例#13
0
 void ClickYes(Character talker, NpcEventArgs args)
 {
     talker.CurrentHP = 25;
     talker.Items.Add(new Item(2010007), true);
     talker.Quests.Start(talker.LastQuest, this.MapleID);
 }
示例#14
0
 void KillCharacter(Character talker, NpcEventArgs args)
 {
     talker.CurrentHP -= talker.CurrentHP;
 }
示例#15
0
 void OnHairChosen(Character talker, NpcEventArgs args)
 {
     talker.Hair = args.Selection;
 }
示例#16
0
 void OnFaceChosen(Character talker, NpcEventArgs args)
 {
     talker.Face = args.Selection;
 }
示例#17
0
 void OnSkinChosen(Character talker, NpcEventArgs args)
 {
     talker.Skin = (byte)args.Selection;
 }
示例#18
0
 public override void Converse(Character talker, NpcEventArgs args)
 {
     ShowNextDialog(talker, "Hi, please press next.", new NpcEventHandler(Converse2));
 }
示例#19
0
 public override void Converse(Character talker, NpcEventArgs args)
 {
 }
示例#20
0
        void Reward(Character talker, NpcEventArgs args)
        {
            talker.Items.Add(new Item(2000000, (short)args.Selection));

            talker.GainExperience(200 * ChannelServer.ExperienceRate, true);
        }
示例#21
0
 void OnYesWarpOut(Character talker, NpcEventArgs args)
 {
     talker.ChangeMap(100000000);
 }
示例#22
0
 void ClickNo(Character talker, NpcEventArgs args)
 {
     ShowOkDialog(talker, "You suck, bitch.");
 }