SourceDanger
2020-02-19, 01:43 PM
مبدائيا نصلي على حضرت النبي
انا كنت قايل اني هنزل المسابقه هنا وانا لم بقول بعمل علطول
الحمد الله انا مش بى ابص لى اي شئ حتها لو كبير لانو بختصار الدنيا فنيه
يالا نبداء موضعنا بقا على بركه الله
اول حاجه شرح المسابقه علشان الى معندهوش فكره عنها
5iOnwaCVCI8
جميل جدا نخش بقا على التركيب
دة شرح التركيب كامل !! يالا علشان خاطر محدش يتعب نفسو فى حاجه انا عملتلكو ولله شرح جميل قوي مده 17 دقيقه بس هتستفيدو منو قوي
5Ypv-XiXyp8
اول شئ نصلي على حضرت النبي
اول شئ هنعمل كلاس جديد باسم
KingsWar.cs
using Conquer_Online_Server.Network.GamePackets;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Conquer_Online_Server.Events
{
public class KingsWar
{
public static System.DateTime StartTime;
public static Time32 ScoreSendStamp;
public static int StartHour = 18, StartMinute = 00, EndMinute = 30;
public static bool IsWar = false;
public static bool FirstRound = false;
public static bool Claim
{
get { return Program.Vars["KingsWarClaim"]; }
set { Program.Vars["KingsWarClaim"] = value; }
}
public static uint KeeperID
{
get { return Program.Vars["KingsWarID"]; }
set { Program.Vars["KingsWarID"] = value; }
}
public static SobNpcSpawn Pole;
public static Client.GameState PoleKeeper, CurrentTop;
private static bool changed = false;
private static string[] scoreMessages;
public static SafeDictionary<uint, Client.GameState> Scores = new SafeDictionary<uint, Client.GameState>();
public static void Initiate()
{
var Map = Kernel.Maps[1500];
Pole = (SobNpcSpawn)Map.Npcs[1500];
}
public static void Start()
{
StartTime = System.DateTime.Now;
Scores = new SafeDictionary<uint, Client.GameState>(100);
Pole.Hitpoints = Pole.MaxHitpoints;
Kernel.SendWorldMessage(new Message("KingsWar war has began!", System.Drawing.Color.Red, Message.Center), Program.Values);
FirstRound = true;
foreach (var Client in Kernel.GamePool.Values)
{
Client.KingsWarScore = 0;
}
Claim = false;
IsWar = true;
foreach (var client in Program.Values)
client.MessageBox("KingsWar has started. JOIN NOW ?",
(p) => { p.Player.Teleport(1002, 301, 160); }, null, 60);
}
public static void End()
{
if (PoleKeeper != null)
{
Kernel.SendWorldMessage(new Message(PoleKeeper.Player.Name + " has won KingsWar!---KingsWar has ended! Go clime Your Prize", System.Drawing.Color.White, Message.Center), Program.Values);
}
else
{
Kernel.SendWorldMessage(new Message("KingsWar has ended and there was no winner!", System.Drawing.Color.Red, Message.Center), Program.Values);
}
IsWar = false;
Claim = true;
}
public static void Reset()
{
Scores = new SafeDictionary<uint, Client.GameState>(100);
Pole.MaxHitpoints = Pole.MaxHitpoints;
Pole.Hitpoints = Pole.MaxHitpoints;
foreach (var Client in Kernel.GamePool.Values)
{
Client.KingsWarScore = 0;
}
IsWar = true;
}
public static void FinishRound()
{
FirstRound = false;
SortScores(out PoleKeeper);
if (PoleKeeper != null)
{
KeeperID = PoleKeeper.Player.UID;
Kernel.SendWorldMessage(new Message(PoleKeeper.Player.Name + ", has won this KingWar Round!", System.Drawing.Color.Red, Message.Center), Program.Values);
Pole.Name = PoleKeeper.Player.Name;
}
Pole.MaxHitpoints = Pole.MaxHitpoints;
Pole.Hitpoints = Pole.MaxHitpoints;
Kernel.SendWorldMessage(Pole, Program.Values, (ushort)1500);
Reset();
}
public static void AddScore(uint addScore, Client.GameState client)
{
if (client != null)
{
client.KingsWarScore += addScore;
changed = true;
if (!Scores.ContainsKey(client.Player.UID))
Scores.Add(client.Player.UID, client);
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 CurrentTop);
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)1500);
}
}
private static void SortScores(out Client.GameState winner)
{
winner = null;
List<string> ret = new List<string>();
int Place = 0;
foreach (var client in Scores.Values.OrderByDescending((p) => p.KingsWarScore))
{
if (Place == 0)
winner = client;
string str = "No " + (Place + 1).ToString() + ": " + client.Player.Name + "(" + client.KingsWarScore + ")";
ret.Add(str);
Place++;
if (Place == 4)
break;
}
changed = false;
scoreMessages = ret.ToArray();
}
}
}
ونضيفو بالشكل دة
بعد كدا
هتغير طبعا اسم البروجكت شوف مثلان انت عندك اسمو اي وهتضيفو زي عندي
Conquer_Online_Server
هتخليه اسم البروجكت بتاعك
جميل جدا بعد كدا هنخش على Handle
هنبحث عن
public static void ReceiveAttack(Game.Entity attacker, SobNpcSpawn
هتنزل تحت شوية
وهتضيف الكود دة
#region KingsWar
if (Events.KingsWar.IsWar)
{
if (attacker.MapID == 1500)
{
if (attacked.UID == 1500)
{
if (Events.KingsWar.PoleKeeper != null)
{
if (Events.KingsWar.PoleKeeper.Player.UID == attacker.UID)
{
return;
}
}
if (attacked.Hitpoints <= damage)
{
attacked.Hitpoints = 0;
}
Events.KingsWar.AddScore(damage, attacker.Owner);
}
}
}
#endregion
بعد كدا هنضيف الاني بى سى دة
#region InNpc
case 15000:
{
switch (npcRequest.OptionID)
{
case 0:
{
dialog.Text("Kings war starts at xx:20. Inside your nobility rank will be promoted to be king and all the players will be equivalent. You'll have the chace of beating up your rivals.");
dialog.Option("Lemme in.", 1);
if (Events.KingsWar.KeeperID != 0)
{
if (Events.KingsWar.KeeperID == client.Player.UID)
{
dialog.Option("Lemme claim.", 2);
}
}
dialog.Option("Later.", 255);
dialog.Send();
break;
}
case 1:
{
if (Events.KingsWar.IsWar)
{
client.Player.Teleport(1500, 141, 134);
}
else
{
dialog.Text("The War hasn't started yet it starts at (00:20)");
dialog.Send();
}
break;
}
case 2:
{
if (Events.KingsWar.Claim == true)
{
Events.KingsWar.Claim = false;
client.Player.ConquerPoints += 5000000;
client.Player.Money += 5000000;
uint random = (ushort)Conquer_Online_Server.Kernel.Random.Next(1 , 300);
client.ChampionPoints += random;
//client.Inventory.Add(723720, 0, 1);
client.Player.AddTopStatus((ulong)Conquer_Online_S erver.Network.GamePackets.Update.Flags3.jaspr, 3, DateTime.Now.AddHours(1));
Kernel.SendWorldMessage(new Message(client.Player.Name + " has won [" + random + "]Champion points . From KingsWar ! and Got 5m [Cps-Gold]", System.Drawing.Color.White, Message.Center), Program.Values);
//client.Inventory.Add(3009003, 0, 1);
//client.Inventory.Add(3009003, 0, 1);
//client.Inventory.Add(3009003, 0, 1);
}
else
{
dialog.Text("You already claimed your prize");
dialog.Send();
}
break;
}
}
break;
}
#endregion
بعد كدا هنخش على
World.cs
وهنبحث عن
private void BuffersCallback(GameState client, int time)
هننزل تحت شوية لحد الكود دة كدا
بعد كدا هنضيف الكود دة
#region KingsWar
if (client.Player.MapID == 1500)
{
if (client.Player.NobilityRank != NobilityRank.King)
{
client.TempNobilityInformation = new NobilityInformation();
client.TempNobilityInformation.Rank = client.NobilityInformation.Rank;
client.NobilityInformation.Rank = NobilityRank.King;
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = client.Player.UID;
update.UpdateString(client.NobilityInformation);
client.SendScreen(update, true);
client.Player.NobilityRank = client.NobilityInformation.Rank;
}
}
else
{
if (client.TempNobilityInformation != null)
{
client.NobilityInformation.Rank = client.TempNobilityInformation.Rank;
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = client.Player.UID;
update.UpdateString(client.NobilityInformation);
client.SendScreen(update, true);
client.Player.NobilityRank = client.NobilityInformation.Rank;
client.TempNobilityInformation = null;
}
}
if (client.Player.MapID == 1500)
{
if (Events.KingsWar.IsWar == false)
{
client.Player.Teleport(1002, 299, 285);
}
}
#endregion
بعد كدا هننزل على
private void WorldTournaments(int time)
ونضيف الرساله علشان لم يشتغل التوب
#region KingsWar[xx:20 - xx:40]
if (Events.KingsWar.IsWar)
{
if (Time32.Now > Events.KingsWar.ScoreSendStamp.AddSeconds(57))
{
Events.KingsWar.ScoreSendStamp = Time32.Now;
Events.KingsWar.SendScores();
}
}
if (Now64.Minute == 25 && !Events.KingsWar.IsWar)
{
Events.KingsWar.Start();
}
if (Events.KingsWar.IsWar)
{
if (Now64.Minute == 40 && Events.KingsWar.IsWar)
Events.KingsWar.End();
}
#endregion
في Program
هتبحث عن
if (DMaps.LoadMap(1038))
هتضيف تحت
Game.Guildwar
الكود دة
if (DMaps.LoadMap(1500))
Events.KingsWar.Initiate();
بس بكدا نكون انتيها وطبعا علشان مننسيش هنضيف الاني بى سي فى نافي كات
هنفتح Npcs ونضيف بقا الكود
طبعا هنا بيقولك علشان اسم البروجكيت !!
طبعا دة كود توب ملهوش لازمه
فا احنا هنقفل عليه
برضو دة هنشيلو ملهوش لازمه
تمم قوي
بعد كدا هنخش على GameState.cs
او ممكن تكون عندك فى سورسك GameClient.cs
المهمه بعد كدا هننزل تحت خلص
public uint KingsWarScore;
public Game.ConquerStructures.NobilityInformation TempNobilityInformation;
هنضيفو تحت اي كود هنا !!
كدا تمم بعد كدا بقا
هنحل الايرورات التافه دي !!
طبعا لو ما اتحلتش حتها بعد الحل دة
بختصار هنعمل كدا _^_
بس كدا !!
يعني انت هتضيف اسم البروجكت بتعاك بس مش كدا :*
كدا تم الانتهاء من الاضافه
دة كود الفلوس
اول حاجه نحط ايدي
وبعد كدا الاسم
التب 2
طبعا ناس هتسائل ليه ال تب 2 علشان خاطر دة Npc لو مثلان
شوب هيبقا بدل 2 1
وكدا يعني ^_^
زي Shoping Mail كدا
اللوك فيس اي لوك يعجبك
مش كميه
هنا هنضيف في التون ستي
بعد كدا الارقام فى التون
انا هحط مثلان
كدا كدا دة تجربه !! يعني
نجرب كدا بقا !!
طبعا لو حصل ايرور زي دة انا بعتذر فيه شئ نسيت اضيفو فى القاعده
هنخش على SobNpcs
وهنضيف الايدي بتاع البوله
1500 بعد كدا اسم البوله KingsWar بعد كدا التب 10
10
وبعد كدا Look face 1137
بعد كدا ايدي المابه
84
99
5000000
دة هلس العمود
نجرب بقا نفتح تاني ^ كدا
جميل جدا
نفتح بقا العبه
ونشوف كدا !!
اسف فى التطويل
بس دة شرح مفصل
ما علينا بعد كدا هنفتح التوب بتعنا :*
طبعا كنت هنسها حاجه مهمه اقولكم عليه
لم تنزلو الاني بى سى فى التون طبعا انتو عايزنا الرساله توصلكو فى وش الراجل
هنروح على الكود دة
هنعدل هنا هنكتب الارقام الى هي زي كدا
نجرب كدا بقا
هنفتح التوب من جديد علشان نشوف كدا !!
زي ما انتو شايفين كدا
اه جبنا فى وش الراجل
نخش بقا التوب
طبعا انا مش كنج فا من الطبيعي اني مش هعرف اضرب العمود ^_^
مش قصه يعني
قصدي انا اكونتي نوب
هلبس اسطفه
طبعا زي ما انتو شايفين كدا المهمه شغاله هنقفل التوب علشنا نشوف الجايزه بتعتنا
طبعا زي ما قولت فوق لو عايز تزبط السباس هتعدلو من ConquerPoints
بس كدا
واسف لو اطلت فى الشرح بس دة هيفيدكو كثير قوي
ونسيت انوها على شئ لو حصل وجبلك مشكله فى كلمه .Player.
هتخليه .Entity.
بس كدا على حساب يعني السورس بتعاك علشان محدش يجي يقولي انا مقولتهلوش حاجه
:* يالا اشوف وشكو بخير فى شروحات تانيه وسلام عليكم ورحمه الله وبركاته
كان معاكو خالد محمد
ودة التكسيت الى فيه اضافه التوب
عفواً لايمكن عرض الروابط في الإرشيف
مش طلب غير انو كل الناس تفيد غيرها يعني استفيد وفيد غيرك وخير الناس انفعهم للناس متبصوش لى العاب ولا سورسات كلوها ريح وشكرا :emoji21:
انا كنت قايل اني هنزل المسابقه هنا وانا لم بقول بعمل علطول
الحمد الله انا مش بى ابص لى اي شئ حتها لو كبير لانو بختصار الدنيا فنيه
يالا نبداء موضعنا بقا على بركه الله
اول حاجه شرح المسابقه علشان الى معندهوش فكره عنها
5iOnwaCVCI8
جميل جدا نخش بقا على التركيب
دة شرح التركيب كامل !! يالا علشان خاطر محدش يتعب نفسو فى حاجه انا عملتلكو ولله شرح جميل قوي مده 17 دقيقه بس هتستفيدو منو قوي
5Ypv-XiXyp8
اول شئ نصلي على حضرت النبي
اول شئ هنعمل كلاس جديد باسم
KingsWar.cs
using Conquer_Online_Server.Network.GamePackets;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Conquer_Online_Server.Events
{
public class KingsWar
{
public static System.DateTime StartTime;
public static Time32 ScoreSendStamp;
public static int StartHour = 18, StartMinute = 00, EndMinute = 30;
public static bool IsWar = false;
public static bool FirstRound = false;
public static bool Claim
{
get { return Program.Vars["KingsWarClaim"]; }
set { Program.Vars["KingsWarClaim"] = value; }
}
public static uint KeeperID
{
get { return Program.Vars["KingsWarID"]; }
set { Program.Vars["KingsWarID"] = value; }
}
public static SobNpcSpawn Pole;
public static Client.GameState PoleKeeper, CurrentTop;
private static bool changed = false;
private static string[] scoreMessages;
public static SafeDictionary<uint, Client.GameState> Scores = new SafeDictionary<uint, Client.GameState>();
public static void Initiate()
{
var Map = Kernel.Maps[1500];
Pole = (SobNpcSpawn)Map.Npcs[1500];
}
public static void Start()
{
StartTime = System.DateTime.Now;
Scores = new SafeDictionary<uint, Client.GameState>(100);
Pole.Hitpoints = Pole.MaxHitpoints;
Kernel.SendWorldMessage(new Message("KingsWar war has began!", System.Drawing.Color.Red, Message.Center), Program.Values);
FirstRound = true;
foreach (var Client in Kernel.GamePool.Values)
{
Client.KingsWarScore = 0;
}
Claim = false;
IsWar = true;
foreach (var client in Program.Values)
client.MessageBox("KingsWar has started. JOIN NOW ?",
(p) => { p.Player.Teleport(1002, 301, 160); }, null, 60);
}
public static void End()
{
if (PoleKeeper != null)
{
Kernel.SendWorldMessage(new Message(PoleKeeper.Player.Name + " has won KingsWar!---KingsWar has ended! Go clime Your Prize", System.Drawing.Color.White, Message.Center), Program.Values);
}
else
{
Kernel.SendWorldMessage(new Message("KingsWar has ended and there was no winner!", System.Drawing.Color.Red, Message.Center), Program.Values);
}
IsWar = false;
Claim = true;
}
public static void Reset()
{
Scores = new SafeDictionary<uint, Client.GameState>(100);
Pole.MaxHitpoints = Pole.MaxHitpoints;
Pole.Hitpoints = Pole.MaxHitpoints;
foreach (var Client in Kernel.GamePool.Values)
{
Client.KingsWarScore = 0;
}
IsWar = true;
}
public static void FinishRound()
{
FirstRound = false;
SortScores(out PoleKeeper);
if (PoleKeeper != null)
{
KeeperID = PoleKeeper.Player.UID;
Kernel.SendWorldMessage(new Message(PoleKeeper.Player.Name + ", has won this KingWar Round!", System.Drawing.Color.Red, Message.Center), Program.Values);
Pole.Name = PoleKeeper.Player.Name;
}
Pole.MaxHitpoints = Pole.MaxHitpoints;
Pole.Hitpoints = Pole.MaxHitpoints;
Kernel.SendWorldMessage(Pole, Program.Values, (ushort)1500);
Reset();
}
public static void AddScore(uint addScore, Client.GameState client)
{
if (client != null)
{
client.KingsWarScore += addScore;
changed = true;
if (!Scores.ContainsKey(client.Player.UID))
Scores.Add(client.Player.UID, client);
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 CurrentTop);
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)1500);
}
}
private static void SortScores(out Client.GameState winner)
{
winner = null;
List<string> ret = new List<string>();
int Place = 0;
foreach (var client in Scores.Values.OrderByDescending((p) => p.KingsWarScore))
{
if (Place == 0)
winner = client;
string str = "No " + (Place + 1).ToString() + ": " + client.Player.Name + "(" + client.KingsWarScore + ")";
ret.Add(str);
Place++;
if (Place == 4)
break;
}
changed = false;
scoreMessages = ret.ToArray();
}
}
}
ونضيفو بالشكل دة
بعد كدا
هتغير طبعا اسم البروجكت شوف مثلان انت عندك اسمو اي وهتضيفو زي عندي
Conquer_Online_Server
هتخليه اسم البروجكت بتاعك
جميل جدا بعد كدا هنخش على Handle
هنبحث عن
public static void ReceiveAttack(Game.Entity attacker, SobNpcSpawn
هتنزل تحت شوية
وهتضيف الكود دة
#region KingsWar
if (Events.KingsWar.IsWar)
{
if (attacker.MapID == 1500)
{
if (attacked.UID == 1500)
{
if (Events.KingsWar.PoleKeeper != null)
{
if (Events.KingsWar.PoleKeeper.Player.UID == attacker.UID)
{
return;
}
}
if (attacked.Hitpoints <= damage)
{
attacked.Hitpoints = 0;
}
Events.KingsWar.AddScore(damage, attacker.Owner);
}
}
}
#endregion
بعد كدا هنضيف الاني بى سى دة
#region InNpc
case 15000:
{
switch (npcRequest.OptionID)
{
case 0:
{
dialog.Text("Kings war starts at xx:20. Inside your nobility rank will be promoted to be king and all the players will be equivalent. You'll have the chace of beating up your rivals.");
dialog.Option("Lemme in.", 1);
if (Events.KingsWar.KeeperID != 0)
{
if (Events.KingsWar.KeeperID == client.Player.UID)
{
dialog.Option("Lemme claim.", 2);
}
}
dialog.Option("Later.", 255);
dialog.Send();
break;
}
case 1:
{
if (Events.KingsWar.IsWar)
{
client.Player.Teleport(1500, 141, 134);
}
else
{
dialog.Text("The War hasn't started yet it starts at (00:20)");
dialog.Send();
}
break;
}
case 2:
{
if (Events.KingsWar.Claim == true)
{
Events.KingsWar.Claim = false;
client.Player.ConquerPoints += 5000000;
client.Player.Money += 5000000;
uint random = (ushort)Conquer_Online_Server.Kernel.Random.Next(1 , 300);
client.ChampionPoints += random;
//client.Inventory.Add(723720, 0, 1);
client.Player.AddTopStatus((ulong)Conquer_Online_S erver.Network.GamePackets.Update.Flags3.jaspr, 3, DateTime.Now.AddHours(1));
Kernel.SendWorldMessage(new Message(client.Player.Name + " has won [" + random + "]Champion points . From KingsWar ! and Got 5m [Cps-Gold]", System.Drawing.Color.White, Message.Center), Program.Values);
//client.Inventory.Add(3009003, 0, 1);
//client.Inventory.Add(3009003, 0, 1);
//client.Inventory.Add(3009003, 0, 1);
}
else
{
dialog.Text("You already claimed your prize");
dialog.Send();
}
break;
}
}
break;
}
#endregion
بعد كدا هنخش على
World.cs
وهنبحث عن
private void BuffersCallback(GameState client, int time)
هننزل تحت شوية لحد الكود دة كدا
بعد كدا هنضيف الكود دة
#region KingsWar
if (client.Player.MapID == 1500)
{
if (client.Player.NobilityRank != NobilityRank.King)
{
client.TempNobilityInformation = new NobilityInformation();
client.TempNobilityInformation.Rank = client.NobilityInformation.Rank;
client.NobilityInformation.Rank = NobilityRank.King;
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = client.Player.UID;
update.UpdateString(client.NobilityInformation);
client.SendScreen(update, true);
client.Player.NobilityRank = client.NobilityInformation.Rank;
}
}
else
{
if (client.TempNobilityInformation != null)
{
client.NobilityInformation.Rank = client.TempNobilityInformation.Rank;
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = client.Player.UID;
update.UpdateString(client.NobilityInformation);
client.SendScreen(update, true);
client.Player.NobilityRank = client.NobilityInformation.Rank;
client.TempNobilityInformation = null;
}
}
if (client.Player.MapID == 1500)
{
if (Events.KingsWar.IsWar == false)
{
client.Player.Teleport(1002, 299, 285);
}
}
#endregion
بعد كدا هننزل على
private void WorldTournaments(int time)
ونضيف الرساله علشان لم يشتغل التوب
#region KingsWar[xx:20 - xx:40]
if (Events.KingsWar.IsWar)
{
if (Time32.Now > Events.KingsWar.ScoreSendStamp.AddSeconds(57))
{
Events.KingsWar.ScoreSendStamp = Time32.Now;
Events.KingsWar.SendScores();
}
}
if (Now64.Minute == 25 && !Events.KingsWar.IsWar)
{
Events.KingsWar.Start();
}
if (Events.KingsWar.IsWar)
{
if (Now64.Minute == 40 && Events.KingsWar.IsWar)
Events.KingsWar.End();
}
#endregion
في Program
هتبحث عن
if (DMaps.LoadMap(1038))
هتضيف تحت
Game.Guildwar
الكود دة
if (DMaps.LoadMap(1500))
Events.KingsWar.Initiate();
بس بكدا نكون انتيها وطبعا علشان مننسيش هنضيف الاني بى سي فى نافي كات
هنفتح Npcs ونضيف بقا الكود
طبعا هنا بيقولك علشان اسم البروجكيت !!
طبعا دة كود توب ملهوش لازمه
فا احنا هنقفل عليه
برضو دة هنشيلو ملهوش لازمه
تمم قوي
بعد كدا هنخش على GameState.cs
او ممكن تكون عندك فى سورسك GameClient.cs
المهمه بعد كدا هننزل تحت خلص
public uint KingsWarScore;
public Game.ConquerStructures.NobilityInformation TempNobilityInformation;
هنضيفو تحت اي كود هنا !!
كدا تمم بعد كدا بقا
هنحل الايرورات التافه دي !!
طبعا لو ما اتحلتش حتها بعد الحل دة
بختصار هنعمل كدا _^_
بس كدا !!
يعني انت هتضيف اسم البروجكت بتعاك بس مش كدا :*
كدا تم الانتهاء من الاضافه
دة كود الفلوس
اول حاجه نحط ايدي
وبعد كدا الاسم
التب 2
طبعا ناس هتسائل ليه ال تب 2 علشان خاطر دة Npc لو مثلان
شوب هيبقا بدل 2 1
وكدا يعني ^_^
زي Shoping Mail كدا
اللوك فيس اي لوك يعجبك
مش كميه
هنا هنضيف في التون ستي
بعد كدا الارقام فى التون
انا هحط مثلان
كدا كدا دة تجربه !! يعني
نجرب كدا بقا !!
طبعا لو حصل ايرور زي دة انا بعتذر فيه شئ نسيت اضيفو فى القاعده
هنخش على SobNpcs
وهنضيف الايدي بتاع البوله
1500 بعد كدا اسم البوله KingsWar بعد كدا التب 10
10
وبعد كدا Look face 1137
بعد كدا ايدي المابه
84
99
5000000
دة هلس العمود
نجرب بقا نفتح تاني ^ كدا
جميل جدا
نفتح بقا العبه
ونشوف كدا !!
اسف فى التطويل
بس دة شرح مفصل
ما علينا بعد كدا هنفتح التوب بتعنا :*
طبعا كنت هنسها حاجه مهمه اقولكم عليه
لم تنزلو الاني بى سى فى التون طبعا انتو عايزنا الرساله توصلكو فى وش الراجل
هنروح على الكود دة
هنعدل هنا هنكتب الارقام الى هي زي كدا
نجرب كدا بقا
هنفتح التوب من جديد علشان نشوف كدا !!
زي ما انتو شايفين كدا
اه جبنا فى وش الراجل
نخش بقا التوب
طبعا انا مش كنج فا من الطبيعي اني مش هعرف اضرب العمود ^_^
مش قصه يعني
قصدي انا اكونتي نوب
هلبس اسطفه
طبعا زي ما انتو شايفين كدا المهمه شغاله هنقفل التوب علشنا نشوف الجايزه بتعتنا
طبعا زي ما قولت فوق لو عايز تزبط السباس هتعدلو من ConquerPoints
بس كدا
واسف لو اطلت فى الشرح بس دة هيفيدكو كثير قوي
ونسيت انوها على شئ لو حصل وجبلك مشكله فى كلمه .Player.
هتخليه .Entity.
بس كدا على حساب يعني السورس بتعاك علشان محدش يجي يقولي انا مقولتهلوش حاجه
:* يالا اشوف وشكو بخير فى شروحات تانيه وسلام عليكم ورحمه الله وبركاته
كان معاكو خالد محمد
ودة التكسيت الى فيه اضافه التوب
عفواً لايمكن عرض الروابط في الإرشيف
مش طلب غير انو كل الناس تفيد غيرها يعني استفيد وفيد غيرك وخير الناس انفعهم للناس متبصوش لى العاب ولا سورسات كلوها ريح وشكرا :emoji21: