Mr.DeMo |
12-11-2015 12:07 AM |
Full SuperGuildWar 100 Full Work [TorNaDo TeaM] Exclusively
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
..
SuperGuildWar
كاملة 100% , طبعا مش محتاجة أن اشرحها ,
أولا الموضوع مش منقول ولا مكرر والـ شايف ان فيه حاجة من دول انا غلطان فيها يا ريت يجيب الـ دليل ,
والـ هيطلع يقول كلمة ملهاش اى لزمة هيزعل جامد ,
..
الموضوع طويل شوية ركز عشان دى الاضافة من الاول خالص من الزيرو زي ما بيقولوا ,
..
أنا لاحظت أنها مش كاملا فكل السورسات , بس انا هنزل الاضافة بتاعتها كاملا لأى سورس مش موجودة فيه + أنا هحط الاضافة الـ ناقصة فـسورس زيركس ,
..
الموضوع دة مقدم من TorNaDo-TeaM == HaMaDa-ShaDow
..
نبدأ ع بركة الله ,
1- الشرح ,
2- الاضافة ,
3-الصور ,
..
1-الشرح ,
هيا زي الوار بالظبط ..
بس ليها توبات خاصة وجوائز خاصة ,
أنا عاملها يومين فالاسبوع ومعدل ع الوقت من الساعة 9 لـ 10 ,
2- الاضافة ,
أولا أنت هتعمل كلاس جديد بأسم , والـ معمول عنده ميعملش ,
..
ويمسح كل الـ فيه ويضيف ,
كود PHP:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using HarryPotter.Network.GamePackets; using HarryPotter.Game.ConquerStructures.Society;
namespace HarryPotter.Game { public class SuperGuildWar { public static SobNpcSpawn Pole, RightGate, LeftGate;
public static SobNpcSpawn Poles;
public static SafeDictionary<uint, Guild> Scores = new SafeDictionary<uint, Guild>(100);
public static bool IsWar = false, FirstRound = false;
public static Time32 ScoreSendStamp, LastWin;
public static Guild PoleKeeper, CurrentTopLeader;
private static bool changed = false;
private static string[] scoreMessages;
public static DateTime StartTime;
public static bool Claim { get { return Program.Vars["sgwclaim"]; } set { Program.Vars["sgwclaim"] = value; } } public static uint KeeperID { get { return Program.Vars["sgwkeeperid"]; } set { Program.Vars["sgwkeeperid"] = value; } } public static void Initiate() { var Map = Kernel.Maps[10380]; Pole = (SobNpcSpawn)Map.Npcs[8100]; LeftGate = (SobNpcSpawn)Map.Npcs[516174]; RightGate = (SobNpcSpawn)Map.Npcs[516175]; Console.WriteLine("SuperGuildWar Information Loaded");
} public static void Start() { if (LeftGate == null) return; Scores = new SafeDictionary<uint, Guild>(100); StartTime = DateTime.Now; LeftGate.Mesh = (ushort)(240 + LeftGate.Mesh % 10); RightGate.Mesh = (ushort)(270 + LeftGate.Mesh % 10); Kernel.SendWorldMessage(new Message("Super Guild war has began!", System.Drawing.Color.Red, Message.Center), Program.Values); FirstRound = true; foreach (Guild guild in Kernel.Guilds.Values) { guild.sWarScore = 0; } Update upd = new Update(true); upd.UID = LeftGate.UID; upd.Append(Update.Mesh, LeftGate.Mesh); upd.Append(Update.Hitpoints, LeftGate.Hitpoints); Kernel.SendWorldMessage(upd, Program.Values, (ushort)10380); upd.Clear(); upd.UID = RightGate.UID; upd.Append(Update.Mesh, RightGate.Mesh); upd.Append(Update.Hitpoints, RightGate.Hitpoints); Kernel.SendWorldMessage(upd, Program.Values, (ushort)10380); Claim = false; IsWar = true; }
public static void Reset() { Scores = new SafeDictionary<uint, Guild>(100);
LeftGate.Mesh = (ushort)(240 + LeftGate.Mesh % 10); RightGate.Mesh = (ushort)(270 + LeftGate.Mesh % 10);
LeftGate.Hitpoints = LeftGate.MaxHitpoints; RightGate.Hitpoints = RightGate.MaxHitpoints; Pole.Hitpoints = Pole.MaxHitpoints;
Update upd = new Update(true); upd.UID = LeftGate.UID; upd.Append(Update.Mesh, LeftGate.Mesh); upd.Append(Update.Hitpoints, LeftGate.Hitpoints); Kernel.SendWorldMessage(upd, Program.Values, (ushort)10380); upd.Clear(); upd.UID = RightGate.UID; upd.Append(Update.Mesh, RightGate.Mesh); upd.Append(Update.Hitpoints, RightGate.Hitpoints); Kernel.SendWorldMessage(upd, Program.Values, (ushort)10380);
foreach (Guild guild in Kernel.Guilds.Values) { guild.sWarScore = 0; }
IsWar = true; }
public static void FinishRound() { LastWin = Time32.Now;
FirstRound = false; SortScores(out PoleKeeper); if (PoleKeeper != null) { KeeperID = PoleKeeper.ID; Kernel.SendWorldMessage(new Message("The guild, " + PoleKeeper.Name + ", owned by " + PoleKeeper.LeaderName + " has won this Super guild war round!", System.Drawing.Color.Red, Message.Center), Program.Values); Kernel.SendWorldMessage(new Message("It is generald pardon time. You have 5 minutes to leave, run for your life!", System.Drawing.Color.White, Message.TopLeft), Program.Values, (ushort)6001); Pole.Name = PoleKeeper.Name; } Pole.Hitpoints = Pole.MaxHitpoints; Kernel.SendWorldMessage(Pole, Program.Values, (ushort)10380); Reset(); }
public static void End() { if (PoleKeeper != null) { Kernel.SendWorldMessage(new Message("The guild, " + PoleKeeper.Name + ", owned by " + PoleKeeper.LeaderName + " has won this Super guild war!---Guild war has ended!", System.Drawing.Color.White, Message.Center), Program.Values); //HarryPotter.Database.EntityTable.Status2(); } else { Kernel.SendWorldMessage(new Message("Super Guild war has ended and there was no winner!", System.Drawing.Color.Red, Message.Center), Program.Values); //HarryPotter.Database.EntityTable.Status2(); } IsWar = false; Claim = true; UpdatePole(Pole); }
public static void AddScore(uint addScore, Guild guild) { if (guild != null) { guild.sWarScore += addScore; changed = true; if (!Scores.ContainsKey(guild.ID)) Scores.Add(guild.ID, guild); if ((int)Pole.Hitpoints <= 0) { FinishRound();
return; } } }
public static void SendScores() { if (scoreMessages == null) scoreMessages = new string[0]; if (Scores.Count == 0) return; if (changed) SortScores(out CurrentTopLeader);
for (int c = 0; c < scoreMessages.Length; c++) { Message msg = new Message(scoreMessages[c], System.Drawing.Color.Red, c == 0 ? Message.FirstRightCorner : Message.ContinueRightCorner); Kernel.SendWorldMessage(msg, Program.Values, (ushort)10380); Kernel.SendWorldMessage(msg, Program.Values, (ushort)6001); } }
private static void SortScores(out Guild winner) { winner = null; List<string> ret = new List<string>();
int Place = 0; foreach (Guild guild in Scores.Values.OrderByDescending((p) => p.sWarScore)) { if (Place == 0) winner = guild; string str = "No " + (Place + 1).ToString() + ": " + guild.Name + "(" + guild.sWarScore + ")"; ret.Add(str); Place++; if (Place == 4) break; }
changed = false; scoreMessages = ret.ToArray(); }
private static void UpdatePole(SobNpcSpawn pole) { new Database.MySqlCommand(HarryPotter.Database.MySqlCommandType.UPDATE) .Update("sobnpcs").Set("name", pole.Name).Set("life", Pole.Hitpoints).Where("id", pole.UID).Execute(); } } }
..
خش ع ابحث عن دة
كود PHP:
if (attacker.MapID == 10380)
..
لو مش موجود ضيف دة ,
كود PHP:
if (attacker.MapID == 10380) { if (attacker.GuildID == 0 || !Game.SuperGuildWar.IsWar) { if (attacked.UID == 8100) { return false; } } if (Game.SuperGuildWar.PoleKeeper != null) { if (Game.SuperGuildWar.PoleKeeper == attacker.Owner.Guild) { if (attacked.UID == 8100) { return false; } } else if (attacked.UID == 516175 || attacked.UID == 516174) { if (Game.SuperGuildWar.PoleKeeper == attacker.Owner.Guild) { if (attacker.PKMode == Enums.PKMode.Team) return false; } } } }
..
..
ابحث عن الكود دة ,
كود PHP:
Game.GuildWar.AddScore(damage, attacker.Owner.Guild);
..
وبعد أخر قوسين فالأكود ,
حط دول ,
كود PHP:
if (attacker.MapID == 10380) { if (attacked.UID == 8100) { if (Game.SuperGuildWar.PoleKeeper == attacker.Owner.Guild) return; if (attacked.Hitpoints <= damage) attacked.Hitpoints = 0; Game.SuperGuildWar.AddScore(damage, attacker.Owner.Guild); } }
..
كدة تمام ,
..
تم اضافة الـكود الناقص
..
هتخش كلاس ..
ابحث عن دة لو مش لقيته ضيفه من الاول معايا ,
كود PHP:
else if (client.Entity.MapID == HarryPotter.Game.SuperGuildWar.RightGate.MapID)
..
كود PHP:
else if (client.Entity.MapID == HarryPotter.Game.SuperGuildWar.RightGate.MapID) { if (HarryPotter.Game.SuperGuildWar.RightGate.Mesh == (270 + HarryPotter.Game.SuperGuildWar.RightGate.Mesh % 10) && oldX >= HarryPotter.Game.SuperGuildWar.RightGate.X && client.Entity.X <= HarryPotter.Game.SuperGuildWar.RightGate.X && client.Entity.Y < HarryPotter.Game.SuperGuildWar.LeftGate.Y) { client.Entity.X = oldX; client.Entity.Y = oldY; client.Disconnect(); return; }
if (HarryPotter.Game.SuperGuildWar.LeftGate.Mesh == (240 + HarryPotter.Game.SuperGuildWar.LeftGate.Mesh % 10) && oldY >= HarryPotter.Game.SuperGuildWar.LeftGate.Y && client.Entity.Y <= HarryPotter.Game.SuperGuildWar.LeftGate.Y && client.Entity.X < HarryPotter.Game.SuperGuildWar.RightGate.X) { client.Entity.X = oldX; client.Entity.Y = oldY; client.Disconnect(); return; } } } } }
..
خش ع ابحث عن ,
كود PHP:
if (client.Map.BaseID == 1038 && (HarryPotter.Game.GuildWar.IsWar
.. وضيف جمبها ,
كود PHP:
|| HarryPotter.Game.SuperGuildWar.IsWar))
بمعنى اصح الكود كله هيبقى كدة ,
..
كود PHP:
if (client.Map.BaseID == 1038 && (HarryPotter.Game.GuildWar.IsWar || HarryPotter.Game.SuperGuildWar.IsWar))
..
تمام ,
ابحث فـ على دة
كود PHP:
if (Game.GuildWar.RightGate.Mesh / 10 == 27)
..
وبعد أخر قوس
ضيف دة
كود PHP:
if (Game.SuperGuildWar.RightGate == null) return false; if (MapID == 10380) { if ((X == 223 || X == 222) && (Y >= 175 && Y <= 185)) { if (Game.SuperGuildWar.RightGate.Mesh / 10 == 27) { return true; } } } return false; }
..
وأنزل تحت شوية هتلاقى الكود دة كمان
كود PHP:
if (Game.GuildWar.LeftGate.Mesh / 10 == 24)
..
بعد أخر كوس هضيف الاكواد دى بردو ,
كود PHP:
if (Game.SuperGuildWar.LeftGate == null) return false; if (MapID == 10380) { if ((Y == 210 || Y == 209) && (X >= 154 && X <= 166)) { if (Game.SuperGuildWar.LeftGate.Mesh / 10 == 24) { return true; } } } return false; }
..
افتح ضيف دة
..
وضيف دة كمان ,
كود PHP:
public bool SuperPoleKeeper { get { return SuperGuildWar.Pole.Name == Name; } }
..
وضيف اللود دة ..
كود PHP:
Game.SuperGuildWar.Initiate(); Console.WriteLine("SuperGuildWar By HaMaDa");
..
افتح..
ابحث عن
اقفلها من السالب وضيف دة تحتيها ع طول ,
..
كود PHP:
#region SuperGuild war case 10380: { switch (client.ActiveNpc) { #region Pole case 8100: { dialog.Text("Please, don't hurt me!."); dialog.Option("Sorry.", 255); dialog.Send(); break; } #endregion
#region SuperClaimGuildPrize
case 44821140: { switch (npcRequest.OptionID) { case 0: { dialog.Text("Hello there. Do you want to Claim Super Guild War Prize you can only Claim it 1 Time if you won SGW."); dialog.Option("Leme Claim Prize.", 1); dialog.Option("Get Top.", 3); dialog.Option("Just Passing By!", 255); dialog.Send(); break; } case 3: { if (client.Guild != null) { if (client.AsMember.Rank == HarryPotter.Game.Enums.GuildMemberRank.GuildLeader) { dialog.Text("Are you sure you want to exchange for your Prize?"); dialog.Option("Yes.", 4); dialog.Option("Ah, nevermind.", 255); dialog.Send(); } else { dialog.Text("Sorry only GuildLeader of the Winner Guild can Claim The Prize After SuperGuildWar End."); dialog.Option("Ahh.", 255); dialog.Send(); } } else { dialog.Text("Sorry You are not Member in any guild yet"); dialog.Option("Ahh.", 255); dialog.Send(); } break; } case 4: { var count = client.Inventory.Objects.Where(x => x.ID == 723467).Count(); switch (count) { case 0: { dialog.Text("Are you sure you have tokens ?"); dialog.Option("Ah, nevermind.", 255); dialog.Send(); break; } case 1: { client.Entity.AddTopStatus((ulong)Update.Flags3.ConuqerSuperUnderBlue, DateTime.Now.AddDays(7)); // client.Inventory.Add(2100055, 0, 1); client.Entity.ConquerPoints += CPanel.GuildWar; break; } case 2: { client.Entity.AddTopStatus((ulong)Update.Flags3.ConuqerSuperBlue, DateTime.Now.AddDays(7)); // client.Inventory.Add(2100065, 0, 1); client.Entity.ConquerPoints += CPanel.EliteGw; break; } default: { if (count >= 3) { client.Entity.AddTopStatus((ulong)Update.Flags3.ConuqerSuperYellow, DateTime.Now.AddDays(7)); //client.Inventory.Add(2100075, 0, 1); client.Entity.ConquerPoints += 100000; } break; } } client.Inventory.Remove(723467, (byte)Math.Min(count, 3)); break; } case 1: { if (client.Guild != null) { if (client.Guild.SuperPoleKeeper && client.AsMember.Rank == HarryPotter.Game.Enums.GuildMemberRank.GuildLeader) { dialog.Text("Are you sure you want to Claim your Prize?"); dialog.Option("Yes.", 2); dialog.Option("Ah, nevermind.", 255); dialog.Send(); } else { dialog.Text("Sorry only GuildLeader of the Winner Guild can Claim The Prize After GuildWar End."); dialog.Option("Ahh.", 255); dialog.Send(); } } else { dialog.Text("Sorry You are not Member in any guild yet"); dialog.Option("Ahh.", 255); dialog.Send(); } break; } case 2: { if (!SuperGuildWar.IsWar && SuperGuildWar.Claim && client.Guild != null && client.Entity.GuildID == SuperGuildWar.KeeperID && client.Entity.GuildRank == (ushort)Game.Enums.GuildMemberRank.GuildLeader) { //#warning GUILD WAR PRIZE
SuperGuildWar.Claim = false; SuperGuildWar.KeeperID = 0; client.Inventory.Add(723467, 0, 1); HarryPotter.Kernel.SendWorldMessage(new Message("Congratulations! " + client.Entity.Name + " Leader of " + client.Guild.PoleKeeper + " The winner guild has Claimed Super Guild War Prize " + rates.GuildWar + " cps and LordToken!", System.Drawing.Color.White, Message.TopLeft), Program.Values); } else { dialog.Text("Sorry you dont have Any Prize to claim only GL of the winner guild can claim Prize After SGW"); dialog.Option("Ahh.", 255); dialog.Send(); } break; }
} break; } #endregion
#region Gates case 516174: { if (client.Guild != null) { if (client.Guild.SuperPoleKeeper) { switch (npcRequest.OptionID) { case 0: dialog.Text("Select the option you want to pursue."); if (client.AsMember.Rank != HarryPotter.Game.Enums.GuildMemberRank.Member) { dialog.Option("Open gate.", 1); dialog.Option("Close gate.", 2); } dialog.Option("Get inside.", 3); dialog.Option("Nothing.", 255); dialog.Send(); break; case 1: { HarryPotter.Game.SuperGuildWar.LeftGate.Mesh = (ushort)(250 + HarryPotter.Game.SuperGuildWar.LeftGate.Mesh % 10);
Update upd = new Update(true); upd.UID = HarryPotter.Game.SuperGuildWar.LeftGate.UID; upd.Append(Update.Mesh, HarryPotter.Game.SuperGuildWar.LeftGate.Mesh); client.SendScreen(upd, true); break; } case 2: { Game.SuperGuildWar.LeftGate.Mesh = (ushort)(240 + Game.SuperGuildWar.LeftGate.Mesh % 10); Game.SuperGuildWar.LeftGate.Hitpoints = Game.SuperGuildWar.LeftGate.MaxHitpoints; Update upd = new Update(true); upd.UID = HarryPotter.Game.SuperGuildWar.LeftGate.UID; upd.Append(Update.Mesh, HarryPotter.Game.SuperGuildWar.LeftGate.Mesh); upd.Append(Update.Hitpoints, HarryPotter.Game.SuperGuildWar.LeftGate.Hitpoints); client.SendScreen(upd, true); break; } case 3: { client.Entity.Teleport(10380, 162, 198); break; } } } } break; } case 516175: { if (client.Guild != null) { if (client.Guild.SuperPoleKeeper) { switch (npcRequest.OptionID) { case 0: dialog.Text("Select the option you want to pursue."); if (client.AsMember.Rank != HarryPotter.Game.Enums.GuildMemberRank.Member) { dialog.Option("Open gate.", 1); dialog.Option("Close gate.", 2); } dialog.Option("Get inside.", 3); dialog.Option("Nothing.", 255); dialog.Send(); break; case 1: { HarryPotter.Game.SuperGuildWar.RightGate.Mesh = (ushort)(280 + HarryPotter.Game.SuperGuildWar.RightGate.Mesh % 10);
Update upd = new Update(true); upd.UID = HarryPotter.Game.SuperGuildWar.RightGate.UID; upd.Append(Update.Mesh, HarryPotter.Game.SuperGuildWar.RightGate.Mesh); client.SendScreen(upd, true); break; } case 2: { HarryPotter.Game.SuperGuildWar.RightGate.Mesh = (ushort)(270 + HarryPotter.Game.SuperGuildWar.RightGate.Mesh % 10); Game.GuildWar.RightGate.Hitpoints = Game.SuperGuildWar.RightGate.MaxHitpoints; Update upd = new Update(true); upd.UID = HarryPotter.Game.SuperGuildWar.RightGate.UID; upd.Append(Update.Mesh, HarryPotter.Game.SuperGuildWar.RightGate.Mesh); upd.Append(Update.Hitpoints, HarryPotter.Game.SuperGuildWar.RightGate.Hitpoints); client.SendScreen(upd, true); break; } case 3: { client.Entity.Teleport(10380, 210, 177); break; } } } } break; } #endregion
#region Guild Conductresses
#region Exit Guild Arena case 70000: { switch (npcRequest.OptionID) { case 0: { dialog.Text("Do you want to leave the guild arena?"); dialog.Option("Yes.", 1); dialog.Option("No.", 255); dialog.Send(); break; } case 1: { client.Entity.Teleport(1002, 429, 378); break; } } break; } #endregion
#endregion
} break; } #endregion
..
ضيف فـ ..
AutoInvite ,
كود PHP:
#region SuperGuildWar if (Now64.DayOfWeek != DayOfWeek.Friday && Now64.DayOfWeek != DayOfWeek.Monday) if (DateTime.Now.Hour == 21 && DateTime.Now.Minute == 00 && DateTime.Now.Second <= 00) { // By HaMaDa.ShaDow // TorNaDo-TeaM === forum.vpscairo.win
Game.SuperGuildWar.Start(); Kernel.SendWorldMessage(new HarryPotter.Network.GamePackets.Message("SuperGuildWar Is Started Now !", Color.Red, 2012)); foreach (var client in Program.Values) client.MessageBox("SuperGuild War began! Would You Like To Join?", p => { p.Entity.Teleport(1002, 300, 358); }, null, 60);
if (Game.SuperGuildWar.IsWar) Kernel.SendWorldMessage(new Message("You Have To Be Ready For The SuperGuild War !", Color.White, Message.Center), Program.Values); { if (Time32.Now > Game.SuperGuildWar.ScoreSendStamp.AddSeconds(3)) { Game.SuperGuildWar.ScoreSendStamp = Time32.Now; Game.SuperGuildWar.SendScores(); } if (DateTime.Now.Hour == 21 && DateTime.Now.Minute == 50 && DateTime.Now.Second <= 2) { Kernel.SendWorldMessage(new Network.GamePackets.Message("10 Minutes left till Super GuildWar End Hurry kick other Guild's Ass!.", System.Drawing.Color.White, Network.GamePackets.Message.Center), Program.Values); } } } else if (DateTime.Now.Hour == 22 && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { if (Game.SuperGuildWar.IsWar) { Game.SuperGuildWar.End(); } }
#endregion
======
..
كمل معايا أكواد التوبات عشان الـ مش موجودة عنده ,
..
افتح , ..
ابحث عن
كود PHP:
case Network.GamePackets.Update.Flags2.TopPirate: return 22;
..
ضيف تحته
كود PHP:
case Network.GamePackets.Update.Flags3.ConuqerSuperUnderBlue: return 230; case Network.GamePackets.Update.Flags3.ConuqerSuperBlue: return 240; case Network.GamePackets.Update.Flags3.ConuqerSuperYellow: return 250;
..
ابحث عن ,
كود PHP:
case 22: return Network.GamePackets.Update.Flags2.TopPirate;
..
وضيف تحته دول
كود PHP:
case 230: return Network.GamePackets.Update.Flags3.ConuqerSuperUnderBlue; case 240: return Network.GamePackets.Update.Flags3.ConuqerSuperBlue; case 250: return Network.GamePackets.Update.Flags3.ConuqerSuperYellow;
..
وافتح وابحث عن
..
كود PHP:
ConuqerSuperYellow = (ulong)1UL << 23, //GL flag ConuqerSuperBlue = (ulong)1UL << 24, //DL flag ConuqerSuperUnderBlue = (ulong)1UL << 25, // Memeber Flag
..
كدة تمام بالتوبات لأن ناس قالت التوبات مش موجودة ,
..
أكواد النافى كات ,
..
كود PHP:
Maps 10380 1038 0 0 .. Sobnpcs 8100 HaMaDa.ShaDow 10 1137 10380 84 99 23446500 30000000 0 17 1 0 516174 ii 26 251 10380 163 210 10000000 10000000 24 21 0 0 516175 ii 26 277 10380 223 177 10000000 10000000 27 21 0 0 .. Npc 44821140 Super Guild War 2 8160 10380 44 60
..
SuperGuildWar Done 100% Full Work
By HaMaDa-ShaDow
..
3- الصور ,
1- ,
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
..
2- ,
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
..
3- ,
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
4- ,
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
..
صور كفاية عشان محدش يطلع يقول مش شغالة ,
..
الـ هيطلعله ايرور من اسم البوجيكت ,
تم بحمد الله ,
..
ممنوع النقل حتى لو بذكر المصدر أنا لو عايز احطه فـأى حته تانية هحطه أنا مش اكتع :V عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
..
TorNaDo-TeaM = HaMaDa.ShaDow
تحياتى للجميع وبالاخص ,
Ahmed Lover - Mr.Gozef - HarryPotter - EslaM SolOoOM - Mr.Monk - Mr.KeKa
ولـ فريق القراصنة / Pirates-TeaM جميعا ,
..
..
أن شاء الله اليوم هنزل شغل كتير ,
..
|