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

مشاهدة النسخة كاملة : سيستم غلق اللعبه اثناء مواقيت الصلاه من البوشى


محمد ياسر
2019-04-23, 03:23 PM
شرح النظام هو ان اللعبه تغلق 15 دقيقه اثناء مواقيت الصلاه وبعد انتهاء الـ 15 دقيقه اللعبه تشتغل لوحدها أؤتومتيك

ملحوظه فى صلاة الجمعه اللعبه بتقفل 30 دقيقه وبرضو بعد انتهاء الـ 30 دقيقه اللعبه تشتغل لوحدها أؤتومتيك

وعلشان مواقيت الصلاه مش ثابته لانها بتتغير مع الايام فعملت قاعده بيانات تحتوى على مواقيت الصلاه لسنه 2016 كامله

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

وأرجو عدم تغير حقوق الموضوع والله سبحانه وتعالى مطلع على كل شىء

نخش بقا على شرح الاضافة

هتخش فى Game وهتضيف فيه كلاس باسم
Mwa8ytAlslah.cs

وهتمسح كل الاكواد اللى جواه وهتضيف الاكواد دي
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ElbooshyProject.Client;
using ElbooshyProject.Database;

namespace ElbooshyProject.Game
{
class Mwa8ytAlslah
{
public static uint SlaatAlfgrHour = 0;
public static uint SlaatAlfgrMinute = 0;

public static uint SlaatAlzhrHour = 0;
public static uint SlaatAlzhrMinute = 0;

public static uint SlaatAl3srHour = 0;
public static uint SlaatAl3srMinute = 0;

public static uint SlaatAlmghrbHour = 0;
public static uint SlaatAlmghrbMinute = 0;

public static uint SlaatAl3shaHour = 0;
public static uint SlaatAl3shaMinute = 0;

public static DateTime LastSlah;
public static uint WaitingSlah;
public static bool SlahNow = false;

public static uint TimeHour(byte Hour)
{
byte hour = 0;
if (Hour == 1) hour = 13;
else if (Hour == 2) hour = 14;
else if (Hour == 3) hour = 15;
else if (Hour == 4) hour = 16;
else if (Hour == 5) hour = 17;
else if (Hour == 6) hour = 18;
else if (Hour == 7) hour = 19;
else if (Hour == 8) hour = 20;
else if (Hour == 9) hour = 21;
else if (Hour == 10) hour = 22;
else hour = Hour;
return hour;
}

public static void LoadMwa8ytAlslah()
{
DateTime Date = DateTime.Now;
MySqlCommand cmd = new MySqlCommand(MySqlCommandType.SELECT);
cmd.Select("Mwa8ytAlslah").Where("Month", Date.Month);
MySqlReader r = new MySqlReader(cmd);
while (r.Read())
{
if (r.ReadString("Day") == Date.Day.ToString())
{
#region Alfgr
{
string Alfgr = "";
Alfgr = r.ReadString("Alfgr");
string[] Alfgrs = Alfgr.Split(':');
SlaatAlfgrHour = Convert.ToByte(Alfgrs[0]);
SlaatAlfgrMinute = Convert.ToByte(Alfgrs[1]);
}
#endregion
#region Alzhr
{
string Alzhr = "";
Alzhr = r.ReadString("Alzhr");
string[] Alzhrs = Alzhr.Split(':');
SlaatAlzhrHour = TimeHour(Convert.ToByte(Alzhrs[0]));
SlaatAlzhrMinute = Convert.ToByte(Alzhrs[1]);
}
#endregion
#region Al3sr
{
string Al3sr = "";
Al3sr = r.ReadString("Al3sr");
string[] Al3srs = Al3sr.Split(':');
SlaatAl3srHour = TimeHour(Convert.ToByte(Al3srs[0]));
SlaatAl3srMinute = Convert.ToByte(Al3srs[1]);
}
#endregion
#region Almghrb
{
string Almghrb = "";
Almghrb = r.ReadString("Almghrb");
string[] Almghrbs = Almghrb.Split(':');
SlaatAlmghrbHour = TimeHour(Convert.ToByte(Almghrbs[0]));
SlaatAlmghrbMinute = Convert.ToByte(Almghrbs[1]);
}
#endregion
#region Al3sha
{
string Al3sha = "";
Al3sha = r.ReadString("Al3sha");
string[] Al3shas = Al3sha.Split(':');
SlaatAl3shaHour = TimeHour(Convert.ToByte(Al3shas[0]));
SlaatAl3shaMinute = Convert.ToByte(Al3shas[1]);
}
#endregion
}
r.Close();
r.Dispose();
}
Console.WriteLine("Mwa8ytAlslah Loaded.");
}

public static void Mwa8ytAlslahh(GameState client)
{
if (SlahNow)
{
client.Disconnect();
}
}

public static void ShutDownLSlah()
{
#region Mwa8ytAlslah
if (DateTime.Now.Hour == Mwa8ytAlslah.SlaatAlfgrHour && DateTime.Now.Minute == Mwa8ytAlslah.SlaatAlfgrMinute ||
DateTime.Now.Hour == Mwa8ytAlslah.SlaatAlzhrHour && DateTime.Now.Minute == Mwa8ytAlslah.SlaatAlzhrMinute ||
DateTime.Now.Hour == Mwa8ytAlslah.SlaatAl3srHour && DateTime.Now.Minute == Mwa8ytAlslah.SlaatAl3srMinute ||
DateTime.Now.Hour == Mwa8ytAlslah.SlaatAlmghrbHour && DateTime.Now.Minute == Mwa8ytAlslah.SlaatAlmghrbMinute ||
DateTime.Now.Hour == Mwa8ytAlslah.SlaatAl3shaHour && DateTime.Now.Minute == Mwa8ytAlslah.SlaatAl3shaMinute)
{
if (!SlahNow)
{
if (DateTime.Now.DayOfWeek == DayOfWeek.Friday && DateTime.Now.Hour == Mwa8ytAlslah.SlaatAlzhrHour && DateTime.Now.Minute == Mwa8ytAlslah.SlaatAlzhrMinute)
WaitingSlah = 30;
else
WaitingSlah = 15;
LastSlah = DateTime.Now;
SlahNow = true;
}
}
if (DateTime.Now > LastSlah.AddMinutes(WaitingSlah))
{
if (SlahNow) SlahNow = false;
}
if (DateTime.Now.Hour == 01 && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00)
LoadMwa8ytAlslah();
#endregion
}
}
}

وهتبحث فى ملف Program.cs أو فى ملف Server.cs على حسب سورسك على
Database.ArenaTable.Load();

هتضيف فوقيها على طول
Game.Mwa8ytAlslah.LoadMwa8ytAlslah();

وهتبحث فى ملف GeneralData.cs أو فى ملف PacketHandler.cs على حسب سورسك على
DoLogin(client);

هتضيف فوقيها على طول
if (Game.Mwa8ytAlslah.SlahNow)//Mwa8ytAlslah
{
client.Send(new Message("all3bh m'3l8h lada2 alslah 7awol ald5wol fyw8t la78", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
return;
}

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

وهتبحث فى ملف Thread.cs أو فى ملف World.cs.cs على حسب سورسك على
Game.Qualifier.Reset();

وهتضيف تحتو على طول
Game.Mwa8ytAlslah.ShutDownLSlah();

وهتبحث برضو فى نفس الملف على
if (client.Entity.HandleTiming)

وهتضيف تحت اول } يقابلك
#region Mwa8ytAlslah
Game.Mwa8ytAlslah.Mwa8ytAlslahh(client);
#endregion

وأخيراً هتحمل الملف ده وهتفك ضغطه هيطلعلك ملف بصيغة sql هترفعو على قاعدة البيانات
تحميل الملف (عفواً لايمكن عرض الروابط في الإرشيف)

ملحوظه اسم البروجيكت ElbooshyProject هتغيروه الى اسم البروجيكت بتاع السورس اللى هتضيفو فيه السيستم

وبكده الحمد لله اتنهت الاضافه

لا اريد منكم شكر ولا تقيم ولاكن اريد دعوه خالصه من قلبكم

وأريد من الله عز وجل ان يجعله فى ميزان حسناتى وفى ميزان حسنات كل من طبق هذا النظام فى سيرفره

في أمان الله وفي حفظ الرحمن

والسلام عليكم ورحمة الله وبركاته

osama
2019-08-02, 03:17 PM
عااااش

collins
2019-08-03, 05:27 AM
عاش

ALz3em
2019-08-08, 04:34 PM
عاش

xQuaresma
2019-08-29, 10:35 AM
عااش

R7Ma
2019-11-27, 05:35 PM
عاش جدا

uncelsam
2020-03-03, 10:56 PM
عاااش

so3da
2020-05-04, 10:37 AM
جميل

mohammedshafik
2023-05-25, 11:10 AM
thxxxx

محمود محمدm
2024-03-04, 02:47 PM
شكرا