عرض مشاركة واحدة
احصائياتى

الردود
6

المشاهدات
2679
 
Tefa

Tefa is on a distinguished road

    غير متواجد

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

+التقييم
1.14

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

الاقامة

نظام التشغيل

رقم العضوية
358
2019-10-29, 06:39 PM
المشاركة 1 
#1  
افتراضي ThunderCloud[Beta] نسخه تجريبيه [2d Normal]
Monstertable.cs
search

كود:
  public void Drop(Game.Entity killer

add

كود:
  if (killer.Name == "Thundercloud") return; 


كود:
Calculate.cs 

search

كود:
 public static void Refinary(Entity attackerEntity attackedref double Damageref Attack Packetbool magic false

add

كود:
if (attacker.Name == "Thundercloud") return; 

handle.cs
search

كود:
 private void Execute()
        { 

add

كود:
 if (attacker.Name != "Thundercloud")
                    {
                        if (
Constants.PKForbiddenMaps.Contains(attacker.MapID))
                            return;
                    }
                    
#region ThunderCloud
                    
if (attacker.Name == "Thundercloud")
                    {
                        
Console.WriteLine("Test 1");
                        if (
Kernel.GamePool.ContainsKey(attacker.OwnerUID))
                        {
                            
Console.WriteLine("Test 2");
                            var 
owner Kernel.GamePool[attacker.OwnerUID];
                            var 
spell Database.SpellTable.GetSpell(12840owner);
                            var 
spell2 Database.SpellTable.GetSpell(12970owner);
                            
byte percent 0;
                            if (
spell2 != null)
                            {
                                if (
spell2.Level == 0percent 130;
                                if (
spell2.Level == 1percent 140;
                                if (
spell2.Level == 2percent 150;
                                if (
spell2.Level == 3percent 160;
                                if (
spell2.Level == 4percent 170;
                                if (
spell2.Level == 5percent 180;
                                if (
spell2.Level == 6percent 200;
                            }
                            
attack = new Attack(true);
                            
attack.Attacker attacker.UID;
                            
attack.Attacked attacked.UID;
                            
attack.AttackType Network.GamePackets.Attack.Kill;
                            
attack.attacked.X;
                            
attack.attacked.Y;
                            
attack.Damage 1;
                            
uint damage2 = (uint)(Calculate.Melee(owner.Playerattackedref attack) * spell.FirstDamage 100);
                            if (
attacker.SpawnPacket[50] == 128)//ThunderBolt
                                
damage2 = (uint)(damage2 percent 100);
                            
SpellUse suse2 = new SpellUse(true);
                            
suse2.Attacker attacker.UID;
                            
suse2.Attacker1 attacked.UID;
                            
suse2.SpellID 13190;
                            
suse2.attacked.X;
                            
suse2.attacked.Y;
                            
suse2.AddTarget(attackeddamage2attack);
                            
attacker.MonsterInfo.SendScreen(suse2);
                            if (
attacked.Hitpoints <= damage2)
                            {
                                
attacked.Die(attacker);
                                
attack.ResponseDamage damage2;
                                
attacker.MonsterInfo.SendScreen(attack);
                            }
                            else
                            {
                                
attacked.Hitpoints -= damage2;
                            }
                            return;
                        }
                        else
                            return;
                    }
                    
#endregion
                    #region ThunderCloudSight
                    
if (attacker != null && Kernel.Maps[attacker.MapID] != null)
                    {
                        foreach (var 
th in Kernel.Maps[attacker.MapID].Entities.Values.Where(=> i.Name == "Thundercloud"))
                        {
                            if (
th.OwnerUID == attacked.UID)
                            {
                                if (
attacker == null || Kernel.GetDistance(attacker.Xattacker.Yth.Xth.Y) > th.MonsterInfo.AttackRange || attacker.Dead) break;
                                
th.MonsterInfo.InSight attacker.UID;
                                break;
                            }
                        }
                    }
                    
#endregion 

search

كود:
 if (attacker.MonsterInfo.SpellID == 0

فوق

كود:
 uint damage Calculate.MonsterDamage(attackerattackedref attackfalse); 

add

كود:
 #region ThunderCloud
                        
if (attacker.Name == "Thundercloud")
                        {
                            if (
Kernel.GamePool.ContainsKey(attacker.OwnerUID))
                            {
                                var 
owner Kernel.GamePool[attacker.OwnerUID];
                                var 
spell Database.SpellTable.GetSpell(12840owner);
                                var 
spell2 Database.SpellTable.GetSpell(12970owner);
                                
uint damage2 = (uint)(Calculate.Melee(owner.Playerattackedref attack0) * (spell.Level spell.FirstDamage 50) / 100);
                                if (
attacker.SpawnPacket[50] == 128)
                                    
damage2 = (uint)(damage2 spell2.FirstDamage);
                                
SpellUse suse2 = new SpellUse(true);
                                
suse2.Attacker attacker.UID;
                                
suse2.Attacker1 attacked.UID;
                                
suse2.SpellID 13190;
                                
suse2.attacked.X;
                                
suse2.attacked.Y;
                                
suse2.AddTarget(attackeddamage2attack);
                                
attacker.MonsterInfo.SendScreen(suse2);
                                if (
attacked.Hitpoints <= damage2)
                                {
                                    
attacked.Die(attacker);
                                    
attack = new Attack(true);
                                    
attack.Attacker attacker.UID;
                                    
attack.Attacked attacked.UID;
                                    
attack.AttackType Network.GamePackets.Attack.Kill;
                                    
attack.attacked.X;
                                    
attack.attacked.Y;
                                    
attack.Damage 1;
                                    
attack.ResponseDamage damage2;
                                    
attacker.MonsterInfo.SendScreen(attack);
                                }
                                else
                                {
                                    
attacked.Hitpoints -= damage2;
                                }
                                return;
                            }
                            else
                                return;
                        }
                        
#endregion 

الاسكلتين

كود:
  #region ThunderCloud[Chaser]
                                
case 12840:
                                    {
                                        if (
CanUseSpell(spellattacker.Owner))
                                        {
                                            
attacker.GreenEffect 10;
                                            
PrepareSpell(spellattacker.Owner);
                                            
SpellUse suse = new SpellUse(true);
                                            
suse.Attacker attacker.UID;
                                            
suse.Attacker1 attacker.UID;
                                            
suse.SpellID spell.ID;
                                            
suse.SpellLevel spell.Level;
                                            var 
cl = new WindWalker.ThunderCloud(attacker.Ownerattack.Xattack.Y);
                                            
suse.AddTarget(cl.UID0null);
                                            
attacker.Owner.SendScreen(susetrue);
                                        }
                                        break;
                                    }
                                
#endregion
                                #region ThunderBolt[Chaser]
                                
case 12970:
                                    {
                                        if (
CanUseSpell(spellattacker.Owner))
                                        {
                                            
//attacker.GreenEffect = 10;
                                            
PrepareSpell(spellattacker.Owner);
                                            
SpellUse suse = new SpellUse(true);
                                            
suse.Attacker attacker.UID;
                                            
suse.Attacker1 attacker.UID;
                                            
suse.SpellID spell.ID;
                                            
suse.SpellLevel spell.Level;
                                            
suse.AddTarget(attacker.UID0null);
                                            
attacker.Owner.SendScreen(susetrue);
                                            foreach (var 
Cloud in attacker.Owner.Map.Clouds.Values.ToList())
                                            {
                                                
Cloud.ThunderBolt true;
                                                
attacker.ThunderBolt true;
                                                
//Cloud.DisposeCloud2(attacker.Owner);
                                                
if (Kernel.GetDistance(Cloud.XCloud.Yattacker.Owner.Player.Xattacker.Owner.Player.Y) > 16) continue;
                                                
Cloud.SendSpawn2(attacker.Ownerfalse);
                                                
//ThunderCloud cl = new ThunderCloud(attacker.Owner, Cloud.X, Cloud.Y);
                                            
}

                                        }
                                        break;
                                    }
                                
#endregion 

سيرش

كود:
 #region RevengeTaill 

add

كود:
 #region ThunderCloud
            
if (attacked.Name == "Thundercloud")
            {
                if (
spell != null && spell.ID != 0)
                {
                    if (
Kernel.Rate(75)) damage 1;
                    else 
damage 0;
                }
                else if (
spell == null || spell.ID == 0)
                {
                    
damage 1;
                }
            }
            foreach (var 
th in Kernel.Maps[attacker.MapID].Entities.Values.Where(=> i.Name == "Thundercloud"))
            {
                if (
th.UID == attacked.UID)
                {
                    if (
attacker == null || Kernel.GetDistance(attacker.Xattacker.Yth.Xth.Y) > th.MonsterInfo.AttackRange || attacker.Dead) break;
                    
th.MonsterInfo.InSight attacker.UID;
                    break;
                }
            }
            
#endregion 

search

كود:
attacked.Owner.LoadItemStats(); 

تحتها
add

كود:
 #region ThunderCloud
            
foreach (var th in Kernel.Maps[attacker.MapID].Entities.Values.Where(=> i.Name == "Thundercloud"))
            {
                if (
th.OwnerUID == attacker.UID)
                {
                    if (
attacked == null || Kernel.GetDistance(attacked.Xattacked.Yth.Xth.Y) > th.MonsterInfo.AttackRange || attacked.Dead) break;
                    
th.MonsterInfo.InSight attacked.UID;
                    break;
                }
            }
            
#endregion 

search

كود:
public static bool CanAttack(Game.Entity attackerGame.Entity attackedDatabase.SpellInformation spellbool melee

add

كود:
 #region ThunderCloud
            
if (attacked.Name == "Thundercloud")
            {
                if (
attacked.OwnerUID == attacker.UID) return false;
                if (!
Constants.PKForbiddenMaps.Contains(attacker.MapID))
                {
                    if (
attacker.PKMode != Game.Enums.PKMode.PK &&
                     
attacker.PKMode != Game.Enums.PKMode.Team)
                        return 
false;
                    else
                    {
                        
attacker.AddFlag(Network.GamePackets.Update.Flags.FlashingName);
                        
attacker.FlashingNameStamp Time32.Now;
                        
attacker.FlashingNameTime 20;

                        return 
true;
                    }
                }
                else return 
false;
            }
            
#endregion 

Entity.cs

search
تحتها
add

كود:
  bool _thbolt;

        public 
bool ThunderBolt
        
{
            
get
            
{
                return 
_thbolt;
            }
            
set
            
{
                if (
Cloud != null)
                    
Cloud.ThunderBolt value;
                
_thbolt value;
            }
        }
        public 
WindWalker.ThunderCloud Cloud

search

كود:
ManiacDanceStamp 

add جنبها

كود:
ThunderCloudStamp

search

كود:
public uint Hitpoints 

set
لحد قفلت قوس بتعها بدلهم ب دي

كود:
 set
            
{
                if (
EntityFlag == EntityFlag.Entity)
                    
Update((byte)Network.GamePackets.Update.DataType.Hitpointsvaluetrue);
                else if (
EntityFlag == EntityFlag.Monster)
                {
                    if (
Name != "Thundercloud")
                    {
                        var 
update = new Update(true);
                        
update.UID UID;
                        
update.Append(Network.GamePackets.Update.Hitpointsvalue);
                        
MonsterInfo.SendScreen(update);
                    }
                    else
                    {
                        var 
update = new Update(true);
                        
update.UID UID;
                        
update.Append(Network.GamePackets.Update.Hitpointsvalue 400);
                        
MonsterInfo.SendScreen(update);
                    }
                }
                
_hitpoints value;
                if (
Boss && Name != "Thundercloud")
                {
                    
uint key = (uint)(MaxHitpoints 10000);
                    if (
key != 0)
                        
Writer.Write((ushort)(value key), _HitpointsSpawnPacket);
                    else
                        
Writer.Write((ushort)(value MaxHitpoints 1000 1.09), _HitpointsSpawnPacket);
                }
                else
                    
Writer.Write((ushort)value_HitpointsSpawnPacket);
                
/*   if (EntityFlag == EntityFlag.Entity)
                   {
                       if (Owner != null)
                       {
                           if (Owner.Team != null)
                           {
                               foreach (var Team in Owner.Team.Temates)
                               {
                                   AddToTeam addme = new AddToTeam();
                                   addme.UID = Owner.Entity.UID;
                                   addme.Hitpoints = (ushort)Owner.Entity.Hitpoints;
                                   addme.Mesh = Owner.Entity.Mesh;
                                   addme.Name = Owner.Entity.Name;
                                   addme.MaxHitpoints = (ushort)Owner.Entity.MaxHitpoints;
                                   Team.entry.Send(addme.ToArray());
                               }
                           }
                       }
                   }*/
            
}
        } 

enmus.cs

كود:
 Thundercloud 12840

Map.cs
بعد فتحة القوس
Add

كود:
public Dictionary<uintWindWalker.ThunderCloudClouds = new Dictionary<uintWindWalker.ThunderCloud>();
        public 
void AddCloud(WindWalker.ThunderCloud entity)
        {
            if (!
this.Clouds.ContainsKey(entity.UID))
                
this.Clouds.Add(entity.UIDentity);

        } 

screen.cs
Search

كود:
Region rageofwar 

add

كود:
 #region ThunderCloud
                
foreach (var Cloud in client.Map.Clouds.Values)
                {
                    if (
Cloud == null) continue;
                    if (
Kernel.GetDistance(Cloud.XCloud.Yclient.Player.Xclient.Player.Y) > 16) continue;
                    if (
DateTime.Now Cloud.EndTime || Cloud.Owner == null)
                    {
                        
Cloud.DisposeCloud(client);
                        return;
                    }
                }
                
#endregion 

search

كود:
region Stamina 

Add

كود:
#region ThunderCloud
            
foreach (var Cloud in client.Map.Clouds.Values)
            {
                if (
Cloud == null) continue;
                if (
Kernel.GetDistance(Cloud.XCloud.Yclient.Player.Xclient.Player.Y) > 16) continue;
                if (
DateTime.Now Cloud.EndTime || Cloud.Owner == null)
                {
                    
Cloud.DisposeCloud(client);
                    return;
                }
                
#region ThunderCloud
                
if (!Cloud.Dead && Time32.Now Cloud.LastCloudAttack.AddSeconds(Cloud.ThunderBolt == true 2))
                {
                    if (
client.Player.Cloud != null)
                    {
                        var 
spell Database.SpellTable.GetSpell(12970client);
                        
SpellUse suse = new SpellUse(true);
                        
suse.Attacker client.Player.Cloud.UID;
                        
suse.SpellID 13190;
                        
suse.SpellLevel 0;
                        
suse.client.Player.Cloud.X;
                        
suse.client.Player.Cloud.Y;
                        
Entity attacked null;
                        foreach (
Interfaces.IMapObject _obj in client.Screen.Objects)
                        {
                            if (
_obj == null) continue;
                            if (
_obj.MapObjType == MapObjectType.Monster || _obj.MapObjType == MapObjectType.Entity)
                            {
                                
Cloud.LastCloudAttack Time32.Now;
                                
attacked _obj as Entity;
                                if (
Kernel.GetDistance(Cloud.XCloud.Yattacked.Xattacked.Y) <= 15)
                                {
                                    
Attack attack = new Attack(true);
                                    if (
Game.Attacking.Handle.CanAttack(Cloud.Owner.Playerattackedspellattack.AttackType == Attack.Melee))
                                    {
                                        
attack.Effect1 Attack.AttackEffects1.None;
                                        
uint damage Game.Attacking.Calculate.Melee(Cloud.Owner.Playerattackedspellref attack);
                                        
damage = (uint)(damage 0.2);
                                        if (
Cloud.ThunderBolt)
                                            
damage += Game.Attacking.Calculate.Melee(Cloud.Owner.PlayerattackedDatabase.SpellTable.GetSpell(12970client), ref attack);
                                        
suse.Effect1 attack.Effect1;
                                        
Game.Attacking.Handle.ReceiveAttack(Cloud.Owner.Playerattackedattackref damagespell);
                                        
suse.AddTarget(attackeddamageattack);
                                        break;
                                    }
                                }
                            }
                        }
                        
client.SendScreen(susetrue);
                    }
                }
                
#endregion
            
}
            
#endregion 

Search

كود:
public void Reload(Interfaces.IPacket spawnWith null

Add

كود:
  #region ThunderCloud
                
foreach (var Cloud in Map.Clouds.Values)
                {
                    if (
Cloud == null) continue;
                    if (
Kernel.GetDistance(Cloud.XCloud.YOwner.Player.XOwner.Player.Y) > 16) continue;
                    
Cloud.SendSpawn(Ownerfalse);
                }
                
#endregion 

Data.cs
search

كود:
public Game.Enums.ConquerAngle Facing 

فوقه
add

كود:
public ushort Thundercloud
        
{
            
get { return BitConverter.ToUInt16(Buffer26); }
            
set Writer.WriteUInt16(value26Buffer); }
        } 


كود:
Windwalker.cs 

add

كود:
 public class ThunderCloud
        
{
            public static 
Counter ThunderCloudCounter = new Counter(700000);
            
byte[] Buffer;
            public 
ushort X 00;
            public 
uint UID 0;
            public 
uint OwnerID;
            public 
GameState Owner;
            public 
DateTime EndTime;
            public 
bool Dead false;
            
bool _bol;
            public 
bool ThunderBolt
            
{
                
get { return _bol; }
                
set
                
{
                    if (
value == true)
                        
Writer.WriteUInt32(12850Buffer);
                    else
                        
Writer.WriteUInt32(050Buffer);
                    
_bol value;
                }
            }
            public 
Time32 LastCloudAttack;
            public 
ThunderCloud(GameState clientushort Xushort Y)
            {
                
Owner client;
                
Owner.Player.Cloud this;
                
EndTime DateTime.Now.AddSeconds(24);
                
this.X;
                
this.Y;
                
OwnerID client.Player.UID;
                
UID ThunderCloudCounter.Next;
                
string _Name "Thundercloud";
                
byte[] Packet_2035 = new byte[68 8];
                
Writer.WriteUInt16((ushort)(Packet_2035.Length 8), 0Packet_2035);
                
Writer.WriteUInt16(20352Packet_2035);
                
Writer.WriteUInt32(UID4Packet_2035);
                
Writer.WriteUInt32(42648Packet_2035);
                
Packet_2035[12] = 3;
                
Writer.WriteUInt32(98016Packet_2035);//mesh
                
Packet_2035[24] = 14;
                
Writer.WriteUInt32(2234814126Packet_2035);
                
Writer.WriteString(_Name30Packet_2035);
                
Buffer = new byte[Game.Entity._Names _Name.Length 36];
                
Writer.WriteUInt16((ushort)(Buffer.Length 8), 0Buffer);
                
Writer.WriteUInt16(100142Buffer);
                
Writer.WriteUInt32((uint)Time32.timeGetTime().GetHashCode(), 4Buffer);
                
Writer.WriteUInt32(9808Buffer);//Mesh
                
Writer.WriteUInt32(UID12Buffer);//Uid
                
var seconds System.Math.Abs((EndTime DateTime.Now).TotalSeconds);
                
Writer.WriteUInt32((uint)((seconds 10000) / 24), 111Buffer);//Time
                
Writer.WriteUInt32(140117Buffer);//Level
                
Writer.WriteUInt32(X119Buffer);
                
Writer.WriteUInt32(Y121Buffer);
                
Writer.WriteUInt32(5125Buffer);
                
Writer.WriteUInt32(client.Player.UID274Buffer);//OwnerUID
                
Buffer[278] = 1;
                
Buffer[220] = 1;
                
Writer.WriteUInt16(768270Buffer);
                
Writer.WriteStringList(new List<string>() { _Name"""""""""""" }, Game.Entity._NamesBuffer);
                
Network.GamePackets.Data d = new Data(true);
                
d.UID UID;
                
d.ID Data.SpawnEffect;
                
d.Facing = (Game.Enums.ConquerAngle)5;
                
client.Send(Packet_2035);
                
client.Send(Buffer);
                
client.Send(d);
                
client.Map.AddCloud(this);
            }
            public 
void DisposeCloud(GameState c)
            {
                if (
!= null)
                    if (
c.Map.Clouds.ContainsKey(UID))
                    {
                        
c.Map.Clouds.Remove(UID);
                        
Data d = new Data(true);
                        
d.UID UID;
                        
d.ID Data.RemoveEntity;
                        
c.SendScreen(dtrue);
                        
ThunderBolt false;
                        if (
Owner != null)
                            
Owner.Player.ThunderBolt false;
                        
Dead true;
                    }
            }

            public 
void SendSpawn(GameState Ownerbool p)
            {
                var 
seconds System.Math.Abs((EndTime DateTime.Now).TotalSeconds);
                if (
seconds 24seconds 0;
                
Writer.WriteUInt32((uint)((seconds 10000) / 24), 111Buffer);//Time
                
Owner.Send(Buffer);
            }

            public 
byte[] Refresh()
            {
                var 
seconds System.Math.Abs((EndTime DateTime.Now).TotalSeconds);
                if (
seconds 24seconds 0;
                
Writer.WriteUInt32((uint)((seconds 10000) / 24), 111Buffer);//Time
                
return Buffer;
            }
            public 
void SendSpawn2(GameState Ownerbool p)
            {
                
byte[] Packet_2035 = new byte[68 8];
                var 
seconds System.Math.Abs((EndTime DateTime.Now).TotalSeconds);
                if (
seconds 24seconds 0;
                
Writer.WriteUInt32((uint)((seconds 10000) / 24), 111Buffer);//Time
                
Writer.Write(12850Buffer);//Flag4(128)
                
Writer.Write(12850Packet_2035);//Flag4(128)
                
Owner.Send(Buffer);
            }
        } 


كود:
World.cs 

Search

كود:
 public void Init(bool onlylogin false)
        {
            if (!
onlylogin)
            { 

add

كود:
 ThunderCloud = new TimerRule<Entity>(ThunderCloudTimer250ThreadPriority.Lowest); 

search

كود:
public void CreateTournaments() 

تحتها
add

كود:
  public bool Register(Entity ThunderCloudd)
        {
            if (
ThunderCloudd.Owner.TimerSubscriptions == null)
            {
                
ThunderCloudd.Owner.TimerSyncRoot = new object();
                
ThunderCloudd.Owner.TimerSubscriptions = new IDisposable[]
                {
                    
ThunderCloud.Add(ThunderCloudd)
                };
                return 
true;
            }
            return 
false;
        }
        public 
void Unregister(Entity Thundercloud)
        {
            if (
Thundercloud.Owner == null || Thundercloud.Owner.TimerSubscriptions == null) return;
            
lock (Thundercloud.Owner.TimerSyncRoot)
            {
                if (
Thundercloud.Owner.TimerSubscriptions != null)
                {
                    foreach (var 
timer in Thundercloud.Owner.TimerSubscriptions)
                        
timer.Dispose();
                    
Thundercloud.Owner.TimerSubscriptions null;
                }
            }
        } 

search

كود:
private void CharactersCallback

فوقها او تحتها
Add

كود:
 public TimerRule<EntityThunderCloud;
        private 
void ThunderCloudTimer(Entity ThunderCloudint time)
        {
            if (
ThunderCloud == null) return;
            if (!
Kernel.Maps.ContainsKey(ThunderCloud.MapID))
            {
                
Kernel.Maps[ThunderCloud.MapID].RemoveEntity(ThunderCloud);
                
Data data = new Data(true);
                
data.UID ThunderCloud.UID;
                
data.ID Data.RemoveEntity;
                
ThunderCloud.MonsterInfo.SendScreen(data);
                
ThunderCloud.MonsterInfo.SendScreen(data);
                foreach (var 
client in Kernel.GamePool.Values)
                {
                    if (
Kernel.GetDistance(ThunderCloud.XThunderCloud.Yclient.Player.Xclient.Player.Y) > 16) continue;
                    
client.RemoveScreenSpawn(ThunderCloudtrue);
                }
                
Unregister(ThunderCloud);
                return;
            }
            if (
Time32.Now >= ThunderCloud.ThunderCloudStamp.AddSeconds(1))
            {
                
ThunderCloud.ThunderCloudStamp Time32.Now;
                if (
ThunderCloud.Hitpoints 400)
                    
ThunderCloud.Hitpoints -= 400;
                else
                {
                    
Kernel.Maps[ThunderCloud.MapID].RemoveEntity(ThunderCloud);
                    
Data data = new Data(true);
                    
data.UID ThunderCloud.UID;
                    
data.ID Data.RemoveEntity;
                    
ThunderCloud.MonsterInfo.SendScreen(data);
                    
ThunderCloud.MonsterInfo.SendScreen(data);
                    foreach (var 
client in Kernel.GamePool.Values)
                    {
                        if (
Kernel.GetDistance(ThunderCloud.XThunderCloud.Yclient.Player.Xclient.Player.Y) > 16) continue;
                        
client.RemoveScreenSpawn(ThunderCloudtrue);
                    }
                    
Unregister(ThunderCloud);
                    return;
                }
            }
            if ((
ThunderCloud.SpawnPacket[50] == && Time32.Now >= ThunderCloud.MonsterInfo.LastMove.AddMilliseconds(750)) || ThunderCloud.SpawnPacket[50] == 128)
            {
                
ThunderCloud.MonsterInfo.LastMove Time32.Now;
                if (
ThunderCloud.MonsterInfo.InSight == 0)
                {
                    foreach (var 
one in Kernel.Maps[ThunderCloud.MapID].Entities.Values.Where(=> Kernel.GetDistance(ThunderCloud.XThunderCloud.Yi.Xi.Y) <= ThunderCloud.MonsterInfo.AttackRange))
                    {
                        if (
one == null || one.Dead || one.MonsterInfo.Guard || one.Companion) continue;
                        
ThunderCloud.MonsterInfo.InSight one.UID;
                        
Entity insight null;
                        if (
Kernel.Maps[ThunderCloud.MapID].Entities.ContainsKey(ThunderCloud.MonsterInfo.InSight))
                            
insight Kernel.Maps[ThunderCloud.MapID].Entities[ThunderCloud.MonsterInfo.InSight];
                        else if (
Kernel.GamePool.ContainsKey(ThunderCloud.MonsterInfo.InSight))
                            
insight Kernel.GamePool[ThunderCloud.MonsterInfo.InSight].Player;
                        if (
insight == null || insight.Dead || (insight.MonsterInfo != null && insight.MonsterInfo.Guard))
                        {
                            
ThunderCloud.MonsterInfo.InSight 0;
                            break;
                        }
                        new 
Game.Attacking.Handle(nullThunderCloudinsight);
                        break;
                    }
                }
                else
                {
                    
Entity insight null;
                    if (
Kernel.Maps[ThunderCloud.MapID].Entities.ContainsKey(ThunderCloud.MonsterInfo.InSight))
                        
insight Kernel.Maps[ThunderCloud.MapID].Entities[ThunderCloud.MonsterInfo.InSight];
                    else if (
Kernel.GamePool.ContainsKey(ThunderCloud.MonsterInfo.InSight))
                        
insight Kernel.GamePool[ThunderCloud.MonsterInfo.InSight].Player;
                    if (
insight == null || insight.Dead || (insight.MonsterInfo != null && insight.MonsterInfo.Guard))
                    {
                        
ThunderCloud.MonsterInfo.InSight 0;
                        return;
                    }
                    new 
Game.Attacking.Handle(nullThunderCloudinsight);
                }
            }

        }