المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : ازاى تعمل ايتم ( شنطه ) بتدى ايتمات لسيرفرك


محمد ياسر
2019-05-30, 09:46 PM
السلام عليكم ورحمه الله وبركاته
دلوقتى انا هعمل موضوع .. فكرته بسيطه جدا جدا جدا جدا جدا جدا جد من هنا لحد السويس :D
علشان حبايب قلبى بس :mad::mad:
الموضوع
الواحد ساعات بيكون عايز يعمل حاجه جديده فى سيرفره
ومش لاقى فكره كويسه
انا عملت فكره حلوه
انت ممكن تعمل شنطه زى بتاعت كونكر العاديه
وممكن احسن منها كمان :confused:
انت وشطارتك وتفكيرك بقى :cool:
الشنط فى السيرفر حسب تصنيفى 5 انواع
1 - شنطه بتديك ايتم وتختفى على طول
2 - شنطه متسلسله بتديك ايتم مع زياده الليفل
3 - شنطه مشروطه .. بتديك ايتم لو فى اى بى 6 مثلا .. او مثلا لو كنت كينج .. او لو كنت بى ام .. فى حاجات كتيييييييييييييير ممكن تعملها على فكره
كله بســــحر ال CODE :rolleyes:
4 - شنطه بتاعت كويستات .. ودى متقدمه شويه .. وبيبقى فيها نظام الراندوم Random .. ودى ممكن تعمل بيها ديمون بوكس جديد وحاجات كتيييييييييييره حلوه
5 - شنطه بتاعت حروب .. والشنطه دى زى الاولى بس بتعمل check فى الاول انت اللى كسبت الحرب او لأ ..
ملحوظه : كل الناس اللى بتعمل شنط اسطفات او ان بى سى اسطفات بتجرى على داله checkcommand2 .. وانا بتضايق لما الاقى كده بجد :( .. انت ممكن تضيف اكواد adding جديده فى inventory.cs .. وتعمل بيها الاسطفات اللى انت عايزها
بدل ماتفضل تخليه يبعت مسدجات للسيرفر .. وتبقى شغلانه :D
هنزل شرح لكل ده ان شاء الله .
بس حاليا فى الموضوع ده ;)
هنتكلم عن الاول علشان هو الاساس .. :confused:
دلوقتى فى اضافات هبله وبسيطه فى الاول ..
انا هعمل شنطه مثلا ... هنشرح فيها اساسيات مهمه .. وانت ممكن تعمل كل حاجه انت عايزها على فكره
بس انا بفضل انت تعملك region فى constants.cs .. وتثبتلك فيها شويه رسايل سيستم علشان هتحتاجهم بدل ماتوجع دماغك كل شويه ( ده لو هتعمل شنطه متسلسله او شنطه حروب ) .. وكله وتفكيرك انت على فكره :confused
خلينا فى موضوعنا
دلوقتى نختار dds للايتم وهتركبه فى الكلينت فى الاول ..
طبعا لازم تعرف ان حضرتك شغلك فى الكلينت هيكون على :
فى فولدر ani

ItemMinIcon


MapItemIcon

فى فولدر ini


ItemType.dat


وفى السورس .. كل اللى هتعمله انك هتحط الكود اللى حطيته فى ItemType.dat فى المسار ده


database\items.txt


-----
انا اخترت شكل ايتم جديد مش موجود فى كونكر :confused: .. وطبعا اديته الاى دى ده 7230091
انت ممكن على فكره تغير الاى دى .. بشرط انه مايكونش موجود قبل كده فى itemtype .. وكمان تسمى اسم الــ dds بالاى دى ده
المهم ..
حملو الشكل من هنا

تحميل الملف (عفواً لايمكن عرض الروابط في الإرشيف)

بعد ما حضرتك تحمل ;)
هتاخد الملف ده
وتعمله كوبى
وتحطه باست مره هنا :
ItemMinIcon
ومره هنا
MapItemIcon
الملفين دول في فلدر date
وهتدخل على الملف ده
ani / ItemMinIcon.ani
وتنزل فى اخره وتحط دول :
[Item7230091]
FrameAmount=1
Frame0=data/ItemMinIcon/7230091.dds


تمام لحد كده ؟ ;)
وبعدين هتخش فى ملف :
ani \ MapItemIcon.ani
وتنزل فى اخره برضو وتحط دول :
[7230091]
FrameAmount=1
Frame0=data/MapItemIcon/7230091.dds

تمام كده ؟ ..
كده احنا ضفنا الشنطه .. شكل بس فى الكلينت .. بس لسه فاضل خطوه مهمه :)

ItemType.dat
items.txt
هتدخل على الكلينت الاول
فى فولدر ini
ملف itemtype.dat
بعد ما تفك تشفيره طبعا باى برنامج ايتم تايب والناس عارفه الكلام ده طبعا :D
وهتضيف الكود ده :
7230091@@Xor~Custom~Bag@@0@@0@@0@@0@@0@@0@@0@@0@@9 @@0@@0@@5200500@@0@@0@@0@@0@@0@@0@@0@@1@@1@@0@@0@@ 0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@100000@@0@@0@@ 0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@[Item]@@Xor~Bag~Open~and~get~rare~Item~xD@@5@@0@@0@@0@@0 @@500@@

وتدخل فى السورس
database \ items.txt
وتضيف الكود ده برضو تحت خالص فى الملف :rolleyes:
كده كله تمام ..
كده خلصنا الشغل السهل :confused:
الجزء بتاع السى شارب بقى :D
هتدخل على packethandler.cs
وتدور على الداله دى :
void UseItem

( الكلام ده للسورسات مفتوحه المصدر .. مش بتاعت كيمو المفكوكه :D )
انا فى الشنطه اللى بعملها دى
هخليه يدى للناس الفى اى بى 6 ايتمات بس مقيده ;)
هتضيف ده تحت الداله اللى قولنا عليها :)
#region Xor Bag # 1
case 7230091:
{

if (client.Inventory.Count < 25)
{
if (client.Entity.VIPLevel == 6)
{
client.Inventory.AddBound(722057, 0, 10); //PoweExpBall [Xor]
client.Inventory.AddBound(1200002, 0, 5); //PrayingStoneLarge [Xor]
client.Entity.BConquerPoints += 1000000;
client.Send(new Message("You have got 10 PowerExp Balls , PrayingStone and 1kk Bound Cps ! Say Thanks To Xor :)", System.Drawing.Color.Red, Message.MsgSystem));
client.Inventory.Remove(item, ShekoProject.Game.Enums.ItemUse.Remove);
}
else
{
client.Send(new Message("you must be VIP leve 6 .. To be able to open this Bag !", System.Drawing.Color.Red, Message.MsgSystem));

}
}
else
client.Send(new Message("You need 15 Free Spaces in your Inventory !.", System.Drawing.Color.Red, Message.TopLeft));

break;
}
#endregion


بعدها هتدخل على ملف
inventory.cs
وهتضيف الكود ده :
public bool AddBound(uint id, byte plus, byte times)
{
try
{
Database.ConquerItemInformation infos = new Database.ConquerItemInformation(id, plus);
while (times > 0)
{
if (Count <= 39)
{
Interfaces.IConquerItem item = new Network.GamePackets.ConquerItem(true);
item.ID = id;
item.Plus = plus;
item.Durability = item.MaximDurability = infos.BaseInformation.Durability;
item.Bound = true;
Add(item, Enums.ItemUse.CreateAndAdd);
}
else
{
return false;
}
times--;
}
}
catch (Exception e)
{
Program.SaveException(e);
}
return true;
}

كده احنا خليناها تديهم 10 باور اكسبول و 5 برينج ستون كبير .. بس مقيدين :D:D
اتمنى يكون حد استفاد يا رجاله ..
انت ممكن بقى تحطها فى شوب .. فى ان بى سى .. جايزه لكويسته .. اللى تحبه يا معلم :confused:
رجاء بس للناس اللى بتعمل كوبى باست ... بص فى الكود .. حاول تفهمه حتى قبل ماتركبه :D

عادل اكسور

Mero
2019-05-30, 09:50 PM
تسلم يا حازم موضوع جميل للناس ال عايزة تبدا من الاول وعيزة تتعلم هيفدها جدا

ALz3em
2019-05-31, 01:04 AM
تسلم موضوع أكتر من مميز

Lucifer
2020-05-11, 08:36 PM
.

عمر23
2021-12-07, 09:22 PM
عاش

mohammedshafik
2023-05-27, 10:12 AM
thxxxx

Mafin06
2023-05-27, 09:19 PM
عاش

youssef12345
2023-06-05, 12:47 AM
ty

medohalawa
2024-02-14, 02:30 AM
عاااااااااااااش

youniis
2024-04-25, 09:59 PM
teslm

ahmedfathy
2024-04-27, 06:45 PM
الله ينور