sAw
05-31-2012, 10:00 PM
بسم الله الرحمن الرحيم
السلام عليكم ورحمه الله وبركاته
كما هو مكتوب بالموضوع بحمد الله
تم عمل الان بي سي الذي ينتظرهو الجميع
وده شرح خااص بي اعضاء كلام فور يو وبس
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــــــ ــــــــــــــــــ
الان بي سي لأي سورس أكبر من 5165
لان لغه البرمجه مختلفه في 5165 وطبعاً 5095
اسم الإن بي سي
The Charging
الشرح أولاً
عفواً لايمكن عرض الروابط في الإرشيف
علشان ميواجهناش مشاكل
هقول الي هتعملوه بالترتيب
أولاً
طبعاً هنفتح السورس بواسطه السي شارب
خش علي فولدر أو مجلد
Game
ثم ملف
Entity.cs
خدوا بالكوا مش EntityTable
في أي حته في الملف
هنحط الاكواد دي
كود:
public int Use = 0; public int CPS = 0; public string ChargeCode;
ثانياً
يستحسن تحميل ملف الداتا بيز
الرابط
عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف Fعفواً لايمكن عرض الروابط في الإرشيف hargeTable.html)
عفواً لايمكن عرض الروابط في الإرشيف
أو للي بيعرف يعمل New Class
الأكواد أهي
كود:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Conquer_Online_Server.Database { public class ChargeTable { public static void Load(Client.GameState client) { MySqlCommand cmd = new MySqlCommand(MySqlCommandType.SELECT); cmd.Select("charging").Where("UID", client.Account.EntityID); MySqlReader r = new MySqlReader(cmd); while (r.Read()) { client.Entity.ChargeCode = r.ReadString("ChargeCode"); client.Entity.Use = r.ReadInt16("Use"); client.Entity.CPS = r.ReadUInt16("CPS"); } } public static void Save(Client.GameState client) { MySqlCommand cmd = new MySqlCommand(MySqlCommandType.UPDATE); cmd.Update("charging") .Set("Use", client.Entity.Use) .Set("CPS", client.Entity.CPS) .Where("ChargeCode", client.Entity.ChargeCode) .And("UID", client.Account.EntityID) .Execute(); } } }
عفواً لايمكن عرض الروابط في الإرشيف
ثالثاً
هنفتح ملف EntityTable
موجود في فولدر DataBase في السي شارب
هنبحث عن
كود:
SkillTable.LoadProficiencies(client);
وهنحط دي تحتيها
كود:
ChargeTable.Load(client);
عفواً لايمكن عرض الروابط في الإرشيف
هنفتح ملف Program.cs
وهنبحث عن
كود:
Database.SkillTable.SaveSkills(client, conn);
هنلاقي اتنين منها حط تحت الاتنين ده
حط الكود ده تحتيه
كود:
Database.ChargeTable.Save(client);
عفواً لايمكن عرض الروابط في الإرشيف
وكده فاضل الإن بي سي
الإن بي سي طبعاً في السورس مش في فولدرات
اسم الملف
NPCS.cs
أو
Dialogs.cs
كود:
#region The Charging case 41: { switch (npcRequest.OptionID) { case 0: { dialog.Text("hello, if you know correct code, in other words > "); dialog.Text("if you have a PIN number, I will give you CPS, if you enter the error code I'll give you ban, you have 1 attempts..."); dialog.Input("Here:", 1, 15); dialog.Option("Give me information about that", 10); dialog.Send(); break; } case 1: { if (client.Entity.Use == 0) { string name = npcRequest.Input; { if (client.Entity.ChargeCode == name) { client.Entity.ConquerPoints = client.Entity.CPS ; client.Entity.Use = 1; dialog.Text("Cool, You received " + client.Entity.CPS + " CPS."); dialog.Option("Thank you.", 255); dialog.Send(); return; } } if (npcRequest.Input != "") { dialog.Text("You given me error code, So I will give you ban after 5 second.."); dialog.Option("I'm Sorry", 255); dialog.Send(); System.Threading.Thread.Sleep(5000); client.Disconnect(); } } else { dialog.Text("you already received CPS, Please don't try again if you give me error code I will give you ban, so I will give you ban after 5 second"); dialog.Option("I'm Sorry", 255); dialog.Send(); System.Threading.Thread.Sleep(5000); client.Disconnect(); } break; } case 2: { dialog.Text("if you want to charge cps tell the GM and he will give you a code PIN you will enter this code here I will give you value CPS"); dialog.Option("Understand, Thank you", 255); dialog.Send(); break; } } break; } #endregion
وكده فاضل الملف الي هييترفع في النافيكات
عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف Fعفواً لايمكن عرض الروابط في الإرشيف)
عفواً لايمكن عرض الروابط في الإرشيف
أخر شئ للي مش فاهم أنا رفعت كل حاجه + الشرح
الرابط
عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف Fعفواً لايمكن عرض الروابط في الإرشيف harging_NPCS.html)
شرح بسيط
أولاً علشان تدي لحد سبس هتخش علي قاعده البيانات
في ملف
Charging
الي رفعته في النافيكات
هتلاقي 4 خانات
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــــــ ــــــــــــــــــ
UID هتحط الأي دي بتاع الي عايز يشحن هتجيبه من ملف Accounts ID
تاني خانه هتحط الكود الي هتديه للي عايز يشحن معاك لحد 15 رقم أو حرف كله شغال
ChargeCode
ثالث خانه السبس هتديله كام سبس
CPS
رابع خانه أوعي تيجي جمبيها
الي هي
Use
دي عباره عن لو مفيهاش حاجه خالص أو فيها رقم صفر 0
يبقي هياخد السبس لسه
ولما ياخد السبس هتبقي 1
ولو هي واحد 1 مش هينفع ياخدها تاني
تقدر تحط 5000000000 أي دي في وقت واحد عادي
بس ميكونش متكرر
كده تمام وشرحت كل حاجه مش ناقص حاجه
بجد تعبت جداً في الان بي سي ده تعب شديد
فقط
أرجوا الدعاء لي ولوالدي
شكراً وتقبلوا وافر الإحترام
أرجوا عدم نقل الموضوع الي أي منتدي أخر دون الإذن
أخوكم في الله
السلام عليكم ورحمه الله وبركاته
كما هو مكتوب بالموضوع بحمد الله
تم عمل الان بي سي الذي ينتظرهو الجميع
وده شرح خااص بي اعضاء كلام فور يو وبس
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــــــ ــــــــــــــــــ
الان بي سي لأي سورس أكبر من 5165
لان لغه البرمجه مختلفه في 5165 وطبعاً 5095
اسم الإن بي سي
The Charging
الشرح أولاً
عفواً لايمكن عرض الروابط في الإرشيف
علشان ميواجهناش مشاكل
هقول الي هتعملوه بالترتيب
أولاً
طبعاً هنفتح السورس بواسطه السي شارب
خش علي فولدر أو مجلد
Game
ثم ملف
Entity.cs
خدوا بالكوا مش EntityTable
في أي حته في الملف
هنحط الاكواد دي
كود:
public int Use = 0; public int CPS = 0; public string ChargeCode;
ثانياً
يستحسن تحميل ملف الداتا بيز
الرابط
عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف Fعفواً لايمكن عرض الروابط في الإرشيف hargeTable.html)
عفواً لايمكن عرض الروابط في الإرشيف
أو للي بيعرف يعمل New Class
الأكواد أهي
كود:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Conquer_Online_Server.Database { public class ChargeTable { public static void Load(Client.GameState client) { MySqlCommand cmd = new MySqlCommand(MySqlCommandType.SELECT); cmd.Select("charging").Where("UID", client.Account.EntityID); MySqlReader r = new MySqlReader(cmd); while (r.Read()) { client.Entity.ChargeCode = r.ReadString("ChargeCode"); client.Entity.Use = r.ReadInt16("Use"); client.Entity.CPS = r.ReadUInt16("CPS"); } } public static void Save(Client.GameState client) { MySqlCommand cmd = new MySqlCommand(MySqlCommandType.UPDATE); cmd.Update("charging") .Set("Use", client.Entity.Use) .Set("CPS", client.Entity.CPS) .Where("ChargeCode", client.Entity.ChargeCode) .And("UID", client.Account.EntityID) .Execute(); } } }
عفواً لايمكن عرض الروابط في الإرشيف
ثالثاً
هنفتح ملف EntityTable
موجود في فولدر DataBase في السي شارب
هنبحث عن
كود:
SkillTable.LoadProficiencies(client);
وهنحط دي تحتيها
كود:
ChargeTable.Load(client);
عفواً لايمكن عرض الروابط في الإرشيف
هنفتح ملف Program.cs
وهنبحث عن
كود:
Database.SkillTable.SaveSkills(client, conn);
هنلاقي اتنين منها حط تحت الاتنين ده
حط الكود ده تحتيه
كود:
Database.ChargeTable.Save(client);
عفواً لايمكن عرض الروابط في الإرشيف
وكده فاضل الإن بي سي
الإن بي سي طبعاً في السورس مش في فولدرات
اسم الملف
NPCS.cs
أو
Dialogs.cs
كود:
#region The Charging case 41: { switch (npcRequest.OptionID) { case 0: { dialog.Text("hello, if you know correct code, in other words > "); dialog.Text("if you have a PIN number, I will give you CPS, if you enter the error code I'll give you ban, you have 1 attempts..."); dialog.Input("Here:", 1, 15); dialog.Option("Give me information about that", 10); dialog.Send(); break; } case 1: { if (client.Entity.Use == 0) { string name = npcRequest.Input; { if (client.Entity.ChargeCode == name) { client.Entity.ConquerPoints = client.Entity.CPS ; client.Entity.Use = 1; dialog.Text("Cool, You received " + client.Entity.CPS + " CPS."); dialog.Option("Thank you.", 255); dialog.Send(); return; } } if (npcRequest.Input != "") { dialog.Text("You given me error code, So I will give you ban after 5 second.."); dialog.Option("I'm Sorry", 255); dialog.Send(); System.Threading.Thread.Sleep(5000); client.Disconnect(); } } else { dialog.Text("you already received CPS, Please don't try again if you give me error code I will give you ban, so I will give you ban after 5 second"); dialog.Option("I'm Sorry", 255); dialog.Send(); System.Threading.Thread.Sleep(5000); client.Disconnect(); } break; } case 2: { dialog.Text("if you want to charge cps tell the GM and he will give you a code PIN you will enter this code here I will give you value CPS"); dialog.Option("Understand, Thank you", 255); dialog.Send(); break; } } break; } #endregion
وكده فاضل الملف الي هييترفع في النافيكات
عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف Fعفواً لايمكن عرض الروابط في الإرشيف)
عفواً لايمكن عرض الروابط في الإرشيف
أخر شئ للي مش فاهم أنا رفعت كل حاجه + الشرح
الرابط
عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف Fعفواً لايمكن عرض الروابط في الإرشيف harging_NPCS.html)
شرح بسيط
أولاً علشان تدي لحد سبس هتخش علي قاعده البيانات
في ملف
Charging
الي رفعته في النافيكات
هتلاقي 4 خانات
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــــــ ــــــــــــــــــ
UID هتحط الأي دي بتاع الي عايز يشحن هتجيبه من ملف Accounts ID
تاني خانه هتحط الكود الي هتديه للي عايز يشحن معاك لحد 15 رقم أو حرف كله شغال
ChargeCode
ثالث خانه السبس هتديله كام سبس
CPS
رابع خانه أوعي تيجي جمبيها
الي هي
Use
دي عباره عن لو مفيهاش حاجه خالص أو فيها رقم صفر 0
يبقي هياخد السبس لسه
ولما ياخد السبس هتبقي 1
ولو هي واحد 1 مش هينفع ياخدها تاني
تقدر تحط 5000000000 أي دي في وقت واحد عادي
بس ميكونش متكرر
كده تمام وشرحت كل حاجه مش ناقص حاجه
بجد تعبت جداً في الان بي سي ده تعب شديد
فقط
أرجوا الدعاء لي ولوالدي
شكراً وتقبلوا وافر الإحترام
أرجوا عدم نقل الموضوع الي أي منتدي أخر دون الإذن
أخوكم في الله