احصائياتى

الردود
0

المشاهدات
837
 
Hazem
.:: المدير العام::.

    غير متواجد

المشاركات
2,316

+التقييم
0.84

تاريخ التسجيل
Apr 2019

الاقامة
Egypt

نظام التشغيل
windows 7

رقم العضوية
1
2019-04-20, 10:11 PM
المشاركة 1
2019-04-20, 10:11 PM
المشاركة 1
Post كويستة TeamDeathMatch كامله

كويستة TeamDeathMatch هيا موجودة في كل السورسات الي موجودة تقريبأ
بس للاسف مش كاملة و فيها مشاكلopcorm2:
انا حليتها و شغلتها 100% و ظبطت المواعيد و البريز
كفاية كلام :buba:
اتفضلو
بسم الله
خش على Nps
دور على

case 54239:

و بدل الان بي سي القديم بدا

كود:
#region TeamDeathMatch 0
                
case 54239:
                    {
                        switch (
npcRequest.OptionID)
                        {
                            case 
0:
                                {
                                    if (
client.Entity.Tournament_Signed == false)
                                    {
                                        var 
time = DateTime.Now;
                                        if (
DateTime.Now.Minute >= 40 && DateTime.Now.Minute < 41)
                                        {
                                            
dialog.Text("The TeamDeathMatch tournament has now started!");
                                            
dialog.Text("You will get divided into 4 teams, black and white , blue and red, and ");
                                            
dialog.Text("must eliminate the other. Only fastblade/scentsword is allowed!");
                                            
dialog.Option("Let me join!", 1);
                                            
dialog.Option("Not intrested", 255);
                                        }
                                        else
                                        {
                                            
dialog.Text("The TeamDeathMatch  tournament is not active");
                                            
dialog.Option("I see", 255);
                                        }
                                    }
                                    else
                                    {
                                        
dialog.Text("You already Signed in TeamDeathMatch");
                                        
dialog.Option("I see", 255);
                                    }
                                    
dialog.Send();
                                    break;
                                }
                            case 
1:
                                {
                                    if (!
client.Spells.ContainsKey(1045) && !client.Spells.ContainsKey(1046))
                                    {
                                        
dialog.Text("You need to learn FastBlade or ScentSword first!");
                                        
dialog.Option("I see", 255);
                                        
dialog.Send();
                                        return;
                                    }
                                    
//181515 BlackElegance
                                    //181615 RedElegance
                                    //181815 BlueElegance
                                    //181315 WhiteElegence
                                    
if (client.Entity.Tournament_Signed == false)
                                    {
                                        var 
time = DateTime.Now;
                                            if (
DateTime.Now.Minute >= 40 && DateTime.Now.Minute < 41)
                                       {
                                            
Random r = new Random();
                                            
int Team = r.Next(1, 8);
                                            if (
Team == 1 || Team == 2)
                                            {
                                                
client.BackupArmorLook = client.ArmorLook;
                                                
client.SetNewArmorLook(181325);

                                                
//client.Entity.CurHP = 1;
                                                
client.Entity.Tournament_Signed = true;
                                                
client.Entity.TeamDeathMatch_WhiteTeam = true;
                                                
client.Entity.TeamDeathMatch_Hits = 0;

                                                
dialog.Text("You have been signed up for <TeamDeathMatch> <Team White>");
                                                
//GC.AddSend(Packets.NPCSetFace(0));
                                                //GC.AddSend(Packets.NPCFinish());
                                            
}
                                            if (
Team == 3 || Team == 4)
                                            {
                                                
client.BackupArmorLook = client.ArmorLook;//TeamXor We Not Only But We Are The Best members
                                                
client.SetNewArmorLook(181525);


                                                
//client.Entity.CurHP = 1;
                                                
client.Entity.Tournament_Signed = true;
                                                
client.Entity.TeamDeathMatch_BlackTeam = true;
                                                
client.Entity.TeamDeathMatch_Hits = 0;

                                                
dialog.Text("You have been signed up for <TeamDeathMatch> <Team Black>");
                                                
//GC.AddSend(Packets.NPCSetFace(0));
                                                //GC.AddSend(Packets.NPCFinish());
                                            
}
                                            if (
Team == 5 || Team == 6)
                                            {
                                                
client.BackupArmorLook = client.ArmorLook;
                                                
client.SetNewArmorLook(181825);


                                                
//client.Entity.CurHP = 1;
                                                
client.Entity.Tournament_Signed = true;
                                                
client.Entity.TeamDeathMatch_BlueTeam = true;
                                                
client.Entity.TeamDeathMatch_Hits = 0;

                                                
dialog.Text("You have been signed up for <TeamDeathMatch> <Team Blue>");
                                                
//GC.AddSend(Packets.NPCSetFace(0));
                                                //GC.AddSend(Packets.NPCFinish());
                                            
}
                                            if (
Team == 7 || Team == 8)
                                            {
                                                
client.BackupArmorLook = client.ArmorLook;
                                                
client.SetNewArmorLook(181625);


                                                
//client.Entity.CurHP = 1;
                                                
client.Entity.Tournament_Signed = true;
                                                
client.Entity.TeamDeathMatch_RedTeam = true;
                                                
client.Entity.TeamDeathMatch_Hits = 0;

                                                
dialog.Text("You have been signed up for <TeamDeathMatch> <Team Red>");
                                                
//GC.AddSend(Packets.NPCSetFace(0));
                                                //GC.AddSend(Packets.NPCFinish());
                                            
}
                                        }
                                    }
                                    else
                                    {
                                        
dialog.Text("You are already signed up for this tournament!");
                                        
dialog.Option("I see.", 255);
                                        
//GC.AddSend(Packets.NPCSetFace(67));
                                        //GC.AddSend(Packets.NPCFinish());
                                    
}
                                    
dialog.Send();
                                    break;
                                }
                        }
                        break;
                    }
                
#endregion 

تمام خش على World
و دور على

#region DTM

لو ملقيتوش دور على



كود:
DeathMatch.SendTimer(); 

اقفلو و بدلو بدا

كود:
 #region DTM
            
if ((Now64.Minute == 39) && (Now64.Second == 1))
            {
                
DeathMatch.SendTimer();
                
Kernel.SendWorldMessage(new Message("Team Death match will start in one minute!", Color.White, Message.TopLeft), Program.GamePool);
            }
            
#endregion 

نكمل خش المسار دا
\Game\Features\Tournaments
يعني افتح الكلاس دا
DeathMatch.cs
امسح كل الي في و بدلو بدا



كود:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Conquer_Online_Server.Network.GamePackets;

namespace 
Conquer_Online_Server.Game
{
    public class 
DeathMatch
    
{
        public const 
ushort MAPID = 8883;
        public static 
int[] Points = new int[4];
        public const 
uint 
            BlackTeam 
= 0,
            
BlueTeam = 1,
            
RedTeam = 2,
            
WhiteTeam = 3;
        public static 
bool IsOn = false;
        public static 
bool CouplesWar = false;
        public static 
IDisposable TimerA, TimerB, TimerC;
        public static 
void SendTimer()
        {
            
TimerA = World.Subscribe(SignUp, 1000);
        }
        public static 
bool signup = false;
        public static 
bool send = false;
        public static 
bool end = false;

        public static 
void SignUp(int ttime)
        {
            var 
time = DateTime.Now;
            if ((
time.Minute == 40) && signup == false)
            {
                
TimerA.Dispose();
                
TimerB = World.Subscribe(Send, 1000);
                for (
int i = 0; i < Points.Length; i++) Points[i] = 0;
                
send = false;
                
end = false;
                
signup = true;
                
IsOn = true;
                
Kernel.SendWorldMessage(new Message("TeamDeathMatch have started. Sign Up in TwinCity! You have one minute", System.Drawing.Color.Red, Message.Center), Program.GamePool);
                foreach (var 
player in Program.GamePool)
                {
                    
player.MessageBox("Team DeathMatch has started. Do you want to join?",
                        (
p) => { p.Entity.Teleport(1002, 456, 378); }, null, 60);
                }
            }
        }
        static 
Time32 LastUpdate;
        public static 
void Send(int ttime)
        {
            
Time32 now = new Time32(ttime);

            var 
time = DateTime.Now;
            if ((
time.Minute == 41) && send == false)
            {
                
TimerC = World.Subscribe(End, 1000);
                
signup = false;
                
send = true;
                
LastUpdate = now;
                
Kernel.SendWorldMessage(new Network.GamePackets.Message("Kill!!", System.Drawing.Color.Red, Network.GamePackets.Message.Center), Program.GamePool);
                
SendTeam();
            }
            if (
send)
            {
                if (
now > LastUpdate.AddSeconds(5))
                {
                    
LastUpdate = now;

                    var array = new[] 
                    {
                        
string.Format("Black team: {0}", Points[BlackTeam]),
                        
string.Format("Blue team: {0}", Points[BlueTeam]),
                        
string.Format("Red team: {0}", Points[RedTeam]),
                        
string.Format("White team: {0}", Points[WhiteTeam]),
                    };
                    
int Place = 0;
                    foreach (var 
str in array)
                    {
                        
Message msg = new Message(str, System.Drawing.Color.Red, Place == 0 ? Message.FirstRightCorner : Message.ContinueRightCorner);
                        
Kernel.SendWorldMessage(msg, Program.GamePool, (ushort)MAPID);
                        
Place++;
                    }
                }
            }
        }
        public static 
void SendTeam()
        {
            foreach (
Client.GameClient C in Program.GamePool)
            {
                if (
C.Entity.Tournament_Signed == true)
                {
                    
C.Entity.SpawnProtection = true;
                    
C.Entity.TeamDeathMatch_Hits = 0;
                    
C.Entity.AppearanceBkp = C.Entity.Appearance;
                    
Network.PacketHandler.ChangeAppearance(new Data(true) { ID = Data.AppearanceType, UID = C.Entity.UID, dwParam = (byte)AppearanceType.Garment }, C);
                    if (
C.Entity.TeamDeathMatch_BlackTeam == true)
                    {
                        
C.Entity.Teleport(8883, 042 ,051);
                    }
                    if (
C.Entity.TeamDeathMatch_BlueTeam == true)
                    {
                        
C.Entity.Teleport(8883, 060, 042);
                    }
                    if (
C.Entity.TeamDeathMatch_WhiteTeam == true)
                    {
                        
C.Entity.Teleport(8883, 066, 064);
                    }
                    if (
C.Entity.TeamDeathMatch_RedTeam == true)
                    {
                        
C.Entity.Teleport(8883, 039, 036);
                    }
                }
            }
        }
        public static 
void End(int ttime)
        {
            var 
time = DateTime.Now;
            if ((
time.Minute == 46) && end == false)
            {
                
signup = false;
                
end = true;
                
IsOn = false;
                foreach (
Client.GameClient client in Program.GamePool)
                {
                    if (
client.Entity.MapID == 8883)
                    {
                        
client.Entity.Teleport(1002, 400, 400);
                        
client.Entity.RemoveFlag(Update.Flags.Flashy);
                    }
                    if (
client.Entity.Tournament_Signed)
                    {
                        
client.Entity.Tournament_Signed = false;
                        
Network.PacketHandler.ChangeAppearance(new Data(true) { ID = Data.AppearanceType, UID = client.Entity.UID, dwParam = (byte)client.Entity.AppearanceBkp }, client);
                        
client.SetNewArmorLook(client.BackupArmorLook);
                        
client.BackupArmorLook = 0;
                     }
                }
                
Reward();
                
TimerB.Dispose();
                
TimerC.Dispose();
            }
        }

        public static 
bool redwin = false;
        public static 
bool blackwin = false;
        public static 
bool bluewin = false;
        public static 
bool whitewin = false;

        public static 
void Reward()
        {
            
Dictionary<int, int> top = new Dictionary<int, int>();
            for (
int i = 0; i < Points.Length; i++) top.Add(i, Points[i]);
            var array = 
top.OrderByDescending(o => o.Value).ToArray();
            if (array[
0].Key == RedTeam)
            {
                
redwin = true;
            }
            else if (array[
0].Key == BlueTeam)
            {
                
bluewin = true;
            }
            else if (array[
0].Key == WhiteTeam)
            {
                
whitewin = true;
            }
            else
            {
                
blackwin = true;
            }
            
int winKey = array[0].Key;
            
int hits = DeathMatch.Points[winKey];
            
uint prize = 250 * (uint)hits;
            
string name = "RedTeam";
            if (
bluewin) name = "BlueTeam";
            if (
blackwin) name = "BlackTeam";
            if (
whitewin) name = "WhiteTeam";
            
Kernel.SendWorldMessage(new Network.GamePackets.Message(name + " have won TeamDeathMatch! The Winner Team Have Gained " + prize + " ConquerPoints", System.Drawing.Color.Red, Conquer_Online_Server.Network.GamePackets.Message.Center), Program.GamePool);

            foreach (
Client.GameClient C in Program.GamePool)
            {
                
#region Winner
                
if (C.Entity.TeamDeathMatch_RedTeam && redwin)
                    
C.Entity.ConquerPoints += prize;
                if (
C.Entity.TeamDeathMatch_BlueTeam == bluewin)
                    
C.Entity.ConquerPoints += prize;
                if (
C.Entity.TeamDeathMatch_BlackTeam == blackwin)
                    
C.Entity.ConquerPoints += prize;
                if (
C.Entity.TeamDeathMatch_WhiteTeam == whitewin)
                    
C.Entity.ConquerPoints += prize;
                
#endregion

                
C.Entity.Tournament_Signed = false;
                
C.Entity.TeamDeathMatch_Hits = 0;
                
C.Entity.TeamDeathMatch_RedCaptain = false;
                
C.Entity.TeamDeathMatch_RedTeam = false;
                
C.Entity.TeamDeathMatch_BlueCaptain = false;
                
C.Entity.TeamDeathMatch_BlueTeam = false;
                
C.Entity.TeamDeathMatch_BlackCaptain = false;
                
C.Entity.TeamDeathMatch_BlackTeam = false;
                
C.Entity.TeamDeathMatch_WhiteCaptain = false;
                
C.Entity.TeamDeathMatch_WhiteTeam = false;
            }
        }
    }
} 

تمام كدا جربو قولي الكويستة بتبدأ كل ساعة في الدقيقة 40 عندك دقيقة وحدة عشان تسجل و بعد دقيقة هتخش المابة اوتوماتك
و تضرب اس اس و اف بي و هتاخد سي بي اس على قد بيونتات التيم بتاعك بالعدل يعني لو احنا 5 في تيم و كسبنا 50 الف كل واحد هياخد 50 الف مش هتتقسم





العلامات المرجعية



الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

الانتقال السريع

المواضيع المتشابهه للموضوع: كويستة TeamDeathMatch كامله
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
اضافه كويستت HeroOfGame كامله Hassan Emprator تطوير سيرفرات كونكر 13 2021-09-05 04:13 AM
كويستت ThunderScoreWar تكويد Mr.Khaled Hassan Emprator تطوير سيرفرات كونكر 56 2021-09-03 04:45 PM
كويستة المدفع الجديدة Hazem تطوير سيرفرات كونكر 2 2020-09-15 03:51 AM
كويستة في اي بي 7 بناءا علي طلب zezonever Commander تطوير سيرفرات كونكر 7 2020-03-16 04:55 PM
كويستة vip 7 ElSaher تطوير سيرفرات كونكر 1 2020-02-17 09:04 AM


الساعة الآن 02:08 AM