النافي كات!
INSERT INTO `npcs` VALUES ('87464', 'AgateSteed', '0000', '5864', '1006', '0021', '0033', '0000'); INSERT INTO `npcs` VALUES ('87465', 'RedSteed', '0000', '7644', '1006', '0025', '0033', '0000'); INSERT INTO `npcs` VALUES ('87466', 'TawnySteed', '0000', '7664', '1006', '0029', '0033', '0000'); INSERT INTO `npcs` VALUES ('8745', 'NightMare', '0000', '7630', '1006', '0024', '0022', '0000'); INSERT INTO `npcs` VALUES ('87462', 'Zebra', '0000', '5850', '1006', '0017', '0022', '0000'); INSERT INTO `npcs` VALUES ('9871', 'Blazehoof', '0000', '5844', '1006', '0017', '0033', '0000'); INSERT INTO `npcs` VALUES ('0765', 'BlackSteed', '0000', '7650', '1006', '0032', '0022', '0000'); INSERT INTO `monsterspawns` VALUES ('2997', '1016', '0055', '0055', '0089', '0089', '0003', '0060', '0003', '2997', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('2996', '1016', '0029', '0029', '0065', '0065', '0001', '0360', '0001', '2996', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('2392', '1013', '0026', '0026', '0065', '0065', '0030', '0001', '0030', '2392', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('2393', '1013', '0050', '0043', '0079', '0084', '0020', '0001', '0020', '2392', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('2394', '1013', '0050', '0043', '0079', '0084', '0002', '0060', '0002', '2997', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('2395', '1013', '0026', '0026', '0065', '0065', '0001', '0060', '0001', '2997', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('44446', '1013', '0050', '0043', '0079', '0084', '0001', '0360', '0001', '2996', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('4454', '1014', '0055', '0055', '0164', '0154', '0070', '0001', '0070', '2391', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('4453', '1014', '0055', '0055', '0164', '0154', '0005', '0060', '0005', '2997', '0000', '0000', '0000', '0000'); INSERT INTO `monsterspawns` VALUES ('4452', '1014', '0055', '0055', '0164', '0154', '0002', '0360', '0002', '2996', '0000', '0000', '0000', '0000'); INSERT INTO `npcs` VALUES ('5517', 'MountRetailer', '0001', '5836', '1006', '0019', '0029', '0000'); INSERT INTO `monsterinfos` VALUES ('2392', 'DesertThief', '0001', '0801', '10472', '00', '120', '0109', '0098', '0006', '0078', '0000', '0000', '0000', '0000', '0001', '0000', '0000', '0000', '0000', '0082', '3', '0000', '0000', '0001', '0000', '0000', '000', '000', '000', '000', '000', '000', '000', '0000', '0000', '0000', '0000', '0100', '0000', '10000', '00', '0', '0', '100', '0', '0', '0'); INSERT INTO `monsterinfos` VALUES ('2997', 'PlainsThief', '0001', '0601', '15864', '00', '120', '0109', '0098', '0006', '0078', '0000', '0000', '0000', '0000', '0001', '0000', '0000', '0000', '0000', '0089', '3', '0000', '0000', '0001', '0000', '0000', '000', '000', '000', '000', '000', '000', '000', '0000', '0000', '0000', '0000', '0100', '0000', '10000', '00', '0', '0', '100', '0', '0', '0'); INSERT INTO `monsterinfos` VALUES ('2391', 'ForestThief', '0001', '0401', '10697', '00', '120', '0109', '0098', '0006', '0078', '0000', '0000', '0000', '0000', '0001', '0000', '0000', '0000', '0000', '0082', '3', '0000', '0000', '0001', '0000', '0000', '000', '000', '000', '000', '000', '000', '000', '0000', '0000', '0000', '0000', '0100', '0000', '10000', '00', '0', '0', '100', '0', '0', '0'); INSERT INTO `monsterinfos` VALUES ('2390', 'CaveThief', '0001', '0201', '10432', '00', '120', '0109', '0098', '0006', '0078', '0000', '0000', '0000', '0000', '0001', '0000', '0000', '0000', '0000', '0082', '3', '0000', '0000', '0001', '0000', '0000', '000', '000', '000', '000', '000', '000', '000', '0000', '0000', '0000', '0000', '0100', '0000', '10000', '00', '0', '0', '100', '0', '0', '0'); INSERT INTO `monsterinfos` VALUES ('2996', 'ThiefLeader', '0001', '0241', '20459', '00', '120', '0109', '0098', '0006', '0078', '1000', '0000', '0000', '0000', '0003', '0000', '0003', '5000', '0000', '0000', '3', '0000', '0000', '0000', '0000', '0000', '000', '000', '000', '000', '000', '000', '000', '0000', '0000', '0000', '0000', '0100', '0000', '10000', '00', '0', '0', '0', '0', '0', '0'); INSERT INTO `npcs` VALUES ('5603', 'MountOfficer', '0002', '6224', '1006', '0038', '0034', '0000'); INSERT INTO `maps` VALUES ('1013', '1013', '8192', '0000'); INSERT INTO `maps` VALUES ('1014', '1014', '8192', '0000'); INSERT INTO `maps` VALUES ('1016', '1016', '8192', '0000');
السي شارب
#region Stables
#region MountOfficer
case 5603:
{
switch (npcRequest.OptionID)
{
case 0:
{
dialog.Text("What? A group of Cattle Thieves stole the Saddles of the cavalry! Without the Saddles, they won`t be able to hold any drills.");
dialog.Text("~If you can help get the Saddles from the Cattle Thieves, I just might give you a Steed as a reward!");
dialog.Option("Here~is~the~Saddle.", 1);
dialog.Option("Where~are~the~thieves?", 3);
dialog.Option("I~have~no~time.", 255);
dialog.Avatar(107);
dialog.Send();
break;
}
case 1:
{
if (client.Inventory.Contains(723903, 1))
{
dialog.Text("Great! You`ve brought back a Saddle from the Cattle Thieves! You can take a Steed as reward! Which one do you like?");
dialog.Option("Maroon~Steed", 4);
dialog.Option("White~Steed", 5);
dialog.Option("Black~Steed", 6);
dialog.Option("I`ll~think~about~it.", 255);
dialog.Avatar(107);
dialog.Send();
}
else
{
dialog.Text("You haven`t brought back a Saddle from the Cattle Thieves. What are you waiting on? Christmas? Get on it!");
dialog.Option("Where~are~the~thieves?", 3);
dialog.Option("I`ll~get~it~back~now!", 255);
dialog.Avatar(107);
dialog.Send();
}
break;
}
case 3:
{
dialog.Text("The Cattle Thieves stole Saddles and hid separately. I heard someone saw them in Kylin Cave, Dragon Pool, and Tiger Cave.");
dialog.Text("~They must be planning something... Find the Plains Thief or the Thief Leader to get some clues.");
dialog.Option("Okay,~I`ll~go~now.", 255);
dialog.Avatar(107);
break;
}
case 4:
{
dialog.Text("Each Saddle that you retrieved can be used to exchange for a Maroon Steed. Well, how many Saddles have you collected?");
dialog.Option("1~Saddle.", 7 * 4);
dialog.Option("5~Saddles.", 8 * 4);
dialog.Option("10~Saddles.", 9 * 4);
dialog.Option("20~Saddles.", 11 * 4);
dialog.Option("Let~me~see.", 255);
dialog.Avatar(107);
dialog.Send();
break;
}
case 5:
{
dialog.Text("Each Saddle that you retrieved can be used to exchange for a White Steed. Well, how many Saddles have you collected?");
dialog.Option("1~Saddle.", 7 * 5);
dialog.Option("5~Saddles.", 8 * 5);
dialog.Option("10~Saddles.", 9 * 5);
dialog.Option("20~Saddles.", 10 * 5);
dialog.Option("Let~me~see.", 255);
dialog.Avatar(107);
dialog.Send();
break;
}
case 6:
{
dialog.Text("Each Saddle that you retrieved can be used to exchange for a Black Steed. Well, how many Saddles have you collected?");
dialog.Option("1~Saddle.", 7 * 6);
dialog.Option("5~Saddles.", 8 * 6);
dialog.Option("10~Saddles.", 9 * 6);
dialog.Option("20~Saddles.", 10 * 6);
dialog.Option("Let~me~see.", 255);
dialog.Avatar(107);
dialog.Send();
break;
}
default:
{
switch (npcRequest.OptionID)
{
#region 1 Saddle
case 7 * 4:
case 7 * 5:
case 7 * 6:
{
if (client.Inventory.Contains(723903, 1))
{
if (client.Inventory.Count <= 39)
{
if (npcRequest.OptionID == 7 * 4)
{
client.Inventory.Add(723900, 0, 1);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~a~+0~Maroon~Steed~Pack!");
}
if (npcRequest.OptionID == 7 * 5)
{
client.Inventory.Add(723901, 0, 1);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~a~+0~White~Steed~Pack!");
}
if (npcRequest.OptionID == 7 * 6)
{
client.Inventory.Add(723902, 0, 1);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~a~+0~Black~Steed~Pack!");
}
client.Inventory.Remove(723903, 1);
}
else
{
client.MessageBox("You Inventory Is Full!");
}
}
else
{
client.MessageBox("You Don't Have Enough Saddles!");
}
break;
} #endregion
#region 5 Saddles
case 8 * 4:
case 8 * 5:
case 8 * 6:
{
if (client.Inventory.Contains(723903, 5))
{
if (client.Inventory.Count <= 35)
{
if (npcRequest.OptionID == 8 * 4)
{
client.Inventory.Add(723900, 0, 5);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~5~+0~Maroon~Steed~Pack!");
}
if (npcRequest.OptionID == 8 * 5)
{
client.Inventory.Add(723901, 0, 5);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~5~+0~White~Steed~Pack!");
}
if (npcRequest.OptionID == 8 * 6)
{
client.Inventory.Add(723902, 0, 5);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~5~+0~Black~Steed~Pack!");
}
client.Inventory.Remove(723903, 5);
}
else
{
client.MessageBox("You Inventory Is Full!");
}
}
else
{
client.MessageBox("You Don't Have Enough Saddles!");
}
break;
}
#endregion
#region 10 Saddles
case 9 * 4:
case 9 * 5:
case 9 * 6:
{
if (client.Inventory.Contains(723903, 10))
{
if (client.Inventory.Count <= 30)
{
if (npcRequest.OptionID == 9 * 4)
{
client.Inventory.Add(723900, 0, 10);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~5~+0~Maroon~Steed~Pack!");
}
if (npcRequest.OptionID == 9 * 5)
{
client.Inventory.Add(723901, 0, 10);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~5~+0~White~Steed~Pack!");
}
if (npcRequest.OptionID == 9 * 6)
{
client.Inventory.Add(723902, 0, 10);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~5~+0~Black~Steed~Pack!");
}
client.Inventory.Remove(723903, 10);
}
else
{
client.MessageBox("You Inventory Is Full!");
}
}
else
{
client.MessageBox("You Don't Have Enough Saddles!");
}
break;
}
#endregion
#region 20 Saddles
case 11 * 4:
case 10 * 5:
case 10 * 6:
{
if (client.Inventory.Contains(723903, 20))
{
if (client.Inventory.Count <= 20)
{
if (npcRequest.OptionID == 11 * 4)
{
client.Inventory.Add(723900, 0, 20);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~20~+0~Maroon~Steed~Pack!");
}
if (npcRequest.OptionID == 11 * 5)
{
client.Inventory.Add(723901, 0, 20);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~20~+0~White~Steed~Pack!");
}
if (npcRequest.OptionID == 11 * 6)
{
client.Inventory.Add(723902, 0, 20);
client.MessageBox("You`ve~brought~back~the~Saddle~and~swapped~it~for~20~+0~Black~Steed~Pack!");
}
client.Inventory.Remove(723903, 20);
}
else
{
client.MessageBox("You Inventory Is Full!");
}
}
else
{
client.MessageBox("You Don't Have Enough Saddles!");
}
break;
}
#endregion
}
break;
}
case 255:
{
break;
}
}
break;
}
#endregion
#endregion
if Dont Have these following items add them. if have skip this step
PacketHandler.cs
#region Misc
case 723900:
{
client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
ConquerItem _item = new ConquerItem(true);
_item.ID = 300000;
Database.ConquerItemInformation _iteminfos = new Database.ConquerItemInformation(_item.ID, 0);
_item.Durability = _item.MaximDurability = _iteminfos.BaseInformation.Durability;
_item.Plus = 0;
_item.Effect = Game.Enums.ItemEffect.Horse;
_item.SocketProgress = 150 << 8 | 255 << 16;
client.Inventory.Add(_item, Game.Enums.ItemUse.CreateAndAdd);
break;
}
case 723901:
{
client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
ConquerItem _item = new ConquerItem(true);
_item.ID = 300000;
Database.ConquerItemInformation _iteminfos = new Database.ConquerItemInformation(_item.ID, 0);
_item.Durability = _item.MaximDurability = _iteminfos.BaseInformation.Durability;
_item.Plus = 0;
_item.Effect = Game.Enums.ItemEffect.Horse;
_item.SocketProgress = 150 | 255 << 8;
client.Inventory.Add(_item, Game.Enums.ItemUse.CreateAndAdd);
break;
}
case 723902:
{
client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
ConquerItem _item = new ConquerItem(true);
_item.ID = 300000;
Database.ConquerItemInformation _iteminfos = new Database.ConquerItemInformation(_item.ID, 0);
_item.Durability = _item.MaximDurability = _iteminfos.BaseInformation.Durability;
_item.Plus = 0;
_item.Effect = Game.Enums.ItemEffect.Horse;
_item.SocketProgress = 255 | 150 << 16;
client.Inventory.Add(_item, Game.Enums.ItemUse.CreateAndAdd);
break;
}
MonsterTable.cs
Void Drop!
#region Saddle
if (Name == "PlainsThief")
{
if (killer.Owner.Inventory.Contains(723903, 5))
return;
if (Kernel.Rate(50))
{
var infoss = Database.ConquerItemInformation.BaseInformations[723903];
ushort XX = Owner.X, YY = Owner.Y;
Game.Map MMap = Kernel.Maps[Owner.MapID];
if (MMap.SelectCoordonates(ref XX, ref YY))
{
Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true);
floorItem.Item = new Network.GamePackets.ConquerItem(true);
floorItem.Item.Color = (CaptainJoe.Game.Enums.Color)Kernel.Random.Next(4, 8);
floorItem.Item.ID = 723903;
floorItem.Item.Plus = floorItem.Item.Plus;
floorItem.Item.MaximDurability = infoss.Durability;
floorItem.Item.Durability = infoss.Durability;
floorItem.Item.MobDropped = true;
floorItem.ValueType = Network.GamePackets.FloorItem.FloorValueType.Item;
floorItem.ItemID = 723903;
floorItem.MapID = Owner.MapID;
floorItem.MapObjType = Game.MapObjectType.Item;
floorItem.X = XX;
floorItem.Y = YY;
floorItem.Type = Network.GamePackets.FloorItem.Drop;
floorItem.OnFloor = Time32.Now;
floorItem.ItemColor = floorItem.Item.Color;
floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next;
while (MMap.Npcs.ContainsKey(floorItem.UID))
floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next;
MMap.AddFloorItem(floorItem);
SendScreenSpawn(floorItem);
}
}
}
if (Name == "ThiefLeader")
{
if (killer.Owner.Inventory.Contains(723903, 5))
return;
if (Kernel.Rate(100))
{
var infoss = Database.ConquerItemInformation.BaseInformations[723903];
ushort XX = Owner.X, YY = Owner.Y;
Game.Map MMap = Kernel.Maps[Owner.MapID];
if (MMap.SelectCoordonates(ref XX, ref YY))
{
Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true);
floorItem.Item = new Network.GamePackets.ConquerItem(true);
floorItem.Item.Color = (CaptainJoe.Game.Enums.Color)Kernel.Random.Next(4, 8);
floorItem.Item.ID = 723903;
floorItem.Item.Plus = floorItem.Item.Plus;
floorItem.Item.MaximDurability = infoss.Durability;
floorItem.Item.Durability = infoss.Durability;
floorItem.Item.MobDropped = true;
floorItem.ValueType = Network.GamePackets.FloorItem.FloorValueType.Item;
floorItem.ItemID = 723903;
floorItem.MapID = Owner.MapID;
floorItem.MapObjType = Game.MapObjectType.Item;
floorItem.X = XX;
floorItem.Y = YY;
floorItem.Type = Network.GamePackets.FloorItem.Drop;
floorItem.OnFloor = Time32.Now;
floorItem.ItemColor = floorItem.Item.Color;
floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next;
while (MMap.Npcs.ContainsKey(floorItem.UID))
floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next;
MMap.AddFloorItem(floorItem);
SendScreenSpawn(floorItem);
}
}
}
#endregion
صور :-
سلام