المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : كـويست WarOfPlayers نـآس كـتير مـحتجآهآ


MaZzGanGYy
2019-11-21, 03:09 PM
بـسم اللـه الـرحمن الـرحيـم




شـرح الكـويست


بـتبدأ فـ الدقـيقة 50

النـآس بـتخش وبـيبقآ فـ بـولـة الكـل بـيضرب فـيهآآ

الكـويست بـتخليهآ شـغآلة 10 دقآيق

والـي بيـجي آسـمو عـليهآ بـيكسب والنـآس كـلهآ بـتروح الـتون




نـخش فـ الآضآفـة


هـتعمل
كـلآس جـديد بآسـم WarOfPlayers.cs

وتـرمي فـيهم

//Copyright MaZzGanGy 2019 - 2020
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MaZzGanGy.Client;
using MaZzGanGy.Interfaces;
using MaZzGanGy.Network.GamePackets;
using System.Drawing;
using MaZzGanGy.Network;
using MaZzGanGy.Game.ConquerStructures;
using System.Threading.Generic;
using MaZzGanGy.Game.ConquerStructures.Society;

namespace MaZzGanGy.Game
{
public class WarOfPlayers
{
public static SobNpcSpawn Pole;
public static DateTime WarStart;
public static Map Map;
public static bool IsWar = false;
private IDisposable Subscriber;

public WarOfPlayers()
{
Map = Kernel.Maps[700].MakeDynamicMap();
Subscriber = World.Subscribe(work, 1000);

}
public void work(int time)
{
if (IsWar)
if (DateTime.Now > WarStart.AddMinutes(10))
EndWar();

if (DateTime.Now.Minute == 50 && !IsWar)
StartWar();

if (IsWar)
{
if (Time32.Now > ScoreSendStamp.AddSeconds(3))
{
ScoreSendStamp = Time32.Now;
SendScores();
}
}


}
public static void Join(Client.GameState client) //Make By MaZzGanGy
{
if (IsWar)
{
if (client.AsMember == null)
//client.MessageBox("Please Into in Guild First.");
return;
var cooord = Map.RandomCoordinates();
client.Entity.Teleport(Map.ID, 37, 50);
client.Entity.Teleport(Map.ID, 46, 37);
client.Entity.Teleport(Map.ID, 46, 46);
client.Entity.Teleport(Map.ID, 40, 40);
client.Entity.Teleport(Map.ID, 37, 40);
if (!Map.Floor[client.Entity.X, client.Entity.Y, Game.MapObjectType.Entity, null])
{
client.Entity.PKMode = Game.Enums.PKMode.PK;
client.Send(new Data(true) { UID = client.Entity.UID, ID = Data.ChangePKMode, dwParam = (uint)client.Entity.PKMode });
}

client.Send(Pole);
client.OnDisconnect = p =>
{
p.Entity.Teleport(1002, 300, 278);
};
}
}

public static void StartWar()
{
try
{
if (IsWar)
EndWar();
PoleKeeper = null;
IsWar = true;
WarStart = DateTime.Now;
//Database.DMaps.LoadMap(1002);
//Map = Kernel.Maps[1002].MakeDynamicMap();
if (!Kernel.Maps.ContainsKey(Map.ID))
Kernel.Maps.Add(Map.ID, Map);
if (!Database.MapsTable.MapInformations.ContainsKey(M ap.ID))
Database.MapsTable.MapInformations.Add(Map.ID, new Database.MapsTable.MapInformation() { ID = Map.ID, BaseID = Map.BaseID });
Constants.PKForbiddenMaps.Remove(Map.ID);
Constants.PKFreeMaps.Add(Map.ID);
Kernel.SendWorldMessage(new Message(" WarOfPlayers War began ", Color.White, Message.BroadcastMessage), Program.Values);
foreach (var client in Program.Values)
client.MessageBox("You Want To Join WarOfPlayers and Got 50.000.000 Cps from the War ?",
p => { p.Entity.Teleport(1002, 300, 300); }, null, 60);

#region WarOfPlayersPole // BY MaZzGanGy
Pole = new Network.GamePackets.SobNpcSpawn();
Pole.UID = Map.EntityUIDCounter2.Next;
Pole.Mesh = 1137;
Pole.Type = (Enums.NpcType)10;
Pole.X = 50;
Pole.Y = 50;
Pole.ShowName = true;
Pole.Sort = 17;
Pole.Hitpoints = 20000000;
Pole.MaxHitpoints = 20000000;
Pole.Name = "WarOfPlayers";
Pole.MapID = Map.ID;
#endregion

Map.AddNpc(Pole);//.Npcs.Add(WarOfPlayersPole.UID, WarOfPlayersPole);
}
catch (Exception ex)
{
Console.WriteLine(ex);
Program.SaveException(ex);
}
}

#region Score
public static SafeDictionary<uint, Guild.Member> Scores = new SafeDictionary<uint, Guild.Member>(100);
public static Guild.Member PoleKeeper, CurrentTopLeader;
private static bool changed = false;
private static string[] scoreMessages;
public static bool FirstRound = false;
public static Time32 ScoreSendStamp, LastWin;
public static bool Claim
{
get { return Program.Vars["stwclaim"]; }
set { Program.Vars["stwclaim"] = value; }
}
public static uint KeeperID
{
get { return Program.Vars["stwkeeperid"]; }
set { Program.Vars["stwkeeperid"] = value; }
}
public static void Start()
{
Scores = new SafeDictionary<uint, Guild.Member>(1000);
WarStart = DateTime.Now;
FirstRound = true;
foreach (Guild Guild in Kernel.Guilds.Values)
{
foreach (Guild.Member member in Guild.Members.Values)
member.WarScore = 0;
}
Claim = false;
IsWar = true;
}

public static void Reset()
{
Pole.Hitpoints = Pole.MaxHitpoints;
Update upd = new Update(true);
Kernel.SendWorldMessage(upd, Program.Values, (ushort)Map.ID);
upd.Clear();
foreach (Guild Guild in Kernel.Guilds.Values)
{
foreach (Guild.Member member in Guild.Members.Values)
member.WarScore = 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("" + PoleKeeper.Name + " Win At WarOfPlayers round!", System.Drawing.Color.Red, Message.Center), Program.Values);

Pole.Name = PoleKeeper.Name;
if (PoleKeeper.Client != null)
{


Game.Statue statue = new Statue(PoleKeeper.Client.Entity.SpawnPacket, 105176, Enums.ConquerAction.Cool, (byte)Enums.ConquerAngle.SouthWest, 327, 336, true);
statue = new Statue(PoleKeeper.Client.Entity.SpawnPacket, 105177, Enums.ConquerAction.Wave, (byte)Enums.ConquerAngle.SouthEast, 381, 260, true);


}
}
Pole.Hitpoints = Pole.MaxHitpoints;
// Kernel.SendWorldMessage(Pole, Program.GamePool, (ushort)Map.ID);
Reset();
foreach (var c in Program.Values)
if (c.Entity.MapID == Map.ID)
{
// c.SendScreenSpawn(Pole, true);
c.Screen.FullWipe();
c.Screen.Reload(null);
}


}

public static void AddScore(uint addScore, Guild.Member Guild)
{
if (Guild != null)
{
Guild.WarScore += 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)Map.ID);
}
}

private static void SortScores(out Guild.Member winner)
{
winner = null;
List<string> ret = new List<string>();
int Place = 0;
foreach (Guild.Member Guild in Scores.Values.OrderByDescending((p) => p.WarScore))
{
if (Place == 0)
winner = Guild;
string str = "No " + (Place + 1).ToString() + ": " + Guild.Name + "(" + Guild.WarScore + ")";
ret.Add(str);
Place++;
if (Place == 4)
break;
}

changed = false;
scoreMessages = ret.ToArray();
}
#endregion
public static void EndWar()
{
try
{
if (PoleKeeper != null)
{
Kernel.SendWorldMessage(new Message(PoleKeeper.Name + " Winnar & WarOfPlayers End ", System.Drawing.Color.White, Message.Center), Program.Values);

}
else
{
Kernel.SendWorldMessage(new Message("No Winner at WarOfPlayers and ended", System.Drawing.Color.Red, Message.Center), Program.Values);

}
Claim = true;
IsWar = false;
foreach (var client in Program.Values)
if (client.Entity.MapID == Map.ID)
client.Entity.Teleport(1002, 300, 278);
if (!Database.MapsTable.MapInformations.ContainsKey(M ap.ID))
Database.MapsTable.MapInformations.Remove(Map.ID);
Map.Dispose();
}
catch (Exception ex)
{
Console.WriteLine(ex);
Program.SaveException(ex);
}

}
}
}


هـتبحث عـن فـويد

void ReceiveAttack(Game.Entity attacker, SobNpcSpawn attacked,

وتـضيف فـية

#region WarOfPlayers
if (Game.WarOfPlayers.IsWar)
{
if (attacker.MapID == Game.WarOfPlayers.Map.ID)
{
if (attacked.UID == Game.WarOfPlayers.Pole.UID)
{
if (Game.WarOfPlayers.PoleKeeper == attacker.Owner.AsMember)
return;
if (attacked.Hitpoints <= damage)
attacked.Hitpoints = 0;
Game.WarOfPlayers.AddScore(damage, attacker.Owner.AsMember);
}
}
}
#endregion TWin War

وبـعدين هـتبحث عـن

public static bool CanAttack(Game.Entity attacker, SobNpcSpawn attacked,

وتـضيف فـية

#region WarOfPlayers
if (Game.WarOfPlayers.IsWar)
{
if (attacker.MapID == Game.WarOfPlayers.Map.ID)
{
if (attacker.GuildID == 0 || !Game.WarOfPlayers.IsWar)
if (attacked.UID == Game.WarOfPlayers.Pole.UID)
return false;
if (Game.WarOfPlayers.PoleKeeper != null)
{
if (Game.WarOfPlayers.PoleKeeper == attacker.Owner.AsMember)
if (attacked.UID == Game.WarOfPlayers.Pole.UID)
return false;
if (Game.WarOfPlayers.PoleKeeper == attacker.Owner.AsMember)
if (attacker.PKMode == Enums.PKMode.Team)
return false;

}
}
}
#endregion Twinwar

هـتروح لـكلاس SobNpcSpwan

وتـبحث عـن

public void Die(

وتـضيف تـحت القـوس

#region WarOfPlayers
if (Game.WarOfPlayers.Map != null)
{
if (MapID == Game.WarOfPlayers.Map.ID)
{
if (UID != Game.WarOfPlayers.Pole.UID)
{
if (Hitpoints != 0 || Mesh != 251 && Mesh != 281)
{
if (Mesh == 241)
Mesh = (ushort)(250 + Mesh % 10);
else
Mesh = (ushort)(280 + Mesh % 10);

Update upd = new Update(true);
upd.UID = UID;
upd.Append(Update.Mesh, Mesh);
killer.Owner.SendScreen(upd, true);
Hitpoints = 0;
}
Attack attack = new Attack(true);
attack.Attacker = killer.UID;
attack.Attacked = UID;
attack.AttackType = Network.GamePackets.Attack.Kill;
attack.X = X;
attack.Y = Y;
killer.Owner.Send(attack);
}
}
}
#endregion

ودآ الآن بي سي

#region WarOfPlayers
case 411622:
{
switch (npcRequest.OptionID)
{
case 0:
{
dialog.Text("Hello there. Do you want to Join The WarOfPlayers?.");
dialog.Option("Yes Please.", 1);
dialog.Option("Cliam Prize.", 2);
dialog.Option("Just Passing By!", 255);
dialog.Send();
break;
}
case 1:
{
if (WarOfPlayers.IsWar)
{
WarOfPlayers.Join(client);
}
else
{
dialog.Text("The War Has Not Started Start [xx.50] : [xx.00] Every Hour");
dialog.Option("Aww ok!", 255);
dialog.Send();
}
break;
}
case 2:
{
if (WarOfPlayers.KeeperID != 0 && !WarOfPlayers.IsWar && WarOfPlayers.Claim && client.Entity.UID == WarOfPlayers.KeeperID)
{
WarOfPlayers.Claim = false;
WarOfPlayers.KeeperID = 0;
client.Entity.ConquerPoints += 50000000;
//client.Entity.BoundCps += 50000;
MaZzGanGy.Kernel.SendWorldMessage(new Message(" Congratulations ! " + client.Entity.Name + " has Claimed WarOfPlayers Prize [50.000.000] ConquerPoints", System.Drawing.Color.White, Message.Center), Program.Values);
}
else
{
dialog.Text("Sorry you dont have Any Prize to claim only CL of the winner guild can claim Prize After CW");
dialog.Option("Ahh.", 255);
dialog.Send();
}

break;
}
}
break;
}
#endregion

هـتروح عـ World

هـتبحث عـن

void CreateTournaments()

وتـضيف فـية

new Game.WarOfPlayers();


صـورة

عفواً لايمكن عرض الروابط في الإرشيف (عفواً لايمكن عرض الروابط في الإرشيف)

وبس كدا

ومـبروك عـليك الكـويست (:

محمد ياسر
2019-11-21, 03:29 PM
عاش استمر

Hassan Emprator
2019-11-21, 03:29 PM
عاش يحب الله ينور عليك

Hassan Emprator
2019-11-21, 03:29 PM
بس طلعت كويسته عاديه انا بشوفها في سورسات كتير بس بحسبها كويست جامده بس طلعت هايفه شويه

MaZzGanGYy
2019-11-21, 03:33 PM
بس طلعت كويسته عاديه انا بشوفها في سورسات كتير بس بحسبها كويست جامده بس طلعت هايفه شويه

شـوفتهآ فـي آنهي سـورس ! دي مكنتش مـوجودة الا فـ اليكـس بس ! !

ومتعملتش قـبل كدآ آصـلآ

ومـعلش آنـآ بـحب الهـيآفة

محمد ياسر
2019-11-21, 03:37 PM
بس طلعت كويسته عاديه انا بشوفها في سورسات كتير بس بحسبها كويست جامده بس طلعت هايفه شويه

معلش ياعم المشرف انا بحب الهيافه ههههههه علي الاقل انت منزلتهاش

Hassan Emprator
2019-11-21, 03:50 PM
معلش ياعم المشرف انا بحب الهيافه ههههههه علي الاقل انت منزلتهاش



هههههههههه مش عشان انا منلزتهاش ولله حاجه انا كنت بشوفها في سورسات عاديه بس ايه


بحسب انها كويسته كبيره وفاجره كدا فا لم الشوفت الصوره قولت انها زي اي كويسته عاديه :d

Hassan Emprator
2019-11-21, 03:50 PM
شـوفتهآ فـي آنهي سـورس ! دي مكنتش مـوجودة الا فـ اليكـس بس ! !

ومتعملتش قـبل كدآ آصـلآ

ومـعلش آنـآ بـحب الهـيآفة

مش عا هيافه ولله يحب انا بشوفها في سورسات عاديه كتير ولله بس عاش

:p

midoazoz
2019-11-21, 04:37 PM
هي فعلا كويسته عادي جدا يعني وسهله
بس مشكوووور يا صحبي 😍❤️

Hassan Emprator
2019-11-21, 04:51 PM
هي فعلا كويسته عادي جدا يعني وسهله
بس مشكوووور يا صحبي 😍❤️


اها كويس انك متوافق معايا في الرائي:surrender:

ModyMohamedAdel
2019-11-21, 05:13 PM
عاش

Tefa
2019-11-21, 05:24 PM
عاش

Omar Mohamed100
2019-11-21, 05:44 PM
هيا مش بتشتغل غير ف سورسات اليكس ؟
+ سي شارب 2000 وكام ؟

MaZzGanGYy
2019-11-21, 06:24 PM
هي فعلا كويسته عادي جدا يعني وسهله
بس مشكوووور يا صحبي 😍❤️

انا مش شايف فيها عادي والله
+ انا مقلتش مثلا انها اجمد كويست ممكن تشوفها ولا حاجة
هي مش موجودة غير ف سورس اليكس والناس كانت عايزاها فعلا
ف انا مش عارف اي لزمتو الرد دا

MaZzGanGYy
2019-11-21, 06:25 PM
عاش

حبب ❤

MaZzGanGYy
2019-11-21, 06:26 PM
عاش

عمـنآ ❤

MaZzGanGYy
2019-11-21, 06:28 PM
هيا مش بتشتغل غير ف سورسات اليكس ؟
+ سي شارب 2000 وكام ؟

انا منزلها للسورسات العادية

تقدر تضيفها لاي سورس عادي باي فيرجن للسي شارب 👍

AliNasser
2019-11-21, 06:46 PM
تسلم

midoazoz
2019-11-21, 07:51 PM
انا مش شايف فيها عادي والله
+ انا مقلتش مثلا انها اجمد كويست ممكن تشوفها ولا حاجة
هي مش موجودة غير ف سورس اليكس والناس كانت عايزاها فعلا
ف انا مش عارف اي لزمتو الرد دا

يسطا انا مقلتش حاجه غلط انا بقول انها عاديه يعني وقلك شكرا يا نجم ع مجهودك بالتوفيق جدا والله
اصل اسمها شدني بصراحه

nova
2019-11-22, 07:08 AM
عااااااااااااااش

eljooker2009
2019-11-27, 07:32 PM
شكرا على المجهود

469fb2a7c3
2019-11-29, 06:46 AM
:emoji3:

nova
2019-12-08, 03:34 PM
مفيش اى اضافات ف القاعده ؟؟

عمرو الجنرال
2019-12-10, 11:13 AM
تسلم ايدك

AdhamMohamed
2020-02-26, 05:50 PM
عاش والله بجد

Mahmoud Eltorgy
2020-02-29, 05:02 AM
عاااااااش

Mr.MoZa
2020-03-03, 11:23 PM
عاااااش استمر ي قلبي

A_H_M_E_D
2020-03-06, 04:48 AM
شكراااااا

uncelsam
2020-03-09, 06:01 PM
عاااااش

MRonlineGvrix
2020-03-17, 11:15 AM
الله ينور

elkapoo2020
2020-03-17, 02:33 PM
مشكووووووووووووووووور

Avengers-Co
2020-03-22, 01:58 PM
تسلم ياريس

احمد كامل
2020-04-01, 07:18 AM
عاشش

AhmedGadd
2020-04-12, 05:39 PM
الله ينور

AhmedGadd
2020-04-13, 12:37 AM
الكويستة لما حد بيجي يدخل التوب بتقفل اللعبه ايه المشكله؟

ElSaher
2020-04-13, 05:35 AM
عاش

mohamedomar
2020-05-11, 11:05 AM
s

Lucifer
2020-05-11, 08:57 PM
1

blackconquer222
2021-08-09, 03:44 PM
uha

MostafaSambo
2021-08-31, 11:21 PM
عاااااااااااش

مؤمن
2021-09-02, 09:10 AM
استمررررر

shehabdasten
2021-09-04, 12:12 PM
شكرا

shkaoa
2021-09-16, 03:10 PM
a34

kobra
2021-11-28, 10:04 PM
عاااااااش

abdocoder
2021-11-28, 10:08 PM
اشطا

TheAngel
2021-12-17, 04:15 PM
شكرا

محمد اسامه
2022-02-04, 08:27 AM
عاش

YuRi
2022-02-23, 06:14 PM
thanks man

elkholasa
2023-04-06, 04:00 AM
مشكور

mohamedelhdad
2023-07-09, 01:25 PM
i[vf

karem1q
2023-10-11, 10:22 PM
جاري التجربه

mahmoud546
2023-10-15, 10:20 PM
شكرا

hassana
2023-10-17, 03:34 PM
saas

karem1q
2023-10-21, 05:37 PM
عاش

karem1q
2023-10-30, 07:09 PM
عاش يا برنس

ahmednero2
2024-04-08, 08:54 PM
ty

ahmedmatrix12
2024-04-09, 12:02 AM
dsads

xomaaaar
2024-04-12, 01:55 PM
m

Ramykhaled
2024-06-25, 12:26 AM
goooood

youssef200
2025-01-12, 01:30 PM
تسلت