عرض مشاركة واحدة
احصائياتى

الردود
7

المشاهدات
7362
 
M.H.B[X-Coder]X

M.H.B[X-Coder]X is on a distinguished road

    غير متواجد

المشاركات
71

+التقييم
0.03

تاريخ التسجيل
Jun 2019

الاقامة

نظام التشغيل

رقم العضوية
252
2019-05-02, 01:52 PM
المشاركة 1 
#1  
Smile ازاي تعمل مهمة يوميه زي السيرفرات الكبيره


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


نبدا فالشرح

اول حاجا هتفتح كلاس GameState
هتبحث عن

كود:
          case "monsterpoints"

وتخيف تحت قفلة القوس

كود:
                        case "ramadanevent":
                            {
                                
client.Entity.ramadanevent ushort.Parse(Data[1]);

                                break;
                            } 

في كلا EntityTable
تحت

كود:
.Set("Money"e.Money

هتضيف

كود:
.Set("ramadanevent"e.ramadanevent

وفي نفس الكلاس هتبحث عن

كود:
client.Entity.killerpoints reader.ReadUInt32("killerpoints"); 

وتحدها او فوقيها تضيف

كود:
client.Entity.ramadanevent reader.ReadUInt32("ramadanevent"); 

وفي كلاس Entity
هتبحث عن

كود:
public uint StrResID

وتضيف تحتها

كود:
        public uint ramadanevent;
        public 
Time32 ramadaneventStamp

في كلاس World


كود:
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    //////////////////////////////////////////////////////////////رسترة الكوساتا اليوميه/////////////////////////////////////////////////////////////////////
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            #region  Restat server 1 [AM]
      /*    if (Now.Hour == 23 && Now.Minute == 55 && Now.Second <= 00)
            {
                Kernel.SendWorldMessage(new Real_Conquer.Network.GamePackets.MsgTalk("The server will be brought down for maintenance in 5 minute, Please exit the game now.", System.Drawing.Color.Orange, 2011), Server.GamePool);
                Console.WriteLine("Warrning !!! Server Will Restart Aftr 5 Minutes get Ready !!");
            }
            if (Now.Hour == 23 && Now.Minute == 56 && Now.Second <= 00)
            {
                Kernel.SendWorldMessage(new Real_Conquer.Network.GamePackets.MsgTalk("The server will be brought down for maintenance in 4 minute, Please exit the game now.", System.Drawing.Color.Orange, 2011), Server.GamePool);
            }
            if (Now.Hour == 23 && Now.Minute == 57 && Now.Second <= 00)
            {
                Kernel.SendWorldMessage(new Real_Conquer.Network.GamePackets.MsgTalk("The server will be brought down for maintenance in 3 minute, Please exit the game now.", System.Drawing.Color.Orange, 2011), Server.GamePool);

      */    
}
            if (
Now.Hour == 23 && Now.Minute == 58 && Now.Second <= 00)
            {
                
Kernel.SendWorldMessage(new Real_Conquer.Network.GamePackets.MsgTalk("The server will be brought down for maintenance in 2 minute, Please exit the game now."System.Drawing.Color.Orange2011), Server.GamePool);

            }
            if (
Now.Hour == 23 && Now.Minute == 59 && Now.Second <= 00)
            {
                
Kernel.SendWorldMessage(new Real_Conquer.Network.GamePackets.MsgTalk("The server will be brought down for maintenance in 1 minute, Please exit the game now."System.Drawing.Color.Orange2011), Server.GamePool);

            }
            if (
Now.Hour == 23 && Now.Minute == 59 && Now.Second <= 30)
            {
                
Kernel.SendWorldMessage(new Real_Conquer.Network.GamePackets.MsgTalk("The server will be brought down for maintenance in 30 Second, Please exit the game now."System.Drawing.Color.Orange2011), Server.GamePool);
                
Server.CommandsAI("@test");
            }
            if (
Now.Hour == 00 && Now.Minute == 00 && Now.Second <= 00)
            {
                
Server.CommandsAI("@restart");
            }
            
#endregion
            #region NobilityReset
            
DateTime Now64 DateTime.Now;
                if (
Now64.Hour == 23 && Now64.Minute == 59 && Now64.Second == 57)
                {
                    
using (var sel = new MySqlCommand(MySqlCommandType.SELECT).Select("entities"))
                    
using (var reader sel.CreateReader())
                    {
                        while (
reader.Read())
                        {
                            
using (var upd = new MySqlCommand(MySqlCommandType.UPDATE).Update("entities"))
                                
upd.Set("ramadanevent"reader.ReadUInt64("0")).Where("entityuid"reader.ReadUInt32("EntityUID"))
                                    .
Execute();
                        }
                    }

                    
Server.CommandsAI("@save");
                }
            
#endregion
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /////////////////////////////////////////////////////////////انتهاء رسترة الكوساتا اليوميه//////////////////////////////////////////////////////////////////
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

تمام خلصنا من السورس
نتجه للنفي كات
هتجي في ملف entities
وتعملو تعديل زي كدا

وتضيف دا

كود:
ramadanevent    bigint    36    0    -1    0    0    0    0        0                    0    0 

او تعملو زي ما فالصوره

كدا السيستم خلص بس افهمك بقا ازاي تفعلو علي الكوسته
هتيجي في اول الان بي سي بتاع الكويسته وتحط حلة if دي

كود:
if (client.Entity.ramadanevent == 0

تمام وتحط انت الرساله ال عيزها بقا لو حالة if متحققتش
بعد متحط الرساله والحاله هتجي عن اكواد الجيزه ال بيستلمها الاعب ازا كانت سبس او اي حاجا تاني
وتضيف دا

كود:
client.Entity.ramadanevent += 1


تمام كدا خلصنا الاضافه ولو عايز تعمل كوسته تنيه بتكرر الاكواد مع تغير اسم الكوسته ال هو هنا ramadanevent