منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   تطوير سيرفرات كونكر (https://code.vpscairo.com/forumdisplay.php?f=11)
-   -   سستم شحن كروت الشحن داخل الجيم (https://code.vpscairo.com/showthread.php?t=4428)

محمد ياسر 2020-04-16 12:15 AM

سستم شحن كروت الشحن داخل الجيم
 



السلام عليكم ورحمة الله وبركاته
اعود اليكم منذ سنتين بفكره جديده:D
انا سايب مجال السي شارب ليه سنتين بس لما فكرت افتح لعبه قولت لازم ابداء اراجع الاكواد من تاني فعملتلكم حاجه بسيطه كده فكره صغيرها بس ناس كتير محتجاها
انبي سي بيشحن كروت الشحن جواها اللعبه ومش اي انبي سي
ده ممكن يشحنلك اكتر من عرض في كرت واحد علي حسب مانت تحط في العرض ده
يلا نبداء بعد كده نشرح

في كلاس npc.cs
كود PHP:

#region Charge card System 
                    //code.vpscairo.com
                    //  code by  Hazem , Rider , Rayzo,HassanEmprator:)
                
case 3001215:
                    {
                        switch (
npcRequest.OptionID)
                        {
                            case 
0:
                                {
                                    
dialog.Text("Welcome to the shop using card. Do you want to user card TQ?");
                                    
dialog.Option("use card"102);
                                    
dialog.Option("Not now."255);
                                    
dialog.Avatar(175);
                                    
dialog.Send();
                                    break;
                                }
                           
                           
                            case 
102:
                                try
                                {
                                    
string Numberofcard;
                                    
Numberofcard npcRequest.Input;
                                    
client.Numberofcard Numberofcard;
                                    
dialog.Text("Please insert Card Number.");
                                    
dialog.Input("Here:"10814);
                                    
dialog.Option("No."110);
                                    
dialog.Send();
                                    break;
                                }
                                catch
                                {
                                    
dialog.Text("Please write the correct value.");
                                    
dialog.Option("Try Again."106);
                                    
dialog.Option("Quit."110);
                                    
dialog.Send();
                                }
                                break;
                            
//////////////////////////////////////////  
                            
case 108:
                                try
                                {
                                    
string Numberofcard;
                                    
Numberofcard npcRequest.Input;
                                    
client.Numberofcard Numberofcard;
                                    if (
Numberofcard == client.Numberofcard)
                                    {
                                        
dialog.Text("enter the password card number");
                                        
dialog.Input("Here:"109100);
                                        
dialog.Option("No."10);
                                    }
                                    else
                                    {
                                        
dialog.Text("Wrong Code.");
                                        
dialog.Option("Alright."10);
                                    }
                                    
dialog.Send();
                                    break;
                                }
                                catch
                                {
                                    
dialog.Text("Please write the correct value.");
                                    
dialog.Option("Try Again."7);
                                    
dialog.Option("Quit."0xff);
                                    
dialog.Send();
                                }
                                break;
                            
//////////////////////////////////////////  
                            
case 109:
                                {
                                    
string Numberofitem;
                                    
Numberofitem npcRequest.Input;
                                    
client.Numberofitem Numberofitem;
                                    
string str2 client.Socket.IP.ToString().Split(new char[] { ':' })[0].ToString();
                                    
client.Account.IP str2;

                                   
                                    
using (var reader = new MySqlReader(new MySqlCommand(MySqlCommandType.SELECT).Select("cards").Where("card"client.Numberofcard)))
                                    {

                                        if (
reader.Read())
                                        {

                                            if (
client.Numberofitem == "" reader.ReadUInt32("pass") + "")
                                            {

                                                if (
reader.ReadUInt32("uses") == 0)
                                                {

                                                    
using (var items = new MySqlReader(new MySqlCommand(MySqlCommandType.SELECT).Select("item_card").Where("id_order"reader.ReadString("id"))))
                                                    {
                                                        if (
client.Inventory.Count 40 reader.ReadUInt32("items"))
                                                        {
                                                        
dialog.Text("Congratulations, the card was successfully shipped and received");
                                                        while (
items.Read())
                                                        {
                                                            if (
items.ReadUInt32("uses") == 0)
                                                            {


                                                               

                                                                    if (
items.ReadString("type") == "entities")
                                                                    {
                                                                        if (
items.ReadString("name") == "ConquerPoints"client.Entity.ConquerPoints += items.ReadUInt32("item");
                                                                        if (
items.ReadString("name") == "Level"client.Entity.Level items.ReadByte("item");
                                                                        if (
items.ReadString("name") == "Money"client.Entity.Money += items.ReadUInt32("item");
                                                                        if (
items.ReadString("name") == "VIPLevel"client.Entity.VIPLevel items.ReadByte("item");
                                                                        if (
items.ReadString("name") == "Domino"client.Entity.Domino items.ReadByte("item");
                                                                        
dialog.Option("You Get  [ " items.ReadString("item") + " ] " items.ReadString("name") + " ");


                                                                    }
                                                                    else if (
items.ReadString("type") == "items")
                                                                    {
                                                                        
client.Inventory.Add(items.ReadUInt32("item"), 01);
                                                                        
dialog.Option("You Get item [ " items.ReadString("name") + " ]");
                                                                    }

                                                                    
client.Send(new NpcReply(NpcReply.MessageBox"The card was successfully shipped"));
                                                                    new 
Database.MySqlCommand(Database.MySqlCommandType.Update).Update("cards").Set("uses"1).Set("user"client.Entity.Name).Set("uid"client.Entity.UID).Where("card"client.Numberofcard).Execute();
                                                                    new 
Database.MySqlCommand(Database.MySqlCommandType.Update).Update("item_card").Set("uses"1).Set("user"client.Entity.Name).Set("uid"client.Entity.UID).Where("id_order"reader.ReadString("id")).Execute();
                                                            }
                                                        }

                                                        } else
                                                        {
                                                            
dialog.Text("You need to [ " reader.ReadUInt32("items") + " ] In the bag to complete charging the card");
                                                        }
                                                       
                                                    }
                                                  
                                                   
                                                }
                                                else
                                                {
                                                    
dialog.Text("This card has already been used");
                                                }
                                            }
                                            else {
                                                
dialog.Text("Card data mistake, please make sure the card data is correct");
                                            }
                                        }
                                        else
                                        {
                                            
dialog.Text("You entered an error data. Please try again later");
                                        }
                                    }

                                   
                                    
client.Numberofcard "";
                                    
client.Numberofitem "";
                                   
                                    
dialog.Option("Team code."255);
                                    
dialog.Send();
                                 
                                    break;
                                }
                        }
                        break;
                    }
                
#endregion 




GameState.cs

كود PHP:

        public string Numberofcard;
        public 
string Numberofitem

ارفع دول لقاعده البيانات
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

صور للسستم

عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

شرج السستم
بص ياسيدي انت لما ترفع القاعده الي في الملف لقاعده الجيم ايطلع عندك ملفيهم هما
cards : ده مسئول عن الكارت من رقم الكارت وكلمة سر الكارت
item_card : ده مسئول عن الاغراض الي جوها الكارت ياعني الكارت ايشحن ايه وكده

طيب علي سبيل المثال

عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

ده مثال كارت انت اتعمله علي ايدك طبعا مش عامل ليه صفحه ولا حاجه ده مجرد تجربه اوليه لكن انا رابطه في صفحه لعبه بكل حاجه وده مش موضوعنا ندخل علي المهم
شايف ال id الي عامل عليه مربع احمر ده منطقة اللعبه
مهم صف items تحط فيهم رقم الايتمات لاحظ معايا الايتمات ياعني items مش entities علشان الانبي سي يعرف محتاج كام خانه فاضيه علشان الكارت يشحن
وعلشان نربط ايتم بالكارت نروح لجدول item_card ونشوف المثال ده
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

في الصوره في المربع الاحمر اتلاحظ ان رقم ال id_order هو رقم id بتاع الكارت الي احنا عملنها
وصف item ده الكميه ياعني لو عايز تدي للاعب مليون سي بي اتكتب مليون 1000000 كده اما لو ايتم انت اتكتب رقم الايتم فقط لاغير
وصف type ده نوع الغرض لو عايزه يدي سي بي او جولد او في اي بي او لفل او ديمنو اتخليه entities لو عايز تخليه ايتم تخليه items
وصف name ده اسم الغرض وده مهم بنستعمله فقط في entities لو كان سي بي او ...... وتحط فيه واحد من الاربع دول العب الاساسي عليهم
كود PHP:

ConquerPoints
Level
Money
VIPLevel
Domino 


اظن الكل عارف ايه هو كل كود الاول لسي بي والتاني للفل والتالت لجولد والرابع للفي اي بي والخامس لديمو
طيب لو عايز احط غرضين في الكارت سهله ياباشا اعمل سطر جديد واربط برقم الكارت وعيش انت بقا اهم حاجه رقم id لكارت
وبعد ما الكارت يتشحن ميشحن تاني هي مره وبس
وزياده امان الشحن لو الكارت فيه 10 ايتمات والاعب مفيش في الحقيبه 11 خانه فاضيه الكارت مش ايشحن غير لما يفضي شوية من الحقيبه علشان مفيش حاجه تروح منه
والي مش فاهم يقول وانا اعيد من تاني

رمضان مبارك عليكم كلكم

Hassan Emprator 2020-04-16 12:19 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
انا مش فاهم حاجه اصلا هه

ElSaher 2020-04-16 12:40 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
عليه الطلاق ما فاهم حااااااااااااااااااااااااجاااااااااااااا

SourceDanger 2020-04-16 12:57 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
3a4 ya a7la Mohamed

محمودمحمدسالم 2020-04-16 03:27 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
عاش بجد تسلم ايدك ده بيسجل الكروت بس صح

midoazoz 2020-04-16 04:10 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
اقولك ع حاجه احسن
تعمل ان بي سي يسجل رقم الكارت والحاجه الي هو عاوزها واي رساله ويبعتها ع ال Gmail بتاع الجي ام
وفي طرق يبعت فيس وفي طرق بيبعت Sms بس بتشريلها رسايل طبعا ^_^ انا عملت بتاعت الجميل بس لاحظت حاجه مش كويسه حصل لاج 5 ثواني كده مش عارف بس هيكون ع الكل ولا عند الي بيبعت بس فطنشت الحوار

محمد ياسر 2020-04-16 08:27 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
اقتباس:

المشاركة الأصلية كتبت بواسطة محمودمحمدسالم (المشاركة 37481)
عاش بجد تسلم ايدك ده بيسجل الكروت بس صح

ده بيشحن كارت الشحن

محمد ياسر 2020-04-16 08:29 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
اقتباس:

المشاركة الأصلية كتبت بواسطة midoazoz (المشاركة 37484)
اقولك ع حاجه احسن
تعمل ان بي سي يسجل رقم الكارت والحاجه الي هو عاوزها واي رساله ويبعتها ع ال gmail بتاع الجي ام
وفي طرق يبعت فيس وفي طرق بيبعت sms بس بتشريلها رسايل طبعا ^_^ انا عملت بتاعت الجميل بس لاحظت حاجه مش كويسه حصل لاج 5 ثواني كده مش عارف بس هيكون ع الكل ولا عند الي بيبعت بس فطنشت الحوار

الجميل بياخد وقت لحد مايبعت الرساله ذي علي الصفحه كده فالاج ايكون علي لللعبه كله

محمد ياسر 2020-04-16 08:53 AM

رد: سستم شحن كروت الشحن داخل الجيم
 
اقتباس:

المشاركة الأصلية كتبت بواسطة elsaher (المشاركة 37453)
عليه الطلاق ما فاهم حااااااااااااااااااااااااجاااااااااااااا

ياسيدي ده سستم شحن كروت الشحن في الجيم بدل ماكان شحن الكرت علي الموقع وده يقدر يشحن اكتر من حاجه في كارت واحد فهمت

ALz3em 2020-04-16 06:22 PM

رد: سستم شحن كروت الشحن داخل الجيم
 
عاش تسلم ايدك أستمر


الساعة الآن 02:10 AM

مرحبا بكم في منتدي اكواد لتطوير الالعاب