عرب كونكر تهيس | Conquer

عرب كونكر تهيس | Conquer (https://forum.vpscairo.com/index.php)
-   تطوير وشروحات وسورسات [5095] - Conquer Private Servers (https://forum.vpscairo.com/forumdisplay.php?f=67)
-   -   طريقة اضافة StudyPoints عشان السب كلاس لكلينت 5375 (https://forum.vpscairo.com/showthread.php?t=3971)

MARO 06-01-2012 07:37 PM

طريقة اضافة StudyPoints عشان السب كلاس لكلينت 5375
 
النهاردة انا جبت كيفية اضافة بوينتات الستدي Study Points

عشان الناس اللي عايزة تكمل السورس بتاعها في كلينت 5375

كل الشغل هايبقي في ملفيند وهم PacketHandler.cs و MonsterTable.cs

اول حاجة وان شاء الله هي اللي هايبقي فيها الشغل

هاندور على الكود ده


كود PHP:
client.AddSpell(new Spell(true) { ID = 1165 });


و هانطلع بره و هانلاقي break و endregion

نحط بعدها الكود ده


كود PHP:
#region StudyBooks
case 723340:
{
client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
client.Entity.SubClasses.StudyPoints += 5;
break;
}
case 723341:
{
client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
client.Entity.SubClasses.StudyPoints += 20;
break;
}
case 723342:
{
client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
client.Entity.SubClasses.StudyPoints += 500;
break;
}
#endregion


كده احنا ضفنا التعريفات بتاعة الكتب اللي بتدي البوينتات دي

ناقص حاجة
احنا عايزين نخلي الوحوش توقع الكتب دي
و طريقتها سهلة اوي
نفتح MonsterTable.cs

وندور على الكود ده


كود PHP:
if (Name == "SnowBanshee")


وحط الكود ده فوقيه علطول


كود PHP:
if (Game.Entity.ChanceSuccess(2.5))
{
byte times = (byte)ServerBase.Kernel.Random.Next(1, 3);
byte ref_times = (byte)ServerBase.Kernel.Random.Next(1, 6);
for (byte i = 0; i < times; i++)
{
uint Uid = 0;
byte type = (byte)ServerBase.Kernel.Random.Next(1, 21);
switch (type)
{
case 1: Uid = 723340; break;
case 2: Uid = 723340; break;
case 3: Uid = 723340; break;
}

if (Uid != 0)
{
ushort X = Owner.X, Y = Owner.Y;
Game.Map Map = ServerBase.Kernel.Maps[Owner.MapID];
if (Map.SelectCoordonates(ref X, ref Y))
{
Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true);
floorItem.Item = new Network.GamePackets.ConquerItem(true);
floorItem.Item.Color = (Conquer_Online_Server.Game.Enums.Color)ServerBase.Kernel.Random.Next(4, 8);
floorItem.Item.ID = Uid;
floorItem.Item.MaximDurability = floorItem.Item.Durability = 65535;
floorItem.Item.UID = Network.GamePackets.ConquerItem.ItemUID.Next;
floorItem.ValueType = Network.GamePackets.FloorItem.FloorValueType.Item;
floorItem.ItemID = Uid;
floorItem.MapID = Owner.MapID;
floorItem.MapObjType = Game.MapObjectType.Item;
floorItem.X = X;
floorItem.Y = Y;
floorItem.Type = Network.GamePackets.FloorItem.Drop;
floorItem.OnFloor = Time32.Now;
floorItem.ItemColor = floorItem.Item.Color;
floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next;
while (Map.Npcs.ContainsKey(floorItem.UID))
floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next;
Map.AddFloorItem(floorItem);
SendScreenSpawn(floorItem);
}
}
}
}


وكده الوحوش هاتوقع ثلاث انواع من الكتب
كتاب بيدي 5 بوينتات
كتاب بيدي 20 بوينت
و الاخير بيدي 500 بوينت

:cool:

وارجو التقييم

SIZE=5] [/SIZE]]


الساعة الآن 06:01 PM.

Powered by vpscairo
Copyright ©2013 - 2025, Jelsoft Enterprises Ltd
Translation by tamer
Copyright ©2000-2024,vpscairo.com