منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   تطوير سيرفرات كونكر (https://code.vpscairo.com/forumdisplay.php?f=11)
-   -   حل مشكله اسكلة ShadowClone (https://code.vpscairo.com/showthread.php?t=2651)

Rider 2019-10-24 12:26 AM

حل مشكله اسكلة ShadowClone
 


السلام عليكم ورحمة الله وبركاته
الناس بتواجه مشكله اسكله ShadowClone سعات بتلقي سرعه الضربه سريعه جدا لدرجه ماتشوفوا وممكن تلقيه بطيه
الموضوع ده ايظبط الاسكله يخليه مظبوطه
سيرش ف Packethandler علي
كود PHP:

case 2812

و بدله ب ده
كود PHP:

 case 2812:
                    {
                        var 
attackd BitConverter.ReadUint(packet4);
                        var 
clonecount packet[8];
                        for (
int i 0clonecounti++)
                        {
                            var 
attackr BitConverter.ReadUint(packet+ (4));
                            if (
client.Player.MyClones.Count clonecount)
                                return;
                            var 
attack client.Player.AttackPacket;
                            if (
attack == null)
                                
attack = new GamePackets.Attack(true);
                            
attack.Attacker attackr;
                            
attack.Attacked attackd;

                            if (
client.Player.MyClones.Count == 0)
                                return;
                            if (
attackd == client.Player.UID || client.Player.MyClones.ContainsKey(attackd))
                                return;
                            
ahmedfathy.Database.SpellInformation MySpell null;
                            try
                            {
                                
MySpell Database.SpellTable.GetSpell(client.Spells[12090].IDclient.Spells[12090].Level);
                            }
                            catch { 
MySpell Database.SpellTable.GetSpell(120904); }
                            
Entity Clone = null;
                            if (
client.Player.MyClones.TryGetValue(attackrout Clone))
                            {
                                
Entity attacked null;
                                
SobNpcSpawn attackedsob null;
                                if (
client.Screen.TryGetValue(attackdout attacked))
                                {
                                    
uint damage 0;
                                    var 
spell Database.SpellTable.GetSpell(attack.MagicType, (byte)attack.MagicLevel);
                                    if (
spell == null)
                                        
spell Database.SpellTable.GetSpell(120800);
                                    if (
attack.AttackType == GamePackets.Attack.Melee)
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Playerattackedspelltrue))
                                        {
                                            
damage Game.Attacking.Calculate.Melee(client.Playerattackedspellref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage power 8);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedattackref damagespell);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Playerattackedspellfalse))
                                        {
                                            
damage Game.Attacking.Calculate.Magic(client.Playerattackedspellref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage power 8);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedattackref damagespell);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    
SpellUse suse = new SpellUse(true);
                                    
suse.Attacker = Clone.UID;
                                    
suse.SpellID spell.ID;
                                    
suse.SpellLevel spell.Level;
                                    
suse.attacked.X;
                                    
suse.attacked.Y;
                                    
suse.Effect1 attack.Effect1;
                                    
suse.AddTarget(attackeddamageattack);
                                    
client.SendScreen(susetrue);
                                    if (
client.Account.State == ahmedfathy.Database.AccountTable.AccountState.ProjectManager)
                                        
client.Send(new Message("Clone Attack With  Skill: " spell.NameSystem.Drawing.Color.CadetBlueMessage.Talk));

                                }
                                else if (
client.Screen.TryGetSob(attackdout attackedsob))
                                {
                                    
uint damage 0;
                                    var 
spell Database.SpellTable.GetSpell(attack.MagicType, (byte)attack.MagicLevel);
                                    if (
spell == null)
                                        
spell Database.SpellTable.GetSpell(120800);
                                    if (
attack.AttackType == GamePackets.Attack.Melee)
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Playerattackedsobnull))
                                        {
                                            
damage Game.Attacking.Calculate.Melee(client.Playerattackedsobref attack);
                                            
double power = ((MySpell.Power 100.0) / 100.0);
                                            
damage = (uint)((double)damage power);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedsobattackdamagenull);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Playerattackedsobspell))
                                        {
                                            
damage Game.Attacking.Calculate.Magic(client.Playerattackedsobspellref attack);
                                            
double power = ((MySpell.Power 100.0) / 100.0);
                                            
damage = (uint)((double)damage power);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedsobattackdamagespell);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    
SpellUse suse = new SpellUse(true);
                                    
suse.Attacker = Clone.UID;
                                    
suse.SpellID spell.ID;
                                    
suse.SpellLevel spell.Level;
                                    
suse.attackedsob.X;
                                    
suse.attackedsob.Y;
                                    
suse.Effect1 attack.Effect1;
                                    
suse.AddTarget(attackedsobdamageattack);
                                    
client.SendScreen(susetrue);
                                    if (
client.Account.State == ahmedfathy.Database.AccountTable.AccountState.ProjectManager)
                                        
client.Send(new Message("Clone Attack With  Skill: " spell.NameSystem.Drawing.Color.CadetBlueMessage.Talk));

                                }
                            }
                        }
                        break;
                    } 





محمد ياسر 2019-10-24 12:26 AM

رد: حل مشكله اسكلة ShadowClone
 
عاش

Rider 2019-10-24 02:55 PM

رد: حل مشكله اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hazem (المشاركة 19388)
عاش

حبيبي


الساعة الآن 07:44 AM

مرحبا بكم في منتدي اكواد لتطوير الالعاب