المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : اضافة ابيك القرصان كامل


محمد ياسر
2019-04-23, 01:35 PM
السلام عليكم ورحمة الله وبركاته معانا اليوم
اضافة ابيك القرصان كامله
منقول من K7host
بس انا حبيت اضفهالك اكثر تنظيم
احنا انقسم الموضوع لاثنين علشان الموضوع مش راضي يتعمل علشان كبير اووي

اولا اذهب الي
Player او entity
وحط دول
#region EpicPirate K7host.com





public bool EpicPirate()

{

if (PlayerFlag == Game.PlayerFlag.Player)

{

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;

}

#endregion


روح لل

في الباكت هندلر او MsgItemHandler
public static Positions GetPositionFromID(UInt32 itemid)
و حط

#region EpicPirate K7host.com





if (iType == 670)

return Positions.Left;



if (iType == 671)

return Positions.Right;



#endregion


و في
public static ushort ItemPosition(uint ID)

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

return MsgItemInfo.LeftWeapon;



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

return MsgItemInfo.RightWeapon;



if (iType == 671)

return MsgItemInfo.RightWeapon;

if (iType == 670)

return MsgItemInfo.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; }

}


دور علي
#region Sanity Checks

و فوق
bool twohand = IsTwoHand(item.ID);

لو هيا عندك اصلا خلاص مش عندك حط


#region Check Pirate
if (client.Player.Class >= 70 && client.Player.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;

}

}

}

}

#endregion





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


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@@7 099@@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@@EpicWeap on@@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@@10 00@@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@@No ne@@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
تكست
و ضيف في اخرها
دول
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);



ضيف الاسكلات غير cql1 لاسم القاعدة عندك

ثانيا الهاندل 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.Immortal Force);
}
break;
}

#endregion


#endregion





تمام هتروح
public static bool CanAttack

و تضيف

#region Epic Pirate ImmortalForce
if (attacked.ContainsFlag4(MsgUpdate.Flags4.ImmortalF orce))
{
attacked.Update(MsgName.Mode.Effect, "hdyh-debuff", true);
// aaa hdyh-debuff
return false;
}
#endregion



هتروح Entity
وتضيف

public Time32 OmnipotenceStamp,ImmortalForceStamp;
public Time32 ImmortalForce { get; set; }


و الورلد worled

BuffersCallback

ضيف
كود:

#region Epic Pirate ImmortalForce




if (Now > client.Player.ImmortalForceStamp.AddSeconds(7))
client.Player.RemoveFlag4((ulong)MsgUpdate.Flags4. ImmortalForce);

#endregion



و في update
public class Flags4
ضيف
.ImmortalForce = 1UL << 220


عفواً لايمكن عرض الروابط في الإرشيف

عفواً لايمكن عرض الروابط في الإرشيف

عفواً لايمكن عرض الروابط في الإرشيف

عفواً لايمكن عرض الروابط في الإرشيف

osamamand
2019-06-25, 12:47 PM
ألف شكر يا معلم

MohamedModyAdel
2019-06-25, 01:35 PM
جميل جدا

osama
2019-06-25, 09:31 PM
عاوز اضيفو فى سورس Source Mr.khled V3 بس السورس مش بنظام msg وحاولت اضيفو كتير مش نافع
لو حد بيعرف يضيفو يريت يساعدنى

osama
2019-07-07, 10:57 PM
جيبالى ايرور فى MsgName

attacked.Update(MsgName.Mode.Effect, "zssjhdsssj", true);
انا السورس بتاعى مش msg وعاوز اضيفلو الاسكلاات ومش عارف حليت شوية ارورات وفاضل كام ارور مش كتير

محمد ياسر
2019-08-08, 09:11 AM
جيبالى ايرور فى MsgName

attacked.Update(MsgName.Mode.Effect, "zssjhdsssj", true);
انا السورس بتاعى مش msg وعاوز اضيفلو الاسكلاات ومش عارف حليت شوية ارورات وفاضل كام ارور مش كتير

خليه
attacked.Update(_String.Effect, "zssjhdsssj", true);

osama
2019-08-08, 11:14 AM
خليه
attacked.update(_string.effect, "zssjhdsssj", true);


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

Eslamahmed
2019-09-01, 11:14 PM
جميل

loveosama
2019-09-04, 06:10 AM
شكراا

Avengers-Co
2019-09-04, 04:31 PM
تسلم

MohamedMCollins
2019-09-08, 12:10 PM
Good <3

amosha
2019-09-25, 08:39 AM
شكرا جدا

انت عمري
2019-10-03, 03:44 PM
ممكن طريقة اضافتها لسورس msg اوريجنال كل ملفاته txt

AdhamMohamed
2020-02-09, 08:15 PM
عاااااش يحب ربنا معاك

ahmedfathy
2020-02-14, 06:37 PM
احسنت يا حازم وجاري التجربة حالآ الله ينور عليك

ElSaher
2020-02-15, 12:58 AM
عاش احزومي

asd201230099
2020-02-17, 01:13 PM
عااااااااااش تسلم ايدك يا كبير الاضافه دي تنفعع لل 2d

khaledxodia
2020-03-04, 05:26 AM
تسلم

uncelsam
2020-03-09, 05:40 PM
عااااش

tapra
2020-03-15, 05:26 PM
thanksss

elkapoo2020
2020-03-21, 12:23 PM
مشكووووووووووووووور

ابو حمزه
2020-03-30, 04:33 AM
thanks brother :)

yousry
2020-03-31, 02:52 PM
جاري التجربة

Bayoumi
2020-03-31, 09:43 PM
عاش

khaled2020
2020-04-10, 02:29 AM
عااش

fady emad kamel
2020-04-11, 03:31 AM
thnx

mohammedshafik
2021-07-28, 08:42 AM
thanks

Gamal Askr
2021-08-19, 01:32 PM
تسلم إيدك والله

Ahmed3bdElR2ouF
2023-09-10, 08:59 PM
تسلم ايدك ياخويا <3