كونكر عرب

كونكر عرب (https://conquer-arab.com/index.php)
-   مشكلات السيرفيرات كونكر الشخصيه (https://conquer-arab.com/forumdisplay.php?f=12)
-   -   مشكلة في اتاك الوحوش ارجوا الحل ضروري (https://conquer-arab.com/showthread.php?t=4150)

Abod ayman 2020-03-29 06:48 AM

مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
دلوقتي انا عندي مشكلة لما بضرب الوحش باي شخصية بيضرب ضربة ويقف ولازم ارجع ادوس على الوحش تاني حتى لو مثلا ثلاثي راهب(مونك) بيضرب ويقف ولازم افضل ادوس عالوحش ب استمرار علشان يتضرب و هكذا في عمود النقابة برضو لازم افضل ادوس عليه بعد كل ضربة ممكن حل بعد اذنكم ضروري

Rider 2020-03-29 01:56 PM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
هتلاقي حلها في قسم التطوير

Mr~Rayzo 2020-03-29 02:07 PM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
فى كلاس ورلد او ثرد على حسب سورسك
احبحث عن
كود PHP:

private void AutoAttackCallback 

هتنزل لحد ما تلاقى رقم خليه مثلا 150 وهتظبط معاك
كود PHP:

if (Now > client.Player.VortexAttackStamp.AddMilliseconds(150)) 


Rider 2020-03-29 02:24 PM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Mr~Rayzo (المشاركة 34411)
فى كلاس ورلد او ثرد على حسب سورسك
احبحث عن
كود PHP:

private void AutoAttackCallback 

هتنزل لحد ما تلاقى رقم خليه مثلا 150 وهتظبط معاك
كود PHP:

if (Now > client.Player.VortexAttackStamp.AddMilliseconds(150)) 


غلط هوه بيبدل
كود PHP:

AutoAttackCallback 

كله

Abod ayman 2020-03-29 05:15 PM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
اقتباس:

المشاركة الأصلية كتبت بواسطة rider (المشاركة 34410)
هتلاقي حلها في قسم التطوير

انا دورت في قسم التطوير لقيت موضوع تعديل الاتاك كامل سورس احمد فتحي هل هوا ده الموضوع ولا مش هوا وللعلم ان الاتاك عندي مظبوط ما عدا ضربة الوحش

Mr~Rayzo 2020-03-29 09:21 PM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
اقتباس:

المشاركة الأصلية كتبت بواسطة rider (المشاركة 34417)
غلط هوه بيبدل
كود PHP:

autoattackcallback 

كله

استااز بصوت وديع 😂

Rider 2020-03-29 10:55 PM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
بدل الي عندك ب ده
كود PHP:

 private void AutoAttackCallback(GameState client, int time)
        {
            if (!
Valid(client)) return;
            
Time32 Now = new Time32(time);
            
#region WaniacDance
            
if (client.Player.EpicWarrior() && client.Player.ContainsFlag3(Update.Flags3.WaniacDance))
            {
                var 
spell = Database.SpellTable.GetSpell(12700, client);
                
SpellUse suse = new SpellUse(true);
                
suse.Attacker = client.Player.UID;
                
suse.SpellID = 12700;
                
suse.X = client.Player.X;
                
suse.Y = client.Player.Y;
                foreach (var 
obj in client.Screen.Objects)
                {
                    if (
obj == null) continue;
                    var 
attacked = obj as Entity;
                    if (
attacked == null) continue;
                    if (
Kernel.GetDistance(client.Player.X, client.Player.Y, attacked.X, attacked.Y) < 6)
                    {
                        if (
Game.Attacking.Handle.CanAttack(client.Player, attacked, null, true))
                        {
                            var 
attack = new Attack(true);
                            
attack.Attacker = client.Player.UID;
                            
attack.Attacked = attacked.UID;

                            
uint damage = Game.Attacking.Calculate.Melee(client.Player, attacked, spell, ref attack);
                            
attack.Damage = damage;
                            
attack.SpellID = 12700;
                            
suse.Effect1 = attack.Effect1;

                            
Game.Attacking.Handle.ReceiveAttack(client.Player, attacked, attack, ref damage, spell);

                            
suse.AddTarget(attacked, damage, attack);
                        }
                    }
                }
                
client.SendScreen(suse, true);
            }
            
#endregion
            
if (client.Player.AttackPacket != null || client.Player.VortexPacket != null)
            {
                try
                {
                    if (
client.Player.ContainsFlag(Network.GamePackets.Update.Flags.ShurikenVortex))
                    {
                        if (
client.Player.VortexPacket != null && client.Player.VortexPacket.ToArray() != null)
                        {
                            if (
Now > client.Player.VortexAttackStamp.AddMilliseconds(1))
                            {
                                
client.Player.VortexAttackStamp = Now;
                                
client.Player.VortexPacket.AttackType = Attack.Magic;
                                new 
Game.Attacking.Handle(client.Player.VortexPacket, client.Player, null);
                            }
                        }
                    }
                    else
                    {
                        var 
AttackPacket = client.Player.AttackPacket;
                        if (
AttackPacket != null && AttackPacket.ToArray() != null)
                        {
                            
uint AttackType = AttackPacket.AttackType;
                            if (
AttackType == Network.GamePackets.Attack.Magic || AttackType == Network.GamePackets.Attack.Melee || AttackType == Network.GamePackets.Attack.Ranged)
                            {
                                if (
AttackType == Network.GamePackets.Attack.Magic)
                                {
                                    if (
Now > client.Player.AttackStamp.AddSeconds(2))
                                    {
                                        if (
AttackPacket.Damage != 12160 &&
                                            
AttackPacket.Damage != 12170 &&
                                            
AttackPacket.Damage != 12120 &&
                                            
AttackPacket.Damage != 12130 &&
                                            
AttackPacket.Damage != 12140 &&
                                            
AttackPacket.Damage != 12320 &&
                                            
AttackPacket.Damage != 12330 &&
                                            
AttackPacket.Damage != 12340 &&
                                            
AttackPacket.Damage != 12570 &&
                                            
AttackPacket.Damage != 12210)
                                        {
                                            new 
Game.Attacking.Handle(AttackPacket, client.Player, null);
                                        }
                                    }
                                }

                                else
                                {
                                    
int decrease = -300;
                                    if (
client.Player.ContainsFlag4(Update.Flags4.xFreezingPelter)) decrease += 1000;
                                    if (
client.Player.OnCyclone())
                                        
decrease = 700;
                                    if (
client.Player.OnSuperman())
                                        
decrease = 200;
                                    if (
Now > client.Player.AttackStamp.AddMilliseconds((1000 - client.Player.Agility - decrease) * (int)(AttackType == Network.GamePackets.Attack.Ranged ? 1 : 1)))
                                    {
                                        new 
Game.Attacking.Handle(AttackPacket, client.Player, null);
                                    }
                                }
                            }
                        }
                    }
                }
                catch (
Exception e)
                {
                    
Program.SaveException(e);
                    
client.Player.AttackPacket = null;
                    
client.Player.VortexPacket = null;
                }
            }
        } 


Abod ayman 2020-03-30 02:26 AM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
اقتباس:

المشاركة الأصلية كتبت بواسطة rider (المشاركة 34496)
بدل الي عندك ب ده
كود PHP:

 private void autoattackcallback(gamestate client, int time)
        {
            if (!
valid(client)) return;
            
time32 now = new time32(time);
            
#region waniacdance
            
if (client.player.epicwarrior() && client.player.containsflag3(update.flags3.waniacdance))
            {
                var 
spell = database.spelltable.getspell(12700, client);
                
spelluse suse = new spelluse(true);
                
suse.attacker = client.player.uid;
                
suse.spellid = 12700;
                
suse.x = client.player.x;
                
suse.y = client.player.y;
                foreach (var 
obj in client.screen.objects)
                {
                    if (
obj == null) continue;
                    var 
attacked = obj as entity;
                    if (
attacked == null) continue;
                    if (
kernel.getdistance(client.player.x, client.player.y, attacked.x, attacked.y) < 6)
                    {
                        if (
game.attacking.handle.canattack(client.player, attacked, null, true))
                        {
                            var 
attack = new attack(true);
                            
attack.attacker = client.player.uid;
                            
attack.attacked = attacked.uid;

                            
uint damage = game.attacking.calculate.melee(client.player, attacked, spell, ref attack);
                            
attack.damage = damage;
                            
attack.spellid = 12700;
                            
suse.effect1 = attack.effect1;

                            
game.attacking.handle.receiveattack(client.player, attacked, attack, ref damage, spell);

                            
suse.addtarget(attacked, damage, attack);
                        }
                    }
                }
                
client.sendscreen(suse, true);
            }
            
#endregion
            
if (client.player.attackpacket != null || client.player.vortexpacket != null)
            {
                try
                {
                    if (
client.player.containsflag(network.gamepackets.update.flags.shurikenvortex))
                    {
                        if (
client.player.vortexpacket != null && client.player.vortexpacket.toarray() != null)
                        {
                            if (
now > client.player.vortexattackstamp.addmilliseconds(1))
                            {
                                
client.player.vortexattackstamp = now;
                                
client.player.vortexpacket.attacktype = attack.magic;
                                new 
game.attacking.handle(client.player.vortexpacket, client.player, null);
                            }
                        }
                    }
                    else
                    {
                        var 
attackpacket = client.player.attackpacket;
                        if (
attackpacket != null && attackpacket.toarray() != null)
                        {
                            
uint attacktype = attackpacket.attacktype;
                            if (
attacktype == network.gamepackets.attack.magic || attacktype == network.gamepackets.attack.melee || attacktype == network.gamepackets.attack.ranged)
                            {
                                if (
attacktype == network.gamepackets.attack.magic)
                                {
                                    if (
now > client.player.attackstamp.addseconds(2))
                                    {
                                        if (
attackpacket.damage != 12160 &&
                                            
attackpacket.damage != 12170 &&
                                            
attackpacket.damage != 12120 &&
                                            
attackpacket.damage != 12130 &&
                                            
attackpacket.damage != 12140 &&
                                            
attackpacket.damage != 12320 &&
                                            
attackpacket.damage != 12330 &&
                                            
attackpacket.damage != 12340 &&
                                            
attackpacket.damage != 12570 &&
                                            
attackpacket.damage != 12210)
                                        {
                                            new 
game.attacking.handle(attackpacket, client.player, null);
                                        }
                                    }
                                }

                                else
                                {
                                    
int decrease = -300;
                                    if (
client.player.containsflag4(update.flags4.xfreezingpelter)) decrease += 1000;
                                    if (
client.player.oncyclone())
                                        
decrease = 700;
                                    if (
client.player.onsuperman())
                                        
decrease = 200;
                                    if (
now > client.player.attackstamp.addmilliseconds((1000 - client.player.agility - decrease) * (int)(attacktype == network.gamepackets.attack.ranged ? 1 : 1)))
                                    {
                                        new 
game.attacking.handle(attackpacket, client.player, null);
                                    }
                                }
                            }
                        }
                    }
                }
                catch (
exception e)
                {
                    
program.saveexception(e);
                    
client.player.attackpacket = null;
                    
client.player.vortexpacket = null;
                }
            }
        } 


والله مجهودك يا رايدر اكترر من راائع وجاري التجربة

Rider 2020-03-30 03:46 AM

رد: مشكلة في اتاك الوحوش ارجوا الحل ضروري
 
بالتوفيق ان شاء الله


الساعة الآن 07:06 PM

مرحبا بكم في منتدي اكواد لتطوير الالعاب
new notificatio by 9adq_ala7sas