احصائياتى

الردود
47

المشاهدات
5176
 
Hazem
.:: المدير العام::.

    غير متواجد

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

+التقييم
0.84

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

الاقامة
Egypt

نظام التشغيل
windows 7

رقم العضوية
1
2019-08-08, 09:02 AM
المشاركة 1
2019-08-08, 09:02 AM
المشاركة 1
افتراضي اضافه ابيك القرصان للسورسات العاديه

السلام عليكم ورحمة الله وبركاته
اضافة ابيك القرصان للسورسات العاديه ده طلب الضعو اسامه
يلا ندخل علي الاكواد
في Entity.cs
حط دول

كود:
  public bool EpicPirate()
        {

            if (
EntityFlag == Game.EntityFlag.Entity)
            {

                var 
weapons = Owner.Weapons;

                if (
weapons.Item1 != null && weapons.Item2 != null)

                    if (
weapons.Item1.ID / 1000 == 671 && weapons.Item2.ID / 1000 == 670)

                        return 
true;

            }

            return 
false;
        } 

كلاس PacketHandler.cs
ابحث عن

كود:
public static Positions ItemPositionFromID(UInt32 itemid) 

تحت القوس اي اضافه في الفويد حط دول

كود:
  else if (iType == 1050 || iType == 900 || iType == 619)
                return 
Positions.Left;
            else if ((
iType >= 410 && iType <= 490) || (iType >= 500 && iType <= 580) || (iType >= 601 && iType <= 617) || iType == 620 || iType == 624 || iType == 626)
                return 
Positions.Right; 

في نفس الكلاس
ابحث عن

كود:
public static ushort ItemPosition(uint ID) 

تحت القوس ضيف دول

كود:
#region EpicPirate K7host.com
            
if (ID >= 670003 && ID <= 670439)

                return 
ConquerItem.LeftWeapon;




            if (
ID >= 671003 && ID <= 671439)

                return 
ConquerItem.RightWeapon;
            if (
iType == 671)

                return 
ConquerItem.RightWeapon;

            if (
iType == 670)

                return 
ConquerItem.LeftWeapon;
            
#endregion 

في نفس الكلاس ابحث عن

كود:
public static bool IsRapier(uint ID) 

واقفله من السالب وبدله بده

كود:
 public static bool IsRapier(uint ID)
        {

            if (
ID >= 611000 && ID <= 611439 || (ID >= 670000 && ID <= 670439))

            { return 
true; }

            else { return 
false; }

        } 

في نفس الكلاس ابحث عن

كود:
public static bool IsPistol(uint ID) 

اقفله من السالب وبدله بده

كود:
public static bool IsPistol(uint ID) 
{ 

if (
ID >= 612000 && ID <= 612439 || ID >= 671000 && ID <= 671439) 

{ return 
true; } 

else { return 
false; } 

} 

في نفس الكلاس ابحث عن

كود:
bool twohand = IsTwoHand(item.ID); 

تختيه ضيف دول

كود:
                if (client.Entity.Class >= 70 && client.Entity.Class <= 75)
                {

                    if (
itemUsage.dwParam > 20)
                    {

                        if (!
client.Equipment.Free(24))
                        {

                            if (
IsRapier(client.Equipment.TryGetItem(24).ID))
                            {

                                if (
IsPistol(item.ID))
                                {

                                    
can2wpn = true;

                                }

                            }

                        }

                    }

                    else if (!
client.Equipment.Free(4))
                    {

                        if (
IsRapier(client.Equipment.TryGetItem(4).ID))
                        {

                            if (
IsPistol(item.ID))
                            {

                                
can2wpn = true;

                            }

                        }

                    }

                } 

افتح بقي الايام في السورس و ايتم تيب في الجيم و حط دول


كود:
670439@@OceanDominator@@70@@12@@140@@0@@0@@36@@0@@0@@0@@0@@100000@@0@@3666@@2554@@0@@78@@0@@2616@@0@@7099@@7099@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@1000@@0@@0@@0@@0@@0@@0@@300@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@EpicWeapon@@None@@5@@0@@0@@0@@1070@@500@@0@@0@@0@@0@@0@@ 
670239@@DivineDictator@@70@@0@@120@@0@@0@@36@@0@@0@@0@@0@@200000@@0@@2313@@1212@@0@@61@@0@@149@@0@@7099@@7099@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@1000@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@20@@0@@0@@0@@0@@0@@0@@0@@EpicWeapon@@None@@5@@0@@0@@0@@1360@@500@@0@@0@@0@@0@@0@@ 

670009@@TempestPlunder@@70@@0@@5@@0@@0@@2@@0@@0@@0@@0@@153@@0@@15@@9@@0@@61@@0@@6@@0@@1599@@1599@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@1000@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@20@@0@@0@@0@@0@@0@@0@@0@@EpicWeapon@@None@@5@@0@@0@@0@@1360@@500@@0@@0@@0@@0@@0@@ 

671439@@MightyRapierofViolence@@70@@11@@140@@0@@0@@36@@0@@0@@0@@0@@100000@@0@@3300@@2800@@0@@78@@0@@0@@0@@7099@@7099@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@1000@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@EpicWeapon@@None@@5@@0@@0@@0@@1060@@500@@0@@0@@0@@0@@0@@ 

671239@@MightyRapierofAmbition@@70@@0@@120@@0@@0@@36@@0@@0@@0@@0@@200000@@0 @@2330@@1200@@0@@61@@0@@0@@0@@7099@@7099@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@1000@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@20@@0@@0@@0@@0@@0@@0@@0@@EpicWeapon@@None@@5@@0@@0@@0@@1350@@500@@0@@0@@0@@0@@0@@ 

671009@@MightyRapierofInvasion@@70@@0@@5@@0@@0@@2 @@0@@0@@0@@153@@0@@15@@9@@0@@0@@61@@0@@0@@0@@1599@@1599@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@1000@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@20@@0@@0@@0@@0@@0@@0@@0@@EpicWeapon@@None@@5@@0@@0@@0@@1350@@500@@0@@0@@0@@0@@0@@ 

و بعد كده
ضيف بقي الايتم

في Data جوة الباتش
عفواً لايمكن عرض الرابط إلا بعد الرد على الموضوع
و بعد كده

في فلد ani
افتح
ItemMinIcon
و برضوا
MapItemIcon
تكست
و ضيف في اخرها
دول
عفواً لايمكن عرض الرابط إلا بعد الرد على الموضوع
حمل الباتش وعلي فكره الباتش عربي فخلي بالك ليبوظ لعبتك
عفواً لايمكن عرض الرابط إلا بعد الرد على الموضوع
في النفي كات
ضيف دول

كود:
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14570, 14570, 0078, 'LeftChop', 1, 1, 0, 0000, 0000, 0000, 30200, 0000, 0030, 0000, 0003, 0008, 0000, 0000, 20243, 0015, 0, 61626626, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14580, 14580, 0078, 'RightChop', 1, 1, 0, 0000, 0000, 0000, 30200, 0000, 0030, 0000, 0003, 0008, 0000, 0000, 20243, 0015, 0, 61626626, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14590, 14590, 0081, 'Gunfire', 1, 1, 0, 0000, 0000, 0000, 30200, 0000, 0030, 0000, 0003, 0008, 0000, 0000, 20243, 0015, 0, 61626626, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14680, 14680, 0090, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30100, 0000, 0030, 0000, 0003, 0008, 0000, 900000, 10000, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14681, 14680, 0000, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30102, 0000, 0030, 0000, 0003, 0008, 0000, 3000000, 30000, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14682, 14680, 0005, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30104, 0000, 0030, 0000, 0003, 0008, 0000, 10000000, 60000, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0001, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14683, 14680, 0090, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30106, 0000, 0030, 0000, 0003, 0008, 0000, 50000000, 120000, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14684, 14680, 0090, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30108, 0000, 0030, 0000, 0003, 0008, 0000, 100000000, 240000, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0001, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14685, 14680, 0090, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30110, 0000, 0030, 0000, 0003, 0008, 0000, 100000000, 6000000, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14686, 14680, 0090, 'SeaBurial', 1, 1, 0, 0000, 0000, 0000, 30115, 0000, 0030, 0000, 0003, 0008, 0000, 500000000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0001, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14710, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14711, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 1000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14712, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 10000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14713, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 50000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14714, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 100000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14715, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 500000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14716, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 900000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14717, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 1300000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14718, 14710, 0006, 'ImmortalForce', 0, 0, 0, 0002, 0000, 0000, 1, 0000, 0100, 0010, 0000, 0000, 0220, 0000, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14720, 14720, 0021, 'BloomofDeath', 1, 1, 4, 0000, 0000, 0000, 30180, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14721, 14720, 0021, 'BloomofDeath', 1, 1, 4, 0001, 0000, 0000, 30185, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14722, 14720, 0021, 'BloomofDeath', 1, 1, 4, 0002, 0000, 0000, 30195, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14723, 14720, 0021, 'BloomofDeath', 1, 1, 4, 0003, 0000, 0000, 30200, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14724, 14720, 0021, 'BloomofDeath', 1, 1, 4, 0004, 0000, 0000, 30220, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14725, 14720, 0021, 'BloomofDeath', 1, 1, 4, 0005, 0000, 0000, 30225, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14726, 14720, 0021, 'BloomofDeath', 0, 0, 0, 0006, 0000, 0000, 30230, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14727, 14720, 0021, 'BloomofDeath', 0, 0, 0, 0007, 0000, 0000, 30235, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 
INSERT INTO `cq1`.`spells`(`id`, `type`, `sort`, `name`, `crime`, `ground`, `multi`, `target`, `level`, `use_mp`, `power`, `intone_speed`, `percent`, `step_secs`, `range`, `distance`, `status`, `need_prof`, `need_exp`, `need_level`, `use_xp`, `weapon_subtype`, `active_times`, `auto_active`, `floor_attr`, `auto_learn`, `learn_level`, `drop_weapon`, `use_ep`, `weapon_hit`, `use_item`, `next_magic`, `delay_ms`, `use_item_num`, `IncreaseDmg`, `DecreaseDmg`) VALUES (14728, 14720, 0021, 'BloomofDeath', 0, 0, 0, 0008, 0000, 0000, 30245, 0000, 0100, 0010, 0000, 0000, 0220, 0500, 0, 0015, 0, 60671670, 0000, 0, 0000, 0, 0000, 0, 0000, 0, 0000, 0000, 0000, 0000, 1, 1); 

اتغير ال cq1 باسم القاعده الي فيه اللعبه
ثانيا الهاندل Handle.cs
هتروح
#region Melee
و هتنزل تحت اسكلات الويندويكر
و تضيف

كود:
 #region EpicPirate(Melee) 
                            
if (attacker.EpicPirate()) 
                            { 
                                
#region EpicPirate 14570 


                              //  var lastattacked = attacked; 
                                
var spell20 = Database.SpellTable.GetSpell(14570, attacker.Owner); 
                                if (
Kernel.Rate(spell20.Percent) && attacker.Owner.Spells.ContainsKey(14570) && attacker.EpicPirate()) 
                                { 
                                   
                                    { 
                                        
MsgMagicEffect suse = new MsgMagicEffect(true); 
                                        
suse.Attacker = attacker.UID; 
                                        
suse.SpellID = spell20.ID; 
                                        
suse.SpellLevel = spell20.Level; 
                                        
suse.X = lastattacked.X; 
                                        
suse.Y = lastattacked.Y; 
                                        foreach (
Interfaces.IMapObject _obj in attacker.Owner.Screen.Objects) 
                                        { 
                                            if (
_obj == null) 
                                                continue; 
                                            
attacked = _obj as Player; 
                                            if (
attacked == null) continue; 
                                            if (
Kernel.GetDistance(attacked.X, attacked.Y, attacker.X, attacker.Y) <= spell20.Range) 
                                            { 
                                                if (
_obj.MapObjType == MapObjectType.Player) 
                                                { 
                                                    if (!
CanAttack(attacker, attacked, null, attack.InteractType == MsgInteract.Melee)) continue; 


                                                    
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 
                                                    
attack.Damage = 0; 
                                                    
                                                    
damage = (damage * spell20.IncreaseDMG); 
                                                    
damage = (damage / spell20.DecreaseDMG); 
                                                    
ReceiveAttack(attacker, attacked, attack, ref damage, spell5); 
                                                    
suse.AddTarget(attacked.UID, damage, attack); 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.Monster) 
                                                { 
                                                    if (!
CanAttack(attacker, attacked, null, attack.InteractType == MsgInteract.Melee)) continue; 




                                                    
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 


                                                    
attack.Damage = 0; 


                                                    
damage = (damage * spell20.IncreaseDMG); 
                                                    
damage = (damage / spell20.DecreaseDMG); 
                                                    
ReceiveAttack(attacker, attacked, attack, ref damage, spell20); 
                                                    
suse.AddTarget(attacked.UID, damage, attack); 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.SobNpc) 
                                                { 
                                                    
attackedsob = _obj as MsgNpcInfoEX; 
                                                    if (
Kernel.GetDistance(lastattacked.X, lastattacked.Y, attackedsob.X, attackedsob.Y) <= 5) 
                                                    { 
                                                        if (
Handle.CanAttack(attacker, attackedsob, spell20)) 
                                                        { 
                                                            
// lastattacked = attackedsob; 
                                                            
uint damages = Game.Attacking.Calculate.Melee(attacker, attackedsob, ref attack); 
                                                            
suse.Effect2 = attack.Effect2; 
                                                            if (
damages == 0) break; 
                                                            
Handle.ReceiveAttack(attacker, attackedsob, attack, damages, spell20); 
                                                            
suse.AddTarget(attackedsob.UID, damages, attack); 
                                                        } 
                                                    } 
                                                } 
                                            } 


                                        } 
                                        
attacker.AttackPacket = null; 
                                        
attacker.Owner.SendScreen(suse, true); 


                                    } 
                                     




                                    return; 
                                } 
                                
#endregion 
                                #region EpicPirate 14580 
                                //  var lastattacked = attacked; 
                                
var spell21 = Database.SpellTable.GetSpell(14580, attacker.Owner); 
                                if (
Kernel.Rate(spell21.Percent) && attacker.Owner.Spells.ContainsKey(14580) && attacker.EpicPirate()) 
                                { 
                                    
#region EpicPirate 
                                    
{ 
                                        
MsgMagicEffect suse = new MsgMagicEffect(true); 
                                        
suse.Attacker = attacker.UID; 
                                        
suse.SpellID = spell21.ID; 
                                        
suse.SpellLevel = spell21.Level; 
                                        
suse.X = lastattacked.X; 
                                        
suse.Y = lastattacked.Y; 
                                        foreach (
Interfaces.IMapObject _obj in attacker.Owner.Screen.Objects) 
                                        { 
                                            if (
_obj == null) 
                                                continue; 
                                            
attacked = _obj as Player; 
                                            if (
attacked == null) continue; 
                                            if (
Kernel.GetDistance(attacked.X, attacked.Y, attacker.X, attacker.Y) <= spell21.Range) 
                                            { 
                                                if (
_obj.MapObjType == MapObjectType.Player) 
                                                { 
                                                    if (!
CanAttack(attacker, attacked, null, attack.InteractType == MsgInteract.Melee)) continue; 


                                                    
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 
                                                    
attack.Damage = 0; 


                                                    
damage = (damage * spell21.IncreaseDMG); 
                                                    
damage = (damage / spell21.DecreaseDMG); 
                                                    
ReceiveAttack(attacker, attacked, attack, ref damage, spell21); 
                                                    
suse.AddTarget(attacked.UID, damage, attack); 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.Monster) 
                                                { 
                                                    if (!
CanAttack(attacker, attacked, null, attack.InteractType == MsgInteract.Melee)) continue; 




                                                    
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 
                                                    
attack.Damage = 0; 


                                                    
damage = (damage * spell21.IncreaseDMG); 
                                                    
damage = (damage / spell21.DecreaseDMG); 
                                                    
ReceiveAttack(attacker, attacked, attack, ref damage, spell21); 
                                                    
suse.AddTarget(attacked.UID, damage, attack); 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.SobNpc) 
                                                { 
                                                    
attackedsob = _obj as MsgNpcInfoEX; 
                                                    if (
Kernel.GetDistance(lastattacked.X, lastattacked.Y, attackedsob.X, attackedsob.Y) <= 5) 
                                                    { 
                                                        if (
Handle.CanAttack(attacker, attackedsob, spell5)) 
                                                        { 
                                                            
// lastattacked = attackedsob; 
                                                            
uint damages = Game.Attacking.Calculate.Melee(attacker, attackedsob, ref attack); 
                                                            
suse.Effect2 = attack.Effect2; 
                                                            if (
damages == 0) break; 
                                                            
Handle.ReceiveAttack(attacker, attackedsob, attack, damages, spell5); 
                                                            
suse.AddTarget(attackedsob.UID, damages, attack); 
                                                        } 
                                                    } 
                                                } 


                                            } 


                                        } 
                                        
attacker.AttackPacket = null; 
                                        
attacker.Owner.SendScreen(suse, true); 


                                    } 
                                    
#endregion 




                                    
return; 
                                } 
                                
#endregion 




                                #region EpicPirate 14590 






                                //  var lastattacked = attacked; 
                                
var spell22 = Database.SpellTable.GetSpell(14590, attacker.Owner); 
                                if (
Kernel.Rate(spell22.Percent) && attacker.Owner.Spells.ContainsKey(14590) && attacker.EpicPirate()) 
                                { 
                                    
#region EpicPirate 
                                    
{ 
                                        
MsgMagicEffect suse = new MsgMagicEffect(true); 
                                        
suse.Attacker = attacker.UID; 
                                        
suse.SpellID = spell22.ID; 
                                        
suse.SpellLevel = spell22.Level; 
                                        
suse.X = lastattacked.X; 
                                        
suse.Y = lastattacked.Y; 


                                         foreach (
Interfaces.IMapObject _obj in attacker.Owner.Screen.Objects) 
                                        { 
                                            if (
_obj == null) 
                                                continue; 
                                            
attacked = _obj as Player; 
                                            if (
attacked == null) continue; 
                                            if (
Kernel.GetDistance(attacked.X, attacked.Y, attacker.X, attacker.Y) <= spell22.Range) 
                                            { 
                                                if (
_obj.MapObjType == MapObjectType.Player) 
                                                { 
                                                    if (!
CanAttack(attacker, attacked, null, attack.InteractType == MsgInteract.Melee)) continue; 


                                                    
attacker.Update(MsgName.Mode.Effect, "hdswzfwodrd", true);// hdswzfwodrd 
                                                    
attacker.Update(MsgName.Mode.Effect, "hdswzf-shouji", true); 
                                                    
attacker.Update(MsgName.Mode.Effect, "hdswzf-shifa", true); 
                                                    
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 


                                                    
attack.Damage = 0; 


                                                    
damage = (damage * spell22.IncreaseDMG); 
                                                    
damage = (damage / spell22.DecreaseDMG); 
                                                    
ReceiveAttack(attacker, attacked, attack, ref damage, spell22); 
                                                    
suse.AddTarget(attacked.UID, damage, attack); 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.Monster) 
                                                { 
                                                    if (!
CanAttack(attacker, attacked, null, attack.InteractType == MsgInteract.Melee)) continue; 


                                                    
attacker.Update(MsgName.Mode.Effect, "hdswzfwodrd", true);// hdswzfwodrd 
                                                    
attacker.Update(MsgName.Mode.Effect, "hdswzf-shouji", true); 
                                                    
attacker.Update(MsgName.Mode.Effect, "hdswzf-shifa", true); 
                                                    
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 


                                                    
attack.Damage = 0; 


                                                    
damage = (damage * spell22.IncreaseDMG); 
                                                    
damage = (damage / spell22.DecreaseDMG); 
                                                    
ReceiveAttack(attacker, attacked, attack, ref damage, spell22); 
                                                    
suse.AddTarget(attacked.UID, damage, attack); 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.SobNpc) 
                                                { 
                                                    
attackedsob = _obj as MsgNpcInfoEX; 
                                                    if (
Kernel.GetDistance(lastattacked.X, lastattacked.Y, attackedsob.X, attackedsob.Y) <= 5) 
                                                    { 
                                                        if (
Handle.CanAttack(attacker, attackedsob, spell5)) 
                                                        { 
                                                            
attacker.Update(MsgName.Mode.Effect, "hdswzfwodrd", true);// hdswzfwodrd 
                                                            
attacker.Update(MsgName.Mode.Effect, "hdswzf-shouji", true); 
                                                            
attacker.Update(MsgName.Mode.Effect, "hdswzf-shifa", true); 
                                                            
// lastattacked = attackedsob; 
                                                            
uint damages = Game.Attacking.Calculate.Melee(attacker, attackedsob, ref attack); 
                                                            
suse.Effect2 = attack.Effect2; 
                                                            if (
damages == 0) break; 
                                                            
Handle.ReceiveAttack(attacker, attackedsob, attack, damages, spell5); 
                                                            
suse.AddTarget(attackedsob.UID, damages, attack); 
                                                        } 
                                                    } 
                                                } 


                                            } 


                                        } 
                                        
attacker.AttackPacket = null; 
                                        
attacker.Owner.SendScreen(suse, true); 


                                    } 
                                    
#endregion 




                                    
return; 
                                } 


                                
#endregion 


                                //case 14720: 
                                #region EpicPirate 14720 
                                //  var lastattacked = attacked; 
                                
var spell23 = Database.SpellTable.GetSpell(14720, attacker.Owner); 
                                if (
Kernel.Rate(spell23.Percent) && attacker.Owner.Spells.ContainsKey(14720) && attacker.EpicPirate()) 
                                { 
                                    
#region EpicPirate 
                                    
{ 
                                        
MsgMagicEffect suse = new MsgMagicEffect(true); 
                                        
suse.Attacker = attacker.UID; 
                                        
suse.SpellID = spell23.ID; 
                                        
suse.SpellLevel = spell23.Level; 


                                        
ushort _X = attacker.X, _Y = attacker.Y; 
                                        
ushort _tX = X, _tY = Y; 
                                        
byte dist = (byte)spell23.Distance; 
                                        var Array = 
attacker.Owner.Screen.Objects; 
                                        
InLineAlgorithm algo = new InLineAlgorithm(attacker.X, X, attacker.Y, Y, dist, 
                                        
InLineAlgorithm.Algorithm.DDA); 
                                        
X = attacker.X; 
                                        
X = attacker.Y; 




                                        
int i = 0; 
                                        for (
i = 0; i < algo.lcoords.Count; i++) 
                                        { 








                                            if (
attacker.Owner.Map.Floor[algo.lcoords[i].X, algo.lcoords[i].Y, MapObjectType.Player] 
                                            && !
attacker.ThroughGate(algo.lcoords[i].X, algo.lcoords[i].Y)) 
                                            { 
                                                
X = (ushort)algo.lcoords[i].X; 
                                                
Y = (ushort)algo.lcoords[i].Y; 
                                            } 
                                            else 
                                            { 
                                                break; 
                                            } 
                                        } 
                                        
suse.X = X; 
                                        
suse.Y = Y; 
                                        if (!
attacker.Owner.Map.Floor[X, Y, MapObjectType.Player, null]) 
                                            return; 
                                        
                                        
double disth = 1.5; 
                                        foreach (
Interfaces.IMapObject _obj in Array) 
                                        { 
                                            
bool hit = false; 
                                            for (
int j = 0; j < i; j++) 
                                                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 Player; 
                                                    if (
CanAttack(attacker, attacked, spell23, 
                                                        
attack.InteractType == MsgInteract.Melee)) 
                                                    { 
                                                        var 
damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack); 
                                                        
damage = (damage * spell23.IncreaseDMG); 
                                                        
damage = (damage / spell23.DecreaseDMG); 
                                                        
ReceiveAttack(attacker, attacked, attack, ref damage, spell23); 
                                                        
attacked.Update(MsgName.Mode.Effect, "zssjhdsssj", true); 
                                                        
suse.AddTarget(attacked.UID, damage, attack); 
                                                    } 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.Player) 
                                                { 
                                                    
attacked = _obj as Player; 
                                                    if (
CanAttack(attacker, attacked, spell23, 
                                                        
attack.InteractType == MsgInteract.Melee)) 
                                                    { 
                                                        var 
damage = Game.Attacking.Calculate.Melee(attacker, attacked, 
                                                            
ref attack); 
                                                        
damage = (damage * spell23.IncreaseDMG); 
                                                        
damage = (damage / spell23.DecreaseDMG); 
                                                        
ReceiveAttack(attacker, attacked, attack, ref damage, spell23); 
                                                        
attacked.Update(MsgName.Mode.Effect, "zssjhdsssj", true); 
                                                        
suse.AddTarget(attacked.UID, damage, attack); 
                                                    } 
                                                } 
                                                else if (
_obj.MapObjType == MapObjectType.SobNpc) 
                                                { 
                                                    
attackedsob = _obj as MsgNpcInfoEX; 
                                                    if (
CanAttack(attacker, attackedsob, spell23)) 
                                                    { 
                                                        var 
damage = Game.Attacking.Calculate.Melee(attacker, 
                                                            
attackedsob, ref attack); 
                                                        
//damage = (damage * spell.IncreaseDMG); 
                                                        //damage = (damage / spell.DecreaseDMG); 
                                                        
ReceiveAttack(attacker, attackedsob, attack, damage, spell23); 
                                                        
attacked.Update(MsgName.Mode.Effect, "zssjhdsssj", true); 
                                                        
suse.AddTarget(attackedsob.UID, damage, attack); 
                                                    } 
                                                } 
                                            } 
                                        } 


                                        
attacker.Owner.SendScreen(suse, true); 
                                    } 
                                } 
                                    
#endregion 
                                #endregion 
                            
} 
                            
#endregion 

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

بعد كده دور علي اسكلات القرصان و ضيف دول

كود:
  #region Epic Pirate 
                                #region SeaBurial  
                                
case 14680: 
                                    { 
                                        if (
CanUseSpell(spell, attacker.Owner)) 
                                        { 
                                            
PrepareSpell(spell, attacker.Owner); 
                                            
MsgMagicEffect suse = new MsgMagicEffect(true); 
                                            
suse.Attacker = attacker.UID; 
                                            
suse.SpellID = spell.ID; 
                                            
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.X, X, attacker.Y, Y, dist, 
                                                
InLineAlgorithm.Algorithm.DDA); 
                                            
X = attacker.X; 
                                            
Y = attacker.Y; 
                                            
int i = 0; 
                                            for (
i = 0; i < algo.lcoords.Count; i++) 
                                            { 
                                                if (
attacker.Owner.Map.Floor[ 
                                                    
algo.lcoords[i].X, algo.lcoords[i].Y, MapObjectType.Player] 
                                                    && !
attacker.ThroughGate(algo.lcoords[i].X, algo.lcoords[i].Y)) 
                                                { 
                                                    
X = (ushort)algo.lcoords[i].X; 
                                                    
Y = (ushort)algo.lcoords[i].Y; 
                                                } 
                                                else 
                                                { 
                                                    break; 
                                                } 
                                            } 
                                            
suse.X = X; 
                                            
suse.Y = Y; 
                                            
#region floor 


                                            


                                            
MsgName str = new MsgName(true); 
                                            
str.UID = attacker.UID; 
                                            
str.TextsCount = 1; 
                                           
str.X = X; 
                                            
str.Y = Y;   
                                            
str.PositionX = attacker.X; 
                                             
str.PositionY = attacker.Y; 
                                            
str.Action = MsgName.Mode.MapEffect;                                       
                                            
str.Texts.Add("hdhlyz-lsyujing"); 
                                            
attacker.Owner.SendScreen(str.ToArray(), true); 
                                         


                                             


                                                
                                           
MsgAction data = new Network.GamePackets.MsgAction(true); 
                                            
data.UID = attacker.UID; 
                                            
data.X = X; 
                                            
data.Y = Y; 
                                            
data.ID = MsgAction.Mode.FlashStep; 
                                            
data.wParam1 = attacker.X; 
                                            
data.wParam2 = attacker.Y; 
                                            
attacker.Owner.SendScreen(data, true); 
                                  
                         
                                            
#endregion 






                                            
if (!attacker.Owner.Map.Floor[X, Y, MapObjectType.Player, null]) 
                                                return; 
                                            
double disth = 2.5; 
                                            foreach (
Interfaces.IMapObject _obj in Array) 
                                            { 
                                                
bool hit = false; 
                                                for (
int j = 0; j < i; j++) 
                                                    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 Player; 
                                                        if (
CanAttack(attacker, attacked, spell, 
                                                            
attack.InteractType == MsgInteract.Melee)) 
                                                        { 
                                                            var 
damage = Game.Attacking.Calculate.Melee(attacker, attacked, 
                                                                
ref attack); 
                                                            
damage = (damage * spell.IncreaseDMG); 
                                                            
damage = (damage / spell.DecreaseDMG); 
                                                            
ReceiveAttack(attacker, attacked, attack, ref damage, spell); 


                                                            
suse.AddTarget(attacked.UID, damage, attack); 
                                                        } 
                                                    } 
                                                    else if (
_obj.MapObjType == MapObjectType.Player) 
                                                    { 
                                                        
attacked = _obj as Player; 
                                                        if (
CanAttack(attacker, attacked, spell, 
                                                            
attack.InteractType == MsgInteract.Melee)) 
                                                        { 
                                                            var 
damage = Game.Attacking.Calculate.Melee(attacker, attacked, 
                                                                
ref attack); 
                                                            
damage = (damage * spell.IncreaseDMG); 
                                                            
damage = (damage / spell.DecreaseDMG); 
                                                            
ReceiveAttack(attacker, attacked, attack, ref damage, spell); 


                                                            
suse.AddTarget(attacked.UID, damage, attack); 
                                                        } 
                                                    } 
                                                    else if (
_obj.MapObjType == MapObjectType.SobNpc) 
                                                    { 
                                                        
attackedsob = _obj as MsgNpcInfoEX; 
                                                        if (
CanAttack(attacker, attackedsob, spell)) 
                                                        { 
                                                            var 
damage = Game.Attacking.Calculate.Melee(attacker, 
                                                                
attackedsob, ref attack); 
                                                            
//damage = (damage * spell.IncreaseDMG); 
                                                            //damage = (damage / spell.DecreaseDMG); 
                                                            
ReceiveAttack(attacker, attackedsob, attack, damage, spell); 


                                                            
suse.AddTarget(attackedsob.UID, damage, attack); 
                                                        } 
                                                    } 
                                                } 
                                            } 


                                            
attacker.Owner.SendScreen(suse, true); 
                                        } 
                                        break; 
                                    } 


                           


                                
                                
#endregion 
                                #region ImmortalForce 
                                
case 14710: 
                                    { 


                                        if (
CanUseSpell(spell, attacker.Owner)) 
                                        { 
                                            
attacker.GreenEffect = 10; 
                                            
PrepareSpell(spell, attacker.Owner); 
                                            
MsgMagicEffect suse = new MsgMagicEffect(true); 
                                            
suse.Attacker = attacker.UID; 
                                            
suse.Attacker1 = attacker.UID; 
                                            
suse.SpellID = spell.ID; 
                                            
suse.SpellLevel = spell.Level; 
                                            
suse.AddTarget(attacker.UID, 0, null); 
                                            
attacker.Owner.SendScreen(suse, true); 
                                            
attacker.ImmortalForceStamp = Time32.Now; 
                                            
attacker.AddFlag4((ulong)MsgUpdate.Flags4.ImmortalForce); 
                                   } 
                                        break; 
                                    } 
                                
                                
#endregion 


                                #endregion 


ابحث عن

كود:
public static bool CanAttack 

ضيف دول فقيه

كود:
 #region Epic Pirate ImmortalForce 
            
if (attacked.ContainsFlag4(MsgUpdate.Flags4.ImmortalForce)) 
            { 
                 
attacked.Update(_String.Effect, "hdyh-debuff", true);
               
// aaa   hdyh-debuff 
                
return false; 
            } 
            
#endregion 

هتروح Entity
وتضيف

كود:
  public Time32 OmnipotenceStamp,ImmortalForceStamp; 
   public 
Time32 ImmortalForce { get; set; } 

و الورلد worled
ابحث عن

كود:
private unsafe void BuffersCallback(GameState client, int time)
        { 

ضيف تحت القوس

كود:
#region Epic Pirate ImmortalForce
            
if (Now > client.Entity.ImmortalForceStamp.AddSeconds(5))
                
client.Entity.RemoveFlag(MsgUpdate.Flags.ImmortalForce);
            
#endregion 

و في update

كود:
public class Flags4 


ضيف دول

كود:
 .ImmortalForce = 1UL << 220 

بس كده لو في حاجه ناقصه قولوها في التعليق


قديم 2019-08-08, 09:33 AM
المشاركة 2
osama
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
عاااش والله يا حازم تسلم ايدك

قديم 2019-08-08, 09:43 AM
المشاركة 3
Mr~Rayzo
::. المدير العام ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
الله ينور يا زعامه

قديم 2019-08-08, 10:22 AM
المشاركة 4
osama
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
طلب اخير يا حازم من فضلك
هرفعلك الباتش بتاعى تضفلى فية الابك علشان الباتش بتاع ابك القرصان 3 دى ونا سورسى 2 دى وانا ضيفت كل حاجة الحمد الله
عاوز حد يضفلى الابك فى الباتش بس يريت لو تقدر تضفهولى

قديم 2019-08-08, 10:46 AM
المشاركة 5
Hazem
.:: المدير العام::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
معرفش والله ملفات باتش القرصان بالتحديد شوف الباتش الي رفعه رايدر في موضوع اضافة سلاح الابيك

قديم 2019-08-08, 10:50 AM
المشاركة 6
osama
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
رابط الباتش محتاجج تضفلى فية ابك القرصان والاكلاات بتعتو فى الباتش دا ولو معاك لودر اكس ميجو مش متفيرس يريت لو تركبو علية من فضلك يا حازم


كود:
https://www.mediafire.com/file/chiobsmb34hk5zp/%u0628اتش_السورس_بتاعى.rar/file 


قديم 2019-08-08, 02:23 PM
المشاركة 7
Rider
.:: نائب المدير ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
عاش موضوع اكثر من رائع

قديم 2019-08-13, 12:47 AM
المشاركة 8
virus7x
.:: عضو خبير ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه


عاش يا حازم

تسلم أيدك موضوع مهم



قديم 2019-08-19, 05:53 PM
المشاركة 9
abuhaneen
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
هوا ينفع اضيف ايبك قرصان وانا سورس 2 دي بتاع مستر بندا

قديم 2019-08-24, 11:16 AM
المشاركة 10
MRonlineGvrix
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: اضافه ابيك القرصان للسورسات العاديه
تسلم بس
public static bool IsRapier(uint ID)
مش لقيها فى السورس عندي


العلامات المرجعية



الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

الانتقال السريع

المواضيع المتشابهه للموضوع: اضافه ابيك القرصان للسورسات العاديه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
لودر أحمد الزيرو للسورسات ال2دى virus7x البرامج والودرات 102 2021-02-16 02:58 AM
اضافة ابيك القرصان كامل Hazem تطوير سيرفرات كونكر 43 2021-02-06 12:27 AM
مشكله الضربه العاديه مش شغاله Mawdo3jded مشكلات السيرفيرات كونكر الشخصيه 2 2019-12-13 03:04 AM
مشكله فى اضافة ابيك القرصان amosha مشكلات السيرفيرات كونكر الشخصيه 11 2019-09-29 04:02 AM
سكل ابيك القرصان اسلام مشكلات السيرفيرات كونكر الشخصيه 1 2019-09-29 03:48 AM


الساعة الآن 04:39 PM