منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   مشكلات السيرفيرات كونكر الشخصيه (https://code.vpscairo.com/forumdisplay.php?f=12)
-   -   ضربة القرصان (https://code.vpscairo.com/showthread.php?t=2547)

ViORX 2019-09-29 12:54 PM

ضربة القرصان
 
السلام عليكم
عندى مشكلة فى ضربة القرصان العادية يعنى الضربة بتاعته من بالايد عادى من غير اسكلة سريعة وقوية جدا لو قرب من حد وضربو من غير اسكله بيضربو 1 هت وفى شخصيات تانى كدة بردو
تحياتى ليكم

Tefa 2019-09-30 07:09 AM

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

ViORX 2019-10-01 02:05 AM

رد: ضربة القرصان
 
اقتباس:

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

هى مجرد لمسة من القرصان من غير اسكلة يعد ارقام سريعة وقوية بيموت اى حد 1 هت

ElSaher 2019-10-01 02:27 AM

رد: ضربة القرصان
 
انا معايا الحل بس مش هديك انتا حاجا خالص

لو طلبت اي حاجا مش هدهالك وانا غلطان اصلن اني بساعد ناس بي الاشكال دي

ElSaher 2019-10-01 02:29 AM

رد: ضربة القرصان
 
انا لازم ادهولك لازم لان المنتدا دا للمساعده خود اهي

هتبحق في السورس في Handle-Cs عن

#region PirateSpells
هتقفله بي السالب
وهتمسحه وهتضيف دا بداله في التعليق التاني

ElSaher 2019-10-01 02:30 AM

رد: ضربة القرصان
 
كود PHP:

                                #region PirateSpells

                                #region GaleBomb
                                
case 11070:
                                    if (
CanUseSpell(spellattacker.Owner))
                                    {

                                        
PrepareSpell(spellattacker.Owner);
                                        
Map map;
                                        
SpellUse suse = new SpellUse(true);
                                        
suse.Attacker attacker.UID;
                                        
suse.SpellID spell.ID;
                                        
suse.SpellLevel spell.Level;
                                        
suse.X;
                                        
suse.Y;
                                        
//suse.SpellLevelHu = client_Spell.LevelHu2;
                                        
MessiProject.Network.GamePackets.SpellUse.DamageClass tar = new SpellUse.DamageClass();
                                        
int num 0;

                                        switch (
spell.Level)
                                        {
                                            case 
0:
                                            case 
1:
                                                
num 3;
                                                break;
                                            case 
2:
                                            case 
3:
                                                
num 4;
                                                break;
                                            default:
                                                
num 5;
                                                break;
                                        }
                                        
int i 0;
                                        
Kernel.Maps.TryGetValue(attacker.Owner.Map.BaseIDout map);
                                        foreach (var 
t in attacker.Owner.Screen.Objects)
                                        {
                                            if (
== null)
                                                continue;
                                            if (
t.MapObjType == MapObjectType.Entity || t.MapObjType == MapObjectType.Monster)
                                            {
                                                var 
target as Entity;
                                                if (
Kernel.GetDistance(XYtarget.Xtarget.Y) <= spell.Range)
                                                {
                                                    if (
CanAttack(attackertargetspellfalse))
                                                    {
                                                        
tar.Damage Calculate.Ranged(attackertargetspellref attack);
                                                        
tar.Hit true;
                                                        
tar.newX target.X;
                                                        
tar.newY target.Y;
                                                        
Map.Pushback(ref tar.newXref tar.newYattacker.Facing5);

                                                        if (
map != null)
                                                        {
                                                            if (
map.Floor[tar.newXtar.newYMapObjectType.Entityattacker])
                                                            {
                                                                
target.tar.newX;
                                                                
target.tar.newY;
                                                            }
                                                            else
                                                            {
                                                                
tar.newX target.X;
                                                                
tar.newY target.Y;
                                                            }
                                                        }
                                                        else
                                                        {
                                                            if (
attacker.Owner.Map.Floor[tar.newXtar.newYMapObjectType.Entityattacker])
                                                            {
                                                                
target.tar.newX;
                                                                
target.tar.newY;
                                                            }
                                                            else
                                                            {
                                                                
target.tar.newX;
                                                                
target.tar.newY;
                                                            }
                                                        }
                                                        
suse.AddTarget(targettarattack);
                                                        
ReceiveAttack(attackertargetattackref tar.Damagespell);

                                                        
i++;
                                                        if (
num) break;
                                                    }
                                                }
                                            }
                                        }

                                        if (
attacker.EntityFlag == EntityFlag.Entity)
                                            
attacker.Owner.SendScreen(susetrue);
                                    }
                                    break;
                                
#endregion

                                #region BladeTempest
                                
case 11110:
                                    {
                                        if (
CanUseSpell(spellattacker.Owner))
                                        {
                                            
PrepareSpell(spellattacker.Owner);
                                            
SpellUse suse = new SpellUse(true);
                                            
suse.Attacker attacker.UID;
                                            
suse.SpellID spell.ID;
                                            
//suse.SpellLevelHu = 0;
                                            
suse.SpellLevel spell.Level;
                                            
ushort _X attacker.X_Y attacker.Y;
                                            
ushort _tX X_tY Y;
                                            
byte dist = (byte)spell.Distance;
                                            var Array = 
attacker.Owner.Screen.Objects;
                                            
InLineAlgorithm algo = new InLineAlgorithm(attacker.XXattacker.YYdist,
                                                                               
InLineAlgorithm.Algorithm.DDA);
                                            
attacker.X;
                                            
attacker.Y;
                                            
int i 0;
                                            for (
0algo.lcoords.Counti++)
                                            {
                                                if (
attacker.Owner.Map.Floor[algo.lcoords[i].Xalgo.lcoords[i].YMapObjectType.Entity]
                                                    && !
attacker.ThroughGate(algo.lcoords[i].Xalgo.lcoords[i].Y))
                                                {
                                                    
= (ushort)algo.lcoords[i].X;
                                                    
= (ushort)algo.lcoords[i].Y;
                                                }
                                                else
                                                {
                                                    break;
                                                }
                                            }
                                            
suse.X;
                                            
suse.Y;
                                            if (!
attacker.Owner.Map.Floor[XYMapObjectType.Entitynull])
                                                return;
                                            
double disth 1.6;

                                            foreach (
Interfaces.IMapObject _obj in Array)
                                            {
                                                
bool hit false;
                                                for (
int j 0ij++)
                                                    if (
Kernel.GetDDistance(_obj.X_obj.Y, (ushort)algo.lcoords[j].X, (ushort)algo.lcoords[j].Y) <= disth)
                                                        
hit true;
                                                if (
hit)
                                                {
                                                    if (
_obj.MapObjType == MapObjectType.Monster)
                                                    {
                                                        
attacked _obj as Entity;
                                                        if (
CanAttack(attackerattackedspellattack.AttackType == Attack.Melee))
                                                        {
                                                            var 
damage Game.Attacking.Calculate.Melee(attackerattackedspellref attack0);
                                                            
ReceiveAttack(attackerattackedattackref damagespell);

                                                            
suse.AddTarget(attackeddamageattack);
                                                        }
                                                    }
                                                    else if (
_obj.MapObjType == MapObjectType.Entity)
                                                    {
                                                        
attacked _obj as Entity;
                                                        if (
CanAttack(attackerattackedspellattack.AttackType == Attack.Melee))
                                                        {
                                                            var 
damage Game.Attacking.Calculate.Melee(attackerattackedspellref attack0);
                                                            
damage = (uint)(damage 1.1);
                                                            
ReceiveAttack(attackerattackedattackref damagespell);

                                                            
suse.AddTarget(attackeddamageattack);
                                                        }
                                                    }
                                                    else if (
_obj.MapObjType == MapObjectType.SobNpc)
                                                    {
                                                        
attackedsob _obj as SobNpcSpawn;
                                                        if (
CanAttack(attackerattackedsobspell))
                                                        {
                                                            var 
damage Game.Attacking.Calculate.Melee(attackerattackedsobref attack) * 3;

                                                            
ReceiveAttack(attackerattackedsobattackdamagespell);

                                                            
suse.AddTarget(attackedsobdamageattack);
                                                        }
                                                    }
                                                }
                                            }
                                            
attacker.PX attacker.X;
                                            
attacker.PY attacker.Y;
                                            
attacker.X;
                                            
attacker.Y;
                                            
attacker.Owner.SendScreen(susetrue);
                                            
attacker.Owner.Screen.Reload(suse);
                                        }
                                        break;
                                    }
                                
#endregion

                                #region Kraken`sRevenge
                                
case 11100:
                                    {
                                        if (
CanUseSpell(spellattacker.Owner))
                                        {

                                            
PrepareSpell(spellattacker.Owner);

                                            
SpellUse suse = new SpellUse(true);
                                            
suse.Attacker attacker.UID;
                                            
suse.SpellID spell.ID;
                                            
suse.SpellLevel spell.Level;
                                            
suse.X;
                                            
suse.Y;
                                            
int num 0;

                                            switch (
spell.Level)
                                            {
                                                case 
0:
                                                case 
1:
                                                    
num 3;
                                                    break;
                                                case 
2:
                                                case 
3:
                                                    
num 4;
                                                    break;
                                                default:
                                                    
num 5;
                                                    break;
                                            }

                                            
int i 0;
                                            
BlackSpotPacket bsp = new BlackSpotPacket();
                                            foreach (var 
t in attacker.Owner.Screen.Objects/*.OrderBy(x => Kernel.GetDistance(x.X, x.Y, attacker.Owner.Entity.X, attacker.Owner.Entity.Y))*/)
                                            {
                                                if (
== null)
                                                    continue;
                                                if (
t.MapObjType == MapObjectType.Entity || t.MapObjType == MapObjectType.Monster)
                                                {
                                                    var 
target as Entity;
                                                    if (
CanAttack(attackertargetspellfalse))
                                                    {
                                                        
target.IsBlackSpotted true;
                                                        
target.BlackSpotStamp Time32.Now;
                                                        
target.BlackSpotStepSecs spell.Duration;
                                                        
Kernel.BlackSpoted.TryAdd(target.UIDtarget);
                                                        
suse.AddTarget(target, new SpellUse.DamageClass(), attack);
                                                        
i++;
                                                        if (
== num) break;
                                                    }
                                                }
                                            }
                                            if (
attacker.EntityFlag == EntityFlag.Entity)
                                                
attacker.Owner.SendScreen(susetrue);

                                            foreach (var 
h in Program.Values)
                                            {
                                                foreach (var 
t in suse.Targets.Keys)
                                                {
                                                    
h.Send(bsp.ToArray(truet));
                                                }
                                            }
                                        }
                                        break;
                                    }
                                
#endregion

                                #region ScurvyBomb
                                
case 11040:
                                    if (
CanUseSpell(spellattacker.Owner))
                                    {

                                        
PrepareSpell(spellattacker.Owner);
                                        
Map map;
                                        
SpellUse suse = new SpellUse(true);
                                        
suse.Attacker attacker.UID;
                                        
suse.SpellID spell.ID;
                                        
suse.SpellLevel spell.Level;
                                        
suse.X;
                                        
suse.Y;
                                        
//suse.SpellLevelHu = client_Spell.LevelHu2;
                                        
MessiProject.Network.GamePackets.SpellUse.DamageClass tar = new SpellUse.DamageClass();
                                        
int num 0;

                                        switch (
spell.Level)
                                        {
                                            case 
0:
                                            case 
1:
                                                
num 3;
                                                break;
                                            case 
2:
                                            case 
3:
                                                
num 4;
                                                break;
                                            default:
                                                
num 5;
                                                break;
                                        }
                                        
int i 0;
                                        
Kernel.Maps.TryGetValue(attacker.Owner.Map.BaseIDout map);
                                        foreach (var 
t in attacker.Owner.Screen.Objects)
                                        {
                                            if (
== null)
                                                continue;
                                            if (
t.MapObjType == MapObjectType.Entity || t.MapObjType == MapObjectType.Monster)
                                            {
                                                var 
target as Entity;
                                                if (
Kernel.GetDistance(XYtarget.Xtarget.Y) <= spell.Range)
                                                {
                                                    if (
CanAttack(attackertargetspellfalse))
                                                    {
                                                        
tar.Damage Calculate.Ranged(attackertargetref attack);
                                                        
tar.Hit true;
                                                        
tar.newX target.X;
                                                        
tar.newY target.Y;
                                                        
Map.Pushback(ref tar.newXref tar.newYattacker.Facing5);

                                                        if (
map != null)
                                                        {
                                                            if (
map.Floor[tar.newXtar.newYMapObjectType.Entityattacker])
                                                            {
                                                                
target.tar.newX;
                                                                
target.tar.newY;
                                                            }
                                                            else
                                                            {
                                                                
tar.newX target.X;
                                                                
tar.newY target.Y;
                                                            }
                                                        }
                                                        else
                                                        {
                                                            if (
attacker.Owner.Map.Floor[tar.newXtar.newYMapObjectType.Entityattacker])
                                                            {
                                                                
target.tar.newX;
                                                                
target.tar.newY;
                                                            }
                                                            else
                                                            {
                                                                
target.tar.newX;
                                                                
target.tar.newY;
                                                            }
                                                        }

                                                        
suse.AddTarget(targettarattack);
                                                        
ReceiveAttack(attackertargetattackref tar.Damagespell);

                                                        
i++;
                                                        if (
num) break;
                                                    }
                                                }
                                            }
                                        }

                                        if (
attacker.EntityFlag == EntityFlag.Entity)
                                            
attacker.Owner.SendScreen(susetrue);
                                    }
                                    break;
                                
#endregion

                                #region Cannon Barrage
                                
case 11050:
                                    {
                                        if (
attacker.Owner.Entity.ContainsFlag(MessiProject.Network.GamePackets.Update.Flags.XPList))
                                        {
                                            
attacker.Owner.Entity.RemoveFlag(MessiProject.Network.GamePackets.Update.Flags.XPList);
                                            
attacker.Owner.Entity.AddFlag2(MessiProject.Network.GamePackets.Update.Flags2.CannonBarrage);
                                            
attacker.Owner.Entity.CannonBarrageStamp Time32.Now;
                                            return;
                                        }


                                        
PrepareSpell(spellattacker.Owner);

                                        
SpellUse suse = new SpellUse(true);
                                        
suse.Attacker attacker.UID;
                                        
suse.SpellID spell.ID;
                                        
suse.SpellLevel spell.Level;
                                        
suse.X;
                                        
suse.Y;
                                        
//suse.SpellLevelHu = client_Spell.LevelHu2;
                                        
MessiProject.Network.GamePackets.SpellUse.DamageClass tar = new SpellUse.DamageClass();
                                        foreach (var 
t in attacker.Owner.Screen.Objects)
                                        {
                                            if (
== null)
                                                continue;
                                            if (
t.MapObjType == MapObjectType.Entity || t.MapObjType == MapObjectType.Monster)
                                            {
                                                var 
target as Entity;
                                                if (
Kernel.GetDistance(attacker.Owner.Entity.Xattacker.Owner.Entity.Ytarget.Xtarget.Y) <= spell.Range)
                                                {
                                                    if (
CanAttack(attackertargetspellfalse))
                                                    {
                                                        
tar.Damage Calculate.Ranged(attackertargetref attackclient_Spell.LevelHu2);
                                                        
suse.AddTarget(targettarattack);
                                                        
ReceiveAttack(attackertargetattackref tar.Damagespell);
                                                    }
                                                }
                                            }
                                        }

                                        if (
attacker.EntityFlag == EntityFlag.Entity)
                                            
attacker.Owner.SendScreen(susetrue);

                                        break;
                                    }
                                
#endregion

                                #region Blackbeard`sRage
                                
case 11060:
                                    {
                                        if (
attacker.Owner.Entity.ContainsFlag(MessiProject.Network.GamePackets.Update.Flags.XPList))
                                        {
                                            
attacker.Owner.Entity.RemoveFlag(MessiProject.Network.GamePackets.Update.Flags.XPList);
                                            
attacker.Owner.Entity.AddFlag2(MessiProject.Network.GamePackets.Update.Flags2.BlackbeardsRage);
                                            
attacker.Owner.Entity.BlackbeardsRageStamp Time32.Now;
                                            return;
                                        }

                                        
int num 0;
                                        switch (
spell.Level)
                                        {
                                            case 
0:
                                            case 
1:
                                                
num 3;
                                                break;
                                            case 
2:
                                            case 
3:
                                                
num 4;
                                                break;
                                            default:
                                                
num 5;
                                                break;
                                        }
                                        
int i 0;
                                        
PrepareSpell(spellattacker.Owner);

                                        
SpellUse suse = new SpellUse(true);
                                        
suse.Attacker attacker.UID;
                                        
suse.SpellID spell.ID;
                                        
suse.SpellLevel spell.Level;
                                        
suse.X;
                                        
suse.Y;
                                        
//suse.SpellLevelHu = client_Spell.LevelHu2;
                                        
MessiProject.Network.GamePackets.SpellUse.DamageClass tar = new SpellUse.DamageClass();
                                        foreach (var 
t in attacker.Owner.Screen.Objects)
                                        {
                                            if (
== null)
                                                continue;
                                            if (
t.MapObjType == MapObjectType.Entity || t.MapObjType == MapObjectType.Monster)
                                            {
                                                var 
target as Entity;
                                                if (
Kernel.GetDistance(attacker.Owner.Entity.Xattacker.Owner.Entity.Ytarget.Xtarget.Y) <= spell.Range)
                                                {
                                                    if (
CanAttack(attackertargetspellfalse))
                                                    {
                                                        
tar.Damage Calculate.Ranged(attackertargetref attackclient_Spell.LevelHu2);
                                                        
suse.AddTarget(targettarattack);
                                                        
ReceiveAttack(attackertargetattackref tar.Damagespell);
                                                        
i++;
                                                        if (
== num) break;
                                                    }
                                                }
                                            }
                                        }

                                        if (
attacker.EntityFlag == EntityFlag.Entity)
                                            
attacker.Owner.SendScreen(susetrue);

                                        break;
                                    }
                                
#endregion

                                #endregion 


Tefa 2019-10-01 05:05 AM

رد: ضربة القرصان
 
اقتباس:

المشاركة الأصلية كتبت بواسطة mohamed x black (المشاركة 18554)
انا معايا الحل بس مش هديك انتا حاجا خالص

لو طلبت اي حاجا مش هدهالك وانا غلطان اصلن اني بساعد ناس بي الاشكال دي

1- الحل الي انته منزله غلط
2- اوعه تكلم اي حد تاني بنفس الاسلوب ده
3- اعتذرله علي الكلام الي انته قولته

Tefa 2019-10-01 05:16 AM

رد: ضربة القرصان
 
مشكله من اسكل تربل سواء مونك او قرصان
هتفتح handle.cs
هتبحث عن
كود PHP:

case 10490

لقيت فوقها او تحتها
كود PHP:

case 11140

تمام لو ملفتش بعد ما تخلص الي هتعمله ف الاولي هتعمله ف تانيه

المهم هتروح فوق
كود PHP:

ReceiveAttack

و تحط كود ده لحد ما تقلله لحد ما تظبط معاك
كود PHP:

 damage damage 50 100

بتعدل علي رقم 50

ViORX 2019-10-03 03:16 AM

رد: ضربة القرصان
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Rider (المشاركة 18561)
1- الحل الي انته منزله غلط
2- اوعه تكلم اي حد تاني بنفس الاسلوب ده
3- اعتذرله علي الكلام الي انته قولته

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

https://www13.0zz0.com/2019/10/03/04/945349041.png

https://www13.0zz0.com/2019/10/03/04/644684185.png

https://www13.0zz0.com/2019/10/03/04/791492231.png

https://www14.0zz0.com/2019/10/03/04/169371664.png

https://www14.0zz0.com/2019/10/03/04/342806696.png

https://www14.0zz0.com/2019/10/03/04/508707818.png

https://www4.0zz0.com/2019/10/03/04/140870415.png

https://www4.0zz0.com/2019/10/03/04/508288917.png

https://www4.0zz0.com/2019/10/03/04/174707165.png

https://www2.0zz0.com/2019/10/03/04/201033980.png

https://www2.0zz0.com/2019/10/03/04/944342207.png

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

ElSaher 2019-10-03 03:31 AM

رد: ضربة القرصان
 
اقتباس:

المشاركة الأصلية كتبت بواسطة rider (المشاركة 18561)
1- الحل الي انته منزله غلط
2- اوعه تكلم اي حد تاني بنفس الاسلوب ده
3- اعتذرله علي الكلام الي انته قولته

حاضر يا عم احمد


انا اسف يا عم

سلام يا ريدر


الساعة الآن 01:29 AM

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