منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   تطوير سيرفرات كونكر (https://code.vpscairo.com/forumdisplay.php?f=11)
-   -   ادي للاعب بان ماك :MacAddress (https://code.vpscairo.com/showthread.php?t=1363)

Commander 2019-08-05 01:56 AM

ادي للاعب بان ماك :MacAddress
 
بسم الله الرحمن الرحيم
اولا انا هكرر كلمتي قبل كدا الماك ادرس مهم جدا من حيث انك لو عايز تدي بان لواحد واديتو بان اي بي بيغير الاي بي في ثواني وبيفتح ويغلبك طب ما تديلو بان ماك
قبل ما تنفذ الموضوع دا لازم تكون منفئ الموضوع الي منزلو قبل كدا
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
نبتدي بقي الاضافه
اول حاجه هتعمل كلاس جديد وترزع فيه ده وتغير اسم البروجكت متنساش
كود PHP:

using ResidentEvil.Clientusing ResidentEvil.Databaseusing Systemusing System.Collections.Genericusing System.Linqusing System.Textusing System.Threading.Tasks; namespace ResidentEvil.Database { public class MacBan { public string mac; public static Dictionary<intstringBannedMac; public static void Load() { BannedMac = new Dictionary<intstring>(); using (var cmd = new MySqlCommand(MySqlCommandType.SELECT).Select("bann edMac")) using (var reader = new MySqlReader(cmd)) { if (reader.Read()) { int asInt reader.ReadInt32("Mac_int"); BannedMac.Add(asInt reader.ReadString("Mac")); } } } public static bool IsBanned(string Mac) { return BannedMac.ContainsKey(Mac.GetHashCode()); } public static void Unban(string Mac) { BannedMac.Remove(Mac.GetHashCode()); using (var cmd = new MySqlCommand(MySqlCommandType.DELETE)) cmd.Delete("bannedMac""Mac_int"Mac.GetHashCode()).Execute(); } public static void Ban(string Mac) { BannedMac.Add(Mac.GetHashCode() , Mac); using (var cmd = new MySqlCommand(MySqlCommandType.SELECT).Select("bann edMac")) using (var reader = new MySqlReader(cmd)) { if (!reader.Read()) using (var cmds = new MySqlCommand(MySqlCommandType.INSERT)) cmds.Insert("bannedMac").Insert("Mac_int"Mac.GetHashCode()).Insert("Mac"Mac).Execute(); } } } } 


بعد كدا نروح نحط اللود في كلاس بروجرام
كود:

  Database.MacBan.Load();
بعد كدا نروح نعمل الشفره
نروح كلاس باكت هاندلر ونبحث عن
كود:

case "ban":
ونحط فوقيها
كود:

  case "banmac":
                                {
                                    string bannedMac = "";
                                    foreach (var Client in Program.Values)
                                    {
                                        if (Client.Account.State >= client.Account.State)
                                            continue;
                                        if (Client.Entity.LoweredName.Contains(Data[1]))
                                        {
                                            bannedMac = Client.Account.MacAddress;
                                            Client.Account.State = Database.AccountTable.AccountState.Banned;
                                            Client.Account.SaveState();
                                            Database.MacBan.Ban(Client.Account.MacAddress);
                                            Client.Disconnect();
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("[Name " + Client.Entity.Name + "]", System.Drawing.Color.Gold, GamePackets.Message.FirstRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("Username: " + Client.Account.Username, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("Password: " + Client.Account.Password, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("IP: " + Client.Account.IP, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("Mac: " + Client.Account.MacAddress, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("CPs: " + Client.Entity.ConquerPoints, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("Money: " + Client.Entity.Money, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner));
                                            client.Send(new ResidentEvil.Network.GamePackets.Message("Map: [" + Client.Entity.MapID + "] " + Client.Entity.X + "," + Client.Entity.Y, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner));
                                            break;
                                        }
                                    }
                                    if (bannedMac == "")
                                        Kernel.SendWorldMessage(new Message(client.Account.State.ToString() + " " + client.Entity.Name + " has banned the Mac: " + bannedMac, GamePackets.Message.Center));
                                    foreach (var Client in Program.Values)
                                    {
                                        if (Client.Account.State >= client.Account.State)
                                            continue;
                                        if (Client.Account.MacAddress == bannedMac)
                                        {
                                            Client.Account.State = Database.AccountTable.AccountState.Banned;
                                            Client.Account.SaveState();
                                            Client.Disconnect();
                                        }
                                    }
                                    break;
                                }
                            case "unbanmac":
                                {
                                    Database.MacBan.Unban(Data[1]);
                                    break;
                                }


بعد كدا برده في الباكت هاندلر هنبحث عن
كود:

void AppendConnect
وننزل لحد هنا
كود:

if (Account.State == Database.AccountTable.AccountState.Banned)
نضيف فوقيه ده
كود:

  if (ResidentEvil.Database.MacBan.IsBanned(client.Account.MacAddress))
                    {
                        DateTime banStamp = client["banstamp"];
                        banStamp = banStamp.AddHours(client["banhours"]);
                        Message = "^_^ You are Have ban mac ^_^";
                    }

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

Hassan Emprator 2019-08-05 02:01 AM

رد: ادي للاعب بان ماك :MacAddress
 
عاش الله ينور

Hassan Emprator 2019-08-05 02:02 AM

رد: ادي للاعب بان ماك :MacAddress
 
حلو امعلم

Commander 2019-08-05 02:14 AM

رد: ادي للاعب بان ماك :MacAddress
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hassan Emprator (المشاركة 9830)
حلو امعلم

حبيبي يمعلم

ALz3em 2019-08-05 03:17 AM

رد: ادي للاعب بان ماك :MacAddress
 
عاش استمر

Rider 2019-08-05 02:43 PM

رد: ادي للاعب بان ماك :MacAddress
 
عاش

MohamedModyAdel 2019-09-25 09:59 PM

رد: ادي للاعب بان ماك :MacAddress
 
عاش

MohamedModyAdel 2019-09-25 10:06 PM

رد: ادي للاعب بان ماك :MacAddress
 
ياريت تظبط الموضوع الكلاس سطر واحد
using ResidentEvil.Client; using ResidentEvil.Database; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ResidentEvil.Database { public class MacBan { public string mac; public static Dictionary<int, string> BannedMac; public static void Load() { BannedMac = new Dictionary<int, string>(); using (var cmd = new MySqlCommand(MySqlCommandType.SELECT).Select("bann edMac")) using (var reader = new MySqlReader(cmd)) { if (reader.Read()) { int asInt = reader.ReadInt32("Mac_int"); BannedMac.Add(asInt , reader.ReadString("Mac")); } } } public static bool IsBanned(string Mac) { return BannedMac.ContainsKey(Mac.GetHashCode()); } public static void Unban(string Mac) { BannedMac.Remove(Mac.GetHashCode()); using (var cmd = new MySqlCommand(MySqlCommandType.DELETE)) cmd.Delete("bannedMac", "Mac_int", Mac.GetHashCode()).Execute(); } public static void Ban(string Mac) { BannedMac.Add(Mac.GetHashCode() , Mac); using (var cmd = new MySqlCommand(MySqlCommandType.SELECT).Select("bann edMac")) using (var reader = new MySqlReader(cmd)) { if (!reader.Read()) using (var cmds = new MySqlCommand(MySqlCommandType.INSERT)) cmds.Insert("bannedMac").Insert("Mac_int", Mac.GetHashCode()).Insert("Mac", Mac).Execute(); } } } }
ياريت تظبطه

uncelsam 2019-10-23 09:46 PM

رد: ادي للاعب بان ماك :MacAddress
 
حاجه فشخولا من الاخر

AbuMaryam 2019-10-27 12:45 AM

رد: ادي للاعب بان ماك :MacAddress
 
تسلم ايدك على الموضوع الجميل دة


الساعة الآن 06:08 AM

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