[Help] Steed Plus NPC

07/05/2010 13:00 nestreys#1
Code:
#region Steed Plus Officer NPC
                            case 9881:
                                {
                                    if (option == 0)
                                    {
                                        GC.AddSend(Packets.NPCSay("I can put a plus on your steed for a saddle. Do you want it?"));
                                        GC.AddSend(Packets.NPCLink("Yes. Please.", 12));
                                        GC.AddSend(Packets.NPCLink("No. Thanks.", 255));
                                        GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                        GC.AddSend(Packets.NPCFinish());
                                        GC.Agreed = false;
                                    }

                                    else if (option == 12)
                                    {
                                        
                                        //  GC.MyChar.Equips.Necklace.Bless = 1;
                                        Game.Item I = GC.MyChar.Equips.Get((byte)(option));

                                        I.ID = 300000;


                                        if (I.Plus != 12)
                                        {
                                            byte SaddleNeed = 0;
                                            if (I.Plus == 0)
                                                SaddleNeed = 1;
                                            else if (I.Plus == 1)
                                                SaddleNeed = 1;
                                            else if (I.Plus == 2)
                                                SaddleNeed = 1;
                                            else if (I.Plus == 3)
                                                SaddleNeed = 1;
                                            else if (I.Plus == 4)
                                                SaddleNeed = 1;
                                            else if (I.Plus == 5)
                                                SaddleNeed = 1;
                                            else if (I.Plus == 6)
                                                SaddleNeed = 7;
                                            else if (I.Plus == 7)
                                                SaddleNeed = 8;
                                            else if (I.Plus == 8)
                                                SaddleNeed = 9;
                                            else if (I.Plus == 9)
                                                SaddleNeed = 10;
                                            else if (I.Plus == 10)
                                                SaddleNeed = 11;
                                            else if (I.Plus == 11)
                                                SaddleNeed = 12;


                                            if (!GC.Agreed)
                                            {
                                                GC.AddSend(Packets.NPCSay("You need " + SaddleNeed + " saddle to upgrade. Do you want it?"));
                                                GC.AddSend(Packets.NPCSay("Your steed current plus is " + I.Plus + "."));
                                                if (I.Plus != 0)
                                                    GC.AddSend(Packets.NPCSay("It will become " + (I.Plus + 1) + "."));
                                                GC.AddSend(Packets.NPCLink("Yes. Please.", option));
                                                GC.AddSend(Packets.NPCLink("Nevermind.", 255));
                                                GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                GC.AddSend(Packets.NPCFinish());
                                                GC.Agreed = true;
                                            }
                                            else
                                            {
                                                GC.Agreed = false;
                                                if (GC.MyChar.InventoryContains(723903, SaddleNeed, GC))
                                                {
                                                    GC.MyChar.EquipStats((byte)(option), false);
                                                    for (byte i = 0; i < SaddleNeed; i++)
                                                        GC.MyChar.RemoveItem(723903, 1, GC);
                                                        //GC.MyChar.RemoveItem(GC.MyChar.NextItem(723903));
                                                    if (I.Plus == 0)
                                                        I.Plus = 1;
                                                    else
                                                        I.Plus += 1;
                                                    GC.MyChar.Equips.Replace((byte)(option), I, GC.MyChar);
                                                    GC.MyChar.EquipStats((byte)(option), true);

                                                    GC.AddSend(Packets.NPCSay("It's done."));
                                                    GC.AddSend(Packets.NPCLink("Thanks.", 255));
                                                    GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                    GC.AddSend(Packets.NPCFinish());
                                                }
                                                else
                                                {
                                                    GC.AddSend(Packets.NPCSay("You don't have enough saddles."));
                                                    GC.AddSend(Packets.NPCLink("I see.", 255));
                                                    GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                    GC.AddSend(Packets.NPCFinish());
                                                }
                                            }
                                        }
                                        else
                                        {
                                            GC.AddSend(Packets.NPCSay("You cannot upgrade steed which is already at the maximum."));
                                            GC.AddSend(Packets.NPCLink("I see.", 255));
                                            GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                            GC.AddSend(Packets.NPCFinish());
                                        }
                                    }
                                    break;
                                }
                            #endregion
Hello. Can someone please revised this code.. because in this code it will continue to upgrade even though i didn't equip the steed. All I want is to put an else if on it but dont have any idea how to do it.. I want it in the code that the NPC will not upgrade the steed if its not equip. Thanks.
07/06/2010 03:50 Macnoo#2
for if
Code:
 
Game.Item I = GC.MyChar.Equips.Steed;
if (I.ID != 0)
{
then for else

Code:
}
else
{
GC.AddSend(Packets.NPCSay("You don't have steed equipped."));
GC.AddSend(Packets.NPCLink("Ok sorry.", 255));
GC.AddSend(Packets.NPCSetFace(N.Avatar));
GC.AddSend(Packets.NPCFinish());
}
07/06/2010 06:56 -Shunsui-#3
Code:
#region Steed Plus Officer NPC
                            case 9881:
                                {
                                    if (option == 0)
                                    {
                                        GC.AddSend(Packets.NPCSay("I can put a plus on your steed for a saddle. Do you want it?"));
                                        GC.AddSend(Packets.NPCLink("Yes. Please.", 12));
                                        GC.AddSend(Packets.NPCLink("No. Thanks.", 255));
                                        GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                        GC.AddSend(Packets.NPCFinish());
                                        GC.Agreed = false;
                                    }

                                    else if (option == 12)
                                    {
                                        Game.Item I = GC.MyChar.Equips.Get((byte)(option));
                                        if (I.ID != 0)
                                        {
                                            //  GC.MyChar.Equips.Necklace.Bless = 1;
                                            I.ID = 300000;


                                            if (I.Plus != 12)
                                            {
                                                byte SaddleNeed = 0;
                                                if (I.Plus == 0)
                                                    SaddleNeed = 1;
                                                else if (I.Plus == 1)
                                                    SaddleNeed = 1;
                                                else if (I.Plus == 2)
                                                    SaddleNeed = 1;
                                                else if (I.Plus == 3)
                                                    SaddleNeed = 1;
                                                else if (I.Plus == 4)
                                                    SaddleNeed = 1;
                                                else if (I.Plus == 5)
                                                    SaddleNeed = 1;
                                                else if (I.Plus == 6)
                                                    SaddleNeed = 7;
                                                else if (I.Plus == 7)
                                                    SaddleNeed = 8;
                                                else if (I.Plus == 8)
                                                    SaddleNeed = 9;
                                                else if (I.Plus == 9)
                                                    SaddleNeed = 10;
                                                else if (I.Plus == 10)
                                                    SaddleNeed = 11;
                                                else if (I.Plus == 11)
                                                    SaddleNeed = 12;


                                                if (!GC.Agreed)
                                                {
                                                    GC.AddSend(Packets.NPCSay("You need " + SaddleNeed + " saddle to upgrade. Do you want it?"));
                                                    GC.AddSend(Packets.NPCSay("Your steed current plus is " + I.Plus + "."));
                                                    if (I.Plus != 0)
                                                        GC.AddSend(Packets.NPCSay("It will become " + (I.Plus + 1) + "."));
                                                    GC.AddSend(Packets.NPCLink("Yes. Please.", option));
                                                    GC.AddSend(Packets.NPCLink("Nevermind.", 255));
                                                    GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                    GC.AddSend(Packets.NPCFinish());
                                                    GC.Agreed = true;
                                                }
                                                else
                                                {
                                                    GC.Agreed = false;
                                                    if (GC.MyChar.InventoryContains(723903, SaddleNeed, GC))
                                                    {
                                                        GC.MyChar.EquipStats((byte)(option), false);
                                                        for (byte i = 0; i < SaddleNeed; i++)
                                                            GC.MyChar.RemoveItem(723903, 1, GC);
                                                        //GC.MyChar.RemoveItem(GC.MyChar.NextItem(723903));
                                                        if (I.Plus == 0)
                                                            I.Plus = 1;
                                                        else
                                                            I.Plus += 1;
                                                        GC.MyChar.Equips.Replace((byte)(option), I, GC.MyChar);
                                                        GC.MyChar.EquipStats((byte)(option), true);

                                                        GC.AddSend(Packets.NPCSay("It's done."));
                                                        GC.AddSend(Packets.NPCLink("Thanks.", 255));
                                                        GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                        GC.AddSend(Packets.NPCFinish());
                                                    }
                                                    else
                                                    {
                                                        GC.AddSend(Packets.NPCSay("You don't have enough saddles."));
                                                        GC.AddSend(Packets.NPCLink("I see.", 255));
                                                        GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                        GC.AddSend(Packets.NPCFinish());
                                                    }
                                                }
                                            }
                                            else
                                            {
                                                GC.AddSend(Packets.NPCSay("You cannot upgrade steed which is already at the maximum."));
                                                GC.AddSend(Packets.NPCLink("I see.", 255));
                                                GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                                GC.AddSend(Packets.NPCFinish());
                                            }
                                        }
                                        else
                                        {
                                            GC.AddSend(Packets.NPCSay("You do not have the steed equiped"));
                                            GC.AddSend(Packets.NPCLink("I see.", 255));
                                            GC.AddSend(Packets.NPCSetFace(N.Avatar));
                                            GC.AddSend(Packets.NPCFinish());
                                        }
                                    }
                                    break;
                                }
                            #endregion