اخر المواضيع
الموضوع تاريخ انشاء المساهمة بواسطة
منتجات يوسيرين: رفع مستوى روتين العناية بالبشرة مع ويلنس سوق اكتشفي منتجات لاروش بوزيه الفريدة من نوعها في ويلنس سوق منتجات العناية بالبشرة منتجات العناية بالبشرة استكشف سر جمال شعرك في ويلنس سوق، الوجهة الأولى للعناية بالشعر ويلنس سوق : وجهتك الأساسية لمنتجات العناية الشخصية والجمال قناة bm4 التحفيزية ستساعدك في النجاح نقلي - أفضل خدمة نقل عفش بالكويت متجر فلاي هاير لجميع المنتجات والاكسسوارات النسائية استعدي لرحلة ملهمة تلبي احتياجاتك الشخصية والعاطفية الأحد 21 أبريل 2024, 00:43 السبت 20 أبريل 2024, 21:05 السبت 20 أبريل 2024, 12:42 السبت 20 أبريل 2024, 12:40 السبت 20 أبريل 2024, 07:51 السبت 20 أبريل 2024, 01:42 الخميس 11 أبريل 2024, 10:30 الخميس 04 أبريل 2024, 21:52 الإثنين 25 مارس 2024, 03:03 السبت 23 مارس 2024, 04:08
الخميس 28 يونيو 2012, 01:46
رسالة بيانات كاتب الموضوع
تصليح نظام التناسخ (السرد ريبورن) المعلومات الكاتب:
اللقب:
فرتكاوي نشيط
الرتبه:
الصورة الرمزية
البيانات الجنس : عدد المساهمات : 108 تاريخ التسجيل : 28/04/2011 العمر : 24 حكمتي المفضله : ساعد من هو اكبر منك سناً
الإتصالات الحالة: وسائل الإتصال:
موضوع: تصليح نظام التناسخ (السرد ريبورن)
تصليح نظام التناسخ (السرد ريبورن) 5517 افتحSpoiler: الكود: Network/PacketHandler.cs
و ابحث عن Spoiler: الكود: #region Reincarnation
و شيلو كلوا و حط دهSpoiler: الكود: #region Reincarnation public class Reincarnation { private Client.GameState _client; private SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill> RemoveSkill = null; private SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill> Addskill = null; public Reincarnation(Client.GameState client, byte new_class) { if (client.Entity.Level < 130) return; _client = client; RemoveSkill = new SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill>(500); Addskill = new SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill>(500); #region Low level items for (byte i = 1; i < 9; i++) { if (i != 7) { Interfaces.IConquerItem item = client.Equipment.TryGetItem(i); if (item != null && item.ID != 0) { try { client.UnloadItemStats(item, false); Database.ConquerItemInformation cii = new Conquer_Online_Server.Database.ConquerItemInformation(item.ID, item.Plus); item.ID = cii.LowestID(Network.PacketHandler.ItemMinLevel(Network.PacketHandler.ItemPosition(item.ID))); item.Mode = Conquer_Online_Server.Game.Enums.ItemMode.Update; item.Send(client); client.LoadItemStats(item); Database.ConquerItemTable.UpdateItemID(item, client); } catch { Console.WriteLine("Reborn item problem: " + item.ID); } } } } Interfaces.IConquerItem hand = client.Equipment.TryGetItem(5); if (hand != null) { client.Equipment.Remove(5); client.CalculateStatBonus(); client.CalculateHPBonus(); //SendStatMessage(); } else client.Screen.SendScreen(client.Entity.SpawnPacket, false); #endregion #region Remove Extra Skill if (client.Entity.FirstRebornClass == 15 && client.Entity.SecondRebornClass == 15 && client.Entity.Class == 15) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.DragonWhirl); } if (client.Entity.FirstRebornClass == 25 && client.Entity.SecondRebornClass == 25 && client.Entity.Class == 25) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.Perseverance); } if (client.Entity.FirstRebornClass == 45 && client.Entity.SecondRebornClass == 45 && client.Entity.Class == 45) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.StarArrow); } if (client.Entity.FirstRebornClass == 55 && client.Entity.SecondRebornClass == 55 && client.Entity.Class == 55) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.PoisonStar); } if (client.Entity.FirstRebornClass == 65 && client.Entity.SecondRebornClass == 65 && client.Entity.Class == 65) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.SoulShackle); } if (client.Entity.FirstRebornClass == 135 && client.Entity.SecondRebornClass == 135 && client.Entity.Class == 135) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.AzureShield); } if (client.Entity.FirstRebornClass == 145 && client.Entity.SecondRebornClass == 145 && client.Entity.Class == 145) { WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs.HeavenBlade); } #endregion client.Entity.FirstRebornClass = client.Entity.SecondRebornClass; client.Entity.SecondRebornClass = client.Entity.Class; client.Entity.Class = new_class; client.Entity.SecondRebornLevel = client.Entity.Level; client.Entity.ReincarnationLev = client.Entity.Level; client.Entity.Level = 15; client.Entity.Experience = 0; client.Entity.Atributes = (ushort)(client.ExtraAtributePoints(client.Entity.FirstRebornClass, client.Entity.FirstRebornLevel) + client.ExtraAtributePoints(client.Entity.SecondRebornClass, client.Entity.SecondRebornLevel) + 62); client.Spells.Clear(); client.Spells = new SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill>(100); switch (client.Entity.FirstRebornClass) { case 15: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Cyclone); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Hercules); Add(Conquer_Online_Server.Game.Enums.SkillIDs.SpiritHealing); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Robot); break; } case 25: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.SuperMan); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Dash); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Shield); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Reflect); break; } case 45: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Intensify); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Scatter); Add(Conquer_Online_Server.Game.Enums.SkillIDs.RapidFire); Add(Conquer_Online_Server.Game.Enums.SkillIDs.XPFly); Add(Conquer_Online_Server.Game.Enums.SkillIDs.AdvancedFly); break; } case 55: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.FatalStrike); Add(Conquer_Online_Server.Game.Enums.SkillIDs.ShurikenVortex); Add(Conquer_Online_Server.Game.Enums.SkillIDs.ToxicFog); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TwofoldBlades); Add(Conquer_Online_Server.Game.Enums.SkillIDs.PoisonStar); break; } case 65: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.RadiantPalm); Add(Conquer_Online_Server.Game.Enums.SkillIDs.WhirlwindKick); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TripleAttack); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Oblivion); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Serenity); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Compassion); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TyrantAura); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TyrantAura); Add(Conquer_Online_Server.Game.Enums.SkillIDs.DeflectionAura); break; } case 135: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Thunder); Add(Conquer_Online_Server.Game.Enums.SkillIDs.WaterElf); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Cure); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Lightning); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Volcano); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Pray); Add(Conquer_Online_Server.Game.Enums.SkillIDs.AdvancedCure); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Meditation); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Stigma); break; } case 140: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Thunder); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Cure); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Lightning); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Tornado); Add(Conquer_Online_Server.Game.Enums.SkillIDs.FireCircle); Add(Conquer_Online_Server.Game.Enums.SkillIDs.FireMeteor); Add(Conquer_Online_Server.Game.Enums.SkillIDs.FireRing); break; } } byte PreviousClass = client.Entity.FirstRebornClass; byte toClass = (byte)(client.Entity.SecondRebornClass - 4); Interfaces.ISkill[] ADD_spells = this.Addskill.Values.ToArray(); foreach (Interfaces.ISkill skill in ADD_spells) { skill.Available = true; if (!client.Spells.ContainsKey(skill.ID)) client.Spells.Add(skill.ID, skill); } #region Spells Interfaces.ISkill[] spells = client.Spells.Values.ToArray(); foreach (Interfaces.ISkill spell in spells) { spell.PreviousLevel = spell.Level; spell.Level = 0; spell.Experience = 0; #region Monk if (PreviousClass == 65) { if (client.Entity.Class != 61) { switch (spell.ID) { case 10490: case 10415: case 10381: client.RemoveSpell(spell); break; } } } #endregion #region Warrior if (PreviousClass == 25) { if (client.Entity.Class != 21) { switch (spell.ID) { case 1025: if (client.Entity.Class != 21 && client.Entity.Class != 132) client.RemoveSpell(spell); break; } } } #endregion #region Ninja if (toClass != 51) { switch (spell.ID) { case 6010: case 6000: case 6003: case 6011: case 6002: client.RemoveSpell(spell); break; } } #endregion #region Trojan if (toClass != 11) { switch (spell.ID) { case 1115: client.RemoveSpell(spell); break; } } #endregion #region Archer if (toClass != 41) { switch (spell.ID) { case 8001: case 8000: case 8003: case 9000: case 8002: case 8030: client.RemoveSpell(spell); break; } } #endregion #region WaterTaoist if (PreviousClass == 135) { if (toClass != 132) { switch (spell.ID) { case 1000: case 1001: case 1010: case 1125: case 1100: case 8030: client.RemoveSpell(spell); break; case 1050: case 1175: case 1170: if (toClass != 142) client.RemoveSpell(spell); break; } } } #endregion #region FireTaoist if (PreviousClass == 145) { if (toClass != 142) { switch (spell.ID) { case 1000: case 1001: case 1150: case 1180: case 1120: case 1002: case 1160: case 1165: client.RemoveSpell(spell); break; } } } #endregion if (client.Spells.ContainsKey(spell.ID)) if (spell.ID != (ushort)Game.Enums.SkillIDs.Reflect) spell.Send(client); } #endregion Add(Conquer_Online_Server.Game.Enums.SkillIDs.Bless); Addskill.Clear(); Addskill = new SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill>(100); PreviousClass = client.Entity.SecondRebornClass; toClass = client.Entity.Class; switch (client.Entity.SecondRebornClass) { case 15: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Robot); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Cyclone); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Hercules); Add(Conquer_Online_Server.Game.Enums.SkillIDs.SpiritHealing); break; } case 25: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.SuperMan); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Dash); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Shield); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Reflect); break; } case 45: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Intensify); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Scatter); Add(Conquer_Online_Server.Game.Enums.SkillIDs.RapidFire); Add(Conquer_Online_Server.Game.Enums.SkillIDs.XPFly); Add(Conquer_Online_Server.Game.Enums.SkillIDs.AdvancedFly); break; } case 55: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.FatalStrike); Add(Conquer_Online_Server.Game.Enums.SkillIDs.ShurikenVortex); Add(Conquer_Online_Server.Game.Enums.SkillIDs.ToxicFog); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TwofoldBlades); break; } case 65: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.RadiantPalm); Add(Conquer_Online_Server.Game.Enums.SkillIDs.WhirlwindKick); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TripleAttack); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Oblivion); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Serenity); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Compassion); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TyrantAura); Add(Conquer_Online_Server.Game.Enums.SkillIDs.TyrantAura); Add(Conquer_Online_Server.Game.Enums.SkillIDs.DeflectionAura); break; } case 135: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Thunder); Add(Conquer_Online_Server.Game.Enums.SkillIDs.WaterElf); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Cure); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Lightning); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Volcano); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Pray); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Stigma); Add(Conquer_Online_Server.Game.Enums.SkillIDs.AdvancedCure); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Meditation); break; } case 140: { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Thunder); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Cure); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Lightning); Add(Conquer_Online_Server.Game.Enums.SkillIDs.Tornado); Add(Conquer_Online_Server.Game.Enums.SkillIDs.FireCircle); Add(Conquer_Online_Server.Game.Enums.SkillIDs.FireMeteor); Add(Conquer_Online_Server.Game.Enums.SkillIDs.FireRing); break; } } //PreviousClass = client.Entity.FirstRebornClass; //toClass = client.Entity.SecondRebornClass; Add(Conquer_Online_Server.Game.Enums.SkillIDs.Bless); Interfaces.ISkill[] aADD_spells = this.Addskill.Values.ToArray(); foreach (Interfaces.ISkill skill in aADD_spells) { skill.Available = true; if (!client.Spells.ContainsKey(skill.ID)) client.Spells.Add(skill.ID, skill); } #region Spells Interfaces.ISkill[] aspells = client.Spells.Values.ToArray(); foreach (Interfaces.ISkill aspell in spells) { aspell.PreviousLevel = aspell.Level; aspell.Level = 0; aspell.Experience = 0; #region Monk if (PreviousClass == 65) { if (client.Entity.Class != 61) { switch (aspell.ID) { case 10490: case 10415: case 10381: client.RemoveSpell(aspell); break; } } } #endregion #region Warrior if (PreviousClass == 25) { if (client.Entity.Class != 21) { switch (aspell.ID) { case 1025: if (client.Entity.Class != 21 && client.Entity.Class != 132) client.RemoveSpell(aspell); break; } } } #endregion #region Ninja if (toClass != 51) { switch (aspell.ID) { case 6010: case 6000: case 6003: case 6011: case 6002: client.RemoveSpell(aspell); break; } } #endregion #region Trojan if (toClass != 11) { switch (aspell.ID) { case 1115: client.RemoveSpell(aspell); break; } } #endregion #region Archer if (toClass != 41) { switch (aspell.ID) { case 8001: case 8000: case 8003: case 9000: case 8002: case 8030: client.RemoveSpell(aspell); break; } } #endregion #region WaterTaoist if (PreviousClass == 135) { if (toClass != 132) { switch (aspell.ID) { case 1000: case 1001: case 1010: case 1125: case 1100: case 8030: client.RemoveSpell(aspell); break; case 1050: case 1175: case 1170: if (toClass != 142) client.RemoveSpell(aspell); break; } } } #endregion #region FireTaoist if (PreviousClass == 145) { if (toClass != 142) { switch (aspell.ID) { case 1000: case 1001: case 1150: case 1180: case 1120: case 1002: case 1160: case 1165: client.RemoveSpell(aspell); break; } } } #endregion if (client.Spells.ContainsKey(aspell.ID)) if (aspell.ID != (ushort)Game.Enums.SkillIDs.Reflect) aspell.Send(client); } #endregion Addskill.Clear(); Addskill = new SafeDictionary<ushort, Conquer_Online_Server.Interfaces.ISkill>(20); #region Add Extra Skill if (client.Entity.FirstRebornClass == 15 && client.Entity.SecondRebornClass == 15 && client.Entity.Class == 11) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.DragonWhirl); } if (client.Entity.FirstRebornClass == 25 && client.Entity.SecondRebornClass == 25 && client.Entity.Class == 21) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.Perseverance); } if (client.Entity.FirstRebornClass == 45 && client.Entity.SecondRebornClass == 45 && client.Entity.Class == 41) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.StarArrow); } if (client.Entity.FirstRebornClass == 55 && client.Entity.SecondRebornClass == 55 && client.Entity.Class == 53) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.PoisonStar); Add(Conquer_Online_Server.Game.Enums.SkillIDs.CounterKill); } if (client.Entity.FirstRebornClass == 65 && client.Entity.SecondRebornClass == 65 && client.Entity.Class == 61) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.SoulShackle); } if (client.Entity.FirstRebornClass == 135 && client.Entity.SecondRebornClass == 135 && client.Entity.Class == 132) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.AzureShield); } if (client.Entity.FirstRebornClass == 145 && client.Entity.SecondRebornClass == 145 && client.Entity.Class == 142) { Add(Conquer_Online_Server.Game.Enums.SkillIDs.HeavenBlade); } #endregion Interfaces.ISkill[] aaADD_spells = this.Addskill.Values.ToArray(); foreach (Interfaces.ISkill skill in aaADD_spells) { skill.Available = true; if (!client.Spells.ContainsKey(skill.ID)) client.Spells.Add(skill.ID, skill); } #region Proficiencies foreach (Interfaces.ISkill proficiency in client.Proficiencies.Values) { proficiency.PreviousLevel = proficiency.Level; proficiency.Level = 0; proficiency.Experience = 0; proficiency.Send(client); } #endregion Database.DataHolder.GetStats(client.Entity.Class, client.Entity.Level, client); client.CalculateStatBonus(); client.CalculateHPBonus(); client.GemAlgorithm(); //SendStatMessage(); using (var conn = Database.DataHolder.MySqlConnection) { conn.Open(); Database.EntityTable.SaveEntity(client, conn); Database.SkillTable.SaveSkills(client, conn); conn.Close(); } Network.PacketHandler.WorldMessage(client.Entity.Name + " has got Reincarnation! Congratulations!"); } void Add(Conquer_Online_Server.Game.Enums.SkillIDs S) { Interfaces.ISkill New = new Network.GamePackets.Spell(true); New.ID = (ushort)S; New.Level = 0; New.Experience = 0; New.PreviousLevel = 0; New.Send(_client); Addskill.Add(New.ID, New); } void WontAdd(Conquer_Online_Server.Game.Enums.SkillIDs S) { Network.GamePackets.Data data = new Data(true); data.UID = _client.Entity.UID; data.dwParam = (byte)S; data.ID = 109; data.Send(_client); Interfaces.ISkill New = new Network.GamePackets.Spell(true); New.ID = (ushort)S; New.Level = 0; New.Experience = 0; New.PreviousLevel = 0; RemoveSkill.Add(New.ID, New); } } #endregion
الكلام دة شغال عندى 100% و مفيش حد بيجيلكوا اسكلات زيادة
الموضوع الأصلي : تصليح نظام التناسخ (السرد ريبورن) // المصدر : منتديات فرتكة // الكاتب: El.Professor
El.Professor ; توقيع العضو
الأربعاء 08 أغسطس 2012, 10:01
رسالة بيانات كاتب الموضوع
تصليح نظام التناسخ (السرد ريبورن) المعلومات الكاتب:
اللقب:
الرتبه:
الصورة الرمزية
البيانات الجنس : عدد المساهمات : 2 تاريخ التسجيل : 08/08/2012 العمر : 29 حكمتي المفضله : لاتحزن اذا جاءك سهم قاتل من اقرب الناس لقلبك فسوف تجد من ينزع السهم ويعيد لك الحياه والابتسامه.
الإتصالات الحالة: وسائل الإتصال:
موضوع: رد: تصليح نظام التناسخ (السرد ريبورن)
الأربعاء 08 أغسطس 2012, 10:42
رسالة بيانات كاتب الموضوع
تصليح نظام التناسخ (السرد ريبورن) المعلومات الكاتب:
اللقب:
المدير العام
الرتبه:
الصورة الرمزية
البيانات الجنس : عدد المساهمات : 3579 تاريخ التسجيل : 13/09/2010 العمر : 30 حكمتي المفضله : لآ تأتمن أي إمرأة إلا امك :)
الإتصالات الحالة: وسائل الإتصال:
موضوع: رد: تصليح نظام التناسخ (السرد ريبورن)
MoDy Designer ; توقيع العضو
الأحد 11 نوفمبر 2012, 23:20
رسالة بيانات كاتب الموضوع
تصليح نظام التناسخ (السرد ريبورن) المعلومات الكاتب:
اللقب:
فرتكاوي مبتدئ
الرتبه:
الصورة الرمزية
البيانات الجنس : عدد المساهمات : 50 تاريخ التسجيل : 10/11/2012 العمر : 31
الإتصالات الحالة: وسائل الإتصال:
موضوع: رد: تصليح نظام التناسخ (السرد ريبورن)
Ahmed Aboalia ; توقيع العضو
الــرد الســـريـع هام جداً: قوانين المساهمة في المواضيع. انقر هنا للمعاينة احترم مواضيع الآخرين ليحترم الآخرون مواضيعك لا تحتكر الموضوع لنفسك بإرسال عدة مساهمات متتالية عند طرح موضوع يجب أن تتأكد أن عنوان الموضوع مناسب او لا تحل بحسن الخلق و بأدب الحوار و النقاش لا تنس أن اختلاف الرأي لا يفسد للود قضية, فلا تتهجم على عضو بدعوى أنه لا يشاطرك الرأي ان قطعت عهدآ مع عضو فأوفي بوعدك لأنه دين عليك إن حصل خلاف بينك و بين عضو حول مسألة ما فلا تناقشا المشكله على العام بل على الخاص ان احترمت هذه الشروط البسيطة, ضمنت حقوقك و عرفت واجباتك. و هذه افضل طريقة تضمن بها لنفسك ثم لمساهماتك و مواضيعك البقاء و لمنتداك الإزدهار في موقعنا إدارة منتديات فرتكة الرد السريع