الموضوع: طلب لو سمحت
عرض مشاركة واحدة
قديم 2019-12-02, 12:38 AM
المشاركة 8
Hassan Emprator
.:: عضو خبير ::.
  • غير متواجد
افتراضي رد: طلب لو سمحت
حاضر بس انا ممكن اسحبها من سورس عادي ينفع !
ملحوظه انا هسحبها كامله كلها عشان محدش يقولي الاكواد موجوده ها

سيرش عا


كود:
public static void ReceiveAttack(Game.Entity attackerSobNpcSpawn attacked

ضيف


كود:
if (attacker.MapID == CaptureTheFlag.MapID)
                if (
attacker.GuildID != && Program.World.CTF.Bases[attacked.UID].CapturerID != attacker.GuildID)
                {
                    
Program.World.CTF.AddScore(damageattacker.Owner.Guildattacked);
                } 

بعدين سيرش عا



كود:
public static bool CanAttack 

ضيف


كود:
if (attacker.MapID == CaptureTheFlag.MapID)
            {
                if (
Program.World.CTF.Bases.ContainsKey(attacked.UID))
                {
                    var 
_base Program.World.CTF.Bases[attacked.UID];
                    if (
_base.CapturerID == attacker.GuildID)
                        return 
false;
                }
                return 
true;
            } 

سيرش عا


كود:
public static bool CanAttack(Game.Entity attackerGame.Entity attacked 

وابحث في عن


كود:
if (attacked.MonsterInfo.ID == MonsterInformation.ReviverID

ضيف


كود:
if (attacker.MapID == CaptureTheFlag.MapID)
                if (!
CaptureTheFlag.Attackable(attacker) || !CaptureTheFlag.Attackable(attacked))
                    return 
false

سيرش عا


كود:
public void Die(Entity killer

ضيف


كود:
#region CaptureTheFlag
                
if (killer.GuildID != && killer.MapID == CaptureTheFlag.MapID && CaptureTheFlag.IsWar)
                {
                    if (
GuildID != 0)
                    {
                        if (
killer.Owner.Guild.Enemy.ContainsKey(GuildID))
                            
killer.Owner.Guild.CTFPoints += 1;
                        else if (
killer.Owner.Guild.Ally.ContainsKey(GuildID))
                            
killer.Owner.Guild.CTFPoints += 1;
                    }
                    if (
ContainsFlag2(Network.GamePackets.Update.Flags2.CarryingFlag))
                    {
                        
StaticEntity entity = new StaticEntity((uint)(1000 Y), XYMapID);
                        
entity.DoFlag();
                        
Owner.Map.AddStaticEntity(entity);
                        
RemoveFlag2(Network.GamePackets.Update.Flags2.CarryingFlag);
                        
Owner.Send(Program.World.CTF.generateTimer(0));
                        
Owner.Send(Program.World.CTF.generateEffect(Owner));
                        if (
killer.GuildID != GuildID)
                        {
                            
Killer.AddFlag2(Network.GamePackets.Update.Flags2.CarryingFlag);
                            
Time32 end FlagStamp.AddSeconds(60) - Time32.Now;
                            
killer.FlagStamp end;
                            
killer.Owner.Send(Program.World.CTF.generateTimer((uint)end.Value));
                            
killer.Owner.Send(Program.World.CTF.generateEffect(killer.Owner));
                            
killer.Owner.Guild.CTFPoints += 3;
                        }
                    }
                }
                
#endregion 

كلاس PacketID ابحث عن

كود:
public unsafe class PacketID 


كود:
CaptureTheFlag 2224

بعدين في كلاس SobNpcSpwan سيرش


كود:
if (UID == 123456

ضيف تحته


كود:
if (MapID == CaptureTheFlag.MapID)
            {
                if (
Program.World.CTF.Bases.ContainsKey(UID))
                {
                    var 
_base Program.World.CTF.Bases[UID];
                    
_base.Capture();
                }
            }
                
////////// 

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


كود:
public static void HandlePacket(byte[] packetClient.GameState client

ضيف تحت اي مستخدم دا


كود:
#region CTF
                
case 1063:
                    {

                        
//if (packet[6] == 3)
                        //{
                        //    client.Send(packet);
                        //    uint m = BitConverter.ToUInt32(packet, 10);
                        //    client.Send(CrossServer.generateRanking(m));
                        //    return;
                        //}
                        
byte typ packet[4];
                        switch (
typ)
                        {
                            case 
0:
                                {
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;
                                    if (!
CaptureTheFlag.IsWar)
                                    {
                                        
CaptureTheFlag.CTFGuildsRank(clientpacket);
                                    }
                                    else
                                    {
                                        
CaptureTheFlag.CTFExpolitsRank(clientpacket);
                                    }
                                    break;
                                }
                            case 
1:
                                {
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;

                                    
CaptureTheFlag.CTFExpolitsRank2(clientpacket);
                                    break;
                                }
                            case 
3:
                                {
                                    
uint setCTFCps BitConverter.ToUInt32(packet18);
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;
                                    if (
client.Guild.ConquerPointFund setCTFCps)
                                    {
                                        
client.Guild.ConquerPointFund -= setCTFCps;
                                        
client.Guild.CTFdonationCPsold += setCTFCps;
                                        
Database.GuildTable.SaveFunds(client.Guild);
                                    }
                                    goto case 
0;
                                }
                            case 
4:
                                {
                                    
uint setCTFMoney BitConverter.ToUInt32(packet22);
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;
                                    if (
client.Guild.SilverFund setCTFMoney)
                                    {
                                        
client.Guild.SilverFund -= setCTFMoney;
                                        
client.Guild.CTFdonationSilverold += setCTFMoney;
                                        
Database.GuildTable.SaveFunds(client.Guild);
                                    }
                                    goto case 
0;

                                }
                            case 
5:
                                {
                                    
uint setCTFCps BitConverter.ToUInt32(packet18);
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;
                                    if (
client.Guild.ConquerPointFund setCTFCps)
                                    {
                                        
client.Guild.ConquerPointFund -= setCTFCps;
                                        
client.Guild.CTFdonationCPsold += setCTFCps;
                                        
Database.GuildTable.SaveFunds(client.Guild);
                                    }

                                    
uint setCTFMoney BitConverter.ToUInt32(packet22);

                                    if (
client.Guild.SilverFund setCTFMoney)
                                    {
                                        
client.Guild.SilverFund -= setCTFMoney;
                                        
client.Guild.CTFdonationSilverold += setCTFMoney;
                                        
Database.GuildTable.SaveFunds(client.Guild);
                                    }
                                    goto case 
0;
                                }
                            case 
8:
                                {
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;
                                    
CaptureTheFlag.CTFGuildsRank2(clientpacket);
                                    break;
                                }
                            case 
9:
                                {
                                    if (
client.Guild == null || client.AsMember == null)
                                        break;
                                    if (
CaptureTheFlag.IsWar)
                                    {
                                        new 
CaptureTheFlag.CTF_Rank(client).Send(client);
                                    }
                                    else
                                    {
                                        
CaptureTheFlag.CTFsRank(clientpacket);
                                    }
                                    break;
                                }

                        }
                        break;
                    }
                case 
2224:
                    {
                        if (
packet[4] == 7)//2
                            
client.Send(Program.World.CTF.generateCTFRanking());

                        if (
CaptureTheFlag.IsWar)
                        {
                            
byte[] p773 = new byte[] { 6001768110001000000000000000000000000000000000000000000000000000848183101114118101114 };
                            
client.Send(p773);
                        }
                        else
                            
client.Send(packet);
                        break;
                    }
                
#endregion 

وابحث عن


كود:
client.lastJumpDistance Kernel.GetDistance(new_Xnew_Yclient.Entity.Xclient.Entity.Y); 

ضيف فيه


كود:
if (client.Entity.MapID == CaptureTheFlag.MapID)
                            
CheckForFlag(client);
                        
client.SendScreen(generalDatatrue);
                        
client.Screen.Reload(generalData); 

وابحث عن

كود:
static void PlayerGroundMovment(GroundMovement groundMovementClient.GameState client

ضيف فيه


كود:
 if (client.Entity.MapID == CaptureTheFlag.MapID)
                
CheckForFlag(client);

            
client.SendScreen(groundMovementtrue);
            
client.Screen.Reload(groundMovement); 

سيرش عا

كود:
static void GetSurroundings(Client.GameState client

ضيف فيه


كود:
if (client.Entity.PreviousMapID == CaptureTheFlag.MapID)
                
Program.World.CTF.CloseList(client); 

الانبي بي سي


كود:
#region Reward CTF
                            
case 8713:
                                {
                                    switch (
npcRequest.OptionID)
                                    {
                                        case 
0:
                                            {
                                                
dialog.Text("Just The Guild Leader will receive the CTF Reward?");
                                                
dialog.Option("CTF area."2);
                                                
dialog.Option("Give Me CTF Reward."3);
                                                
dialog.Option("I See."255);
                                                
dialog.Avatar(83);
                                                
dialog.Send();
                                                break;
                                            }
                                        case 
2:
                                            {
                                                if (
client.Entity.Level >= 1)
                                                    if (
CaptureTheFlag.IsWar)
                                                    {
                                                        
Program.World.CTF.SignUp(client);
                                                    }
                                                    else
                                                    {
                                                        
dialog.Text("The CTF is not on going at this time. The GuildWar is scheduled to start everyDay at 03:00 .");
                                                        
dialog.Option("Oh."255);
                                                        
dialog.Send();
                                                    }
                                                else
                                                {
                                                    
dialog.Text("You Should Level 1  .");
                                                    
dialog.Option("Oh."255);
                                                    
dialog.Send();
                                                }
                                                break;
                                            }
                                        case 
3:
                                            {
                                                if (
client.Guild != null)
                                                {
                                                    if (
client.AsMember != null)
                                                    {
                                                        if (
client.AsMember.Rank == Enums.GuildMemberRank.GuildLeader)
                                                        {
                                                            
uint Reaward = (uint)(client.Guild.CTFReward ServerRates.WarFlag1);
                                                            if (
Reaward != 0)
                                                            {
                                                                
byte[] messaje = new Network.GamePackets.Message("The Guild Leader " client.Entity.Name " of " client.Guild.Name " Receive the CTFReward " Reaward ""System.Drawing.Color.RedNetwork.GamePackets.Message.System).ToArray();

                                                                
client.Entity.ConquerPoints += Reaward;
                                                                
client.Guild.CTFReward 0;
                                                                
Database.GuildTable.SaveCTFReward(client.Guild);
                                                                foreach (var 
clients in Kernel.GamePool.Values)
                                                                {
                                                                    
client.Send(messaje);
                                                                }
                                                            }
                                                            else
                                                            {
                                                                
dialog.Text("You Guild Not Have CTF Points ");
                                                                
dialog.Option("Oh Sorry."255);
                                                                
dialog.Avatar(83);
                                                                
dialog.Send();
                                                            }
                                                        }
                                                        else
                                                        {
                                                            
dialog.Text("Just The Guild Leader will receive the CTF Reward ");
                                                            
dialog.Option("Oh Sorry."255);
                                                            
dialog.Avatar(83);
                                                            
dialog.Send();
                                                        }
                                                        break;
                                                    }
                                                }
                                                break;
                                            }
                                    }
                                    break;
                                }
                            
#endregion 

ضيف دا في اي حته في World


كود:
 public CaptureTheFlag CTF

وفي


كود:
public void CreateTournaments() 

ضيف


كود:
CTF = new CaptureTheFlag(); 

وفي


كود:
private void WorldTournaments(int time

ضيف


كود:
#region CaptureTheFlag
            
if (Now64.Hour == 17)
            {
                if (
Now64.Minute == 05 && Now64.Second <= 05)
                {
                    if (!
CaptureTheFlag.IsWar)
                    {
                        
CTF = new CaptureTheFlag();
                        
CaptureTheFlag.IsWar true;
                        
CaptureTheFlag.StartTime DateTime.Now;

                        
Kernel.SendWorldMessage(new Message("Capture The Flag has Start !"Color.WhiteMessage.BroadcastMessage), Program.Values);
                        foreach (var 
client in Program.Values)
                            
client.MessageBox("Capture The Flag has Start! Would you Like to join ...?",
                               
=> { p.Entity.Teleport(1002224240); }, null60);
                        foreach (var 
guild in Kernel.Guilds.Values)
                        {
                            
guild.CTFFlagScore 0guild.CTFPoints 0;
                        }
                    }
                }
                if (
CaptureTheFlag.IsWar)
                {
                    if (
CTF != null)
                        
CTF.SpawnFlags();
                }

                if (
Now64.Minute == 59 && Now64.Second == 59)
                {
                    if (
CaptureTheFlag.IsWar)
                    {
                        
Kernel.SendWorldMessage(new Message("Capture The Flag has Ended !"Color.WhiteMessage.BroadcastMessage), Program.Values);

                        
Program.World.CTF.SendUpdates();
                        
CaptureTheFlag.IsWar false;
                        
CaptureTheFlag.Close();
                    }
                }
            }
            
#endregion