|
المشاركات 2,517 |
+التقييم 1.29 |
تاريخ التسجيل Jul 2019 |
الاقامة |
نظام التشغيل |
رقم العضوية 358 |
public static void Sort(uint updateUID)
{
SafeDictionary<uint, NobilityInformation> sortedBoard = new SafeDictionary<uint, NobilityInformation>();
int Place = 0;
foreach (NobilityInformation entry in Board.Values.OrderByDescending((p) => p.Donation))
{
Client.GameState client = null;
try
{
int previousPlace = entry.Position;
entry.Position = Place;
NobilityRank Rank = NobilityRank.Serf;
if (Place >= 50)
{
if (entry.Donation == 1)
{
Rank = NobilityRank.King;
}
else
{
if (entry.Donation >= 200000000)
{
Rank = NobilityRank.Earl;
}
else if (entry.Donation >= 100000000)
{
Rank = NobilityRank.Baron;
}
else if (entry.Donation >= 30000000)
{
Rank = NobilityRank.Knight;
}
else
{
Rank = NobilityRank.Serf;
}
}
}
else
{
if (entry.Donation == 1)
{
Rank = NobilityRank.King;
}
else
{
if (Place < 2)//serverrank
{
Rank = NobilityRank.King;
}
else if (Place < 24)
{
Rank = NobilityRank.Prince;
}
else
{
Rank = NobilityRank.Duke;
}
}
}
var oldRank = entry.Rank;
entry.Rank = Rank;
if (Kernel.GamePool.TryGetValue(entry.EntityUID, out client))
{
bool updateTheClient = false;
if (oldRank != Rank)
{
updateTheClient = true;
if (Rank == NobilityRank.Duke)
{
Kernel.SendWorldMessage(new Message("Congratulation! " + client.Entity.Name + " has the Duke title in Frozen||Hell.", System.Drawing.Color.White, Message.Center), Program.Values);
}
if (Rank == NobilityRank.Prince)
{
Kernel.SendWorldMessage(new Message("Congratulation! " + client.Entity.Name + " has the Prince title in Frozen||Hell.", System.Drawing.Color.White, Message.Center), Program.Values);
}
if (Rank == NobilityRank.King)
{
Kernel.SendWorldMessage(new Message("Congratulation! " + client.Entity.Name + " has become the new King/Queen in Frozen||Hell.", System.Drawing.Color.White, Message.Center), Program.Values);
}
}
else
{
if (previousPlace != Place)
{
updateTheClient = true;
}
}
if (updateTheClient || client.Entity.UID == updateUID)
{
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = entry.EntityUID;
update.UpdateString(entry);
client.SendScreen(update, true);
client.Entity.NobilityRank = entry.Rank;
}
}
sortedBoard.Add(entry.EntityUID, entry);
Place++;
}
catch { }
}
Board = sortedBoard;
lock (BoardList)
BoardList = Board.Values.ToList();
}
الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1) | |
|
الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
كوستة الدونشين بطريقه جديده | محمد ياسر | تطوير سيرفرات كونكر | 2 | 2023-10-09 07:29 AM |
مشكله في DonationTime الدونشين بوقت | Tyranny-Team's | مشكلات السيرفيرات كونكر الشخصيه | 9 | 2020-04-19 07:43 AM |
جعل التبرع في الدونشين بcps فقط | Tefa | تطوير سيرفرات كونكر | 1 | 2019-08-27 08:27 PM |
سيرفر كولو كنجات وواحد صعب خش هتستفاد | kotb | اعلانات السيرفيرات الشخصية | 0 | 2019-07-30 11:26 PM |