Отключение triple attack, blitzbeat и double attack на noskill мапах.
skill.c
Index: skill.c
===================================================================
--- skill.c (revision 13941)
+++ skill.c (working copy)
@@ -457,7 +457,7 @@
{
if(sd) {
// Automatic trigger of Blitz Beat
- if (pc_isfalcon(sd) && sd->status.weapon == W_BOW && (skill=pc_checkskill(sd,HT_BLITZBEAT))>0 &&
+ if (!map[sd->bl.m].flag.noskill && pc_isfalcon(sd) && sd->status.weapon == W_BOW && (skill=pc_checkskill(sd,HT_BLITZBEAT))>0 &&
rand()%1000 <= sstatus->luk*10/3+1 ) {
rate=(sd->status.job_level+9)/10;
skill_castend_damage_id(src,bl,HT_BLITZBEAT,(skill 0)
+ if (pc_checkskill(sd, MO_CHAINCOMBO) > 0 && !map[sd->bl.m].flag.noskill)
flag=1;
break;
case MO_CHAINCOMBO:
Index: battle.c
===================================================================
--- battle.c (revision 13941)
+++ battle.c (working copy)
@@ -1976,7 +1976,7 @@
if(sd && !skill_num && !flag.cri)
{ //Check for double attack.
- if(((skill_lv = pc_checkskill(sd,TF_DOUBLE)) > 0 && sd->weapontype1 == W_DAGGER)
+ if(((skill_lv = pc_checkskill(sd,TF_DOUBLE)) > 0 && sd->weapontype1 == W_DAGGER && !map[sd->bl.m].flag.noskill)
||(sd->double_rate > 0 && sd->weapontype1 != W_FIST)) //Will fail bare-handed
{ //Success chance is not added, the higher one is used [Skotlex]
if (rand()%100 < (5*skill_lv>sd->double_rate?5*skill_lv:sd->double_rate))
Содержание патчей под тортойс