viewing paste high_healtest1 | C

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
Index: src/map/skill.c
===================================================================
--- src/map/skill.c (revision 17294)
+++ src/map/skill.c (working copy)
@@ -367,13 +368,13 @@
    struct status_change* sc;
 
    switch( skill_id ) {
-   case BA_APPLEIDUN:
-   #ifdef RENEWAL
-       hp = 100+5*skill_lv+5*(status_get_vit(src)/10); // HP recovery
-   #else
-       hp = 30+5*skill_lv+5*(status_get_vit(src)/10); // HP recovery
-   #endif
-       if( sd )
+       case BA_APPLEIDUN:
+       #ifdef RENEWAL
+           hp = 100+5*skill_lv+5*(status_get_vit(src)/10); // HP recovery
+       #else
+           hp = 30+5*skill_lv+5*(status_get_vit(src)/10); // HP recovery
+       #endif
+           if( sd )
                hp += 5*pc_checkskill(sd,BA_MUSICALLESSON);
            break;
        case PR_SANCTUARY:
@@ -385,15 +386,24 @@
        default:
            if (skill_lv >= battle_config.max_heal_lv)
                return battle_config.max_heal;
-       #ifdef RENEWAL
-            /**
-             * Renewal Heal Formula
-             * Formula: ( [(Base Level + INT) / 5] x 30 ) x (Heal Level / 10) x (Modifiers) + MATK
-             **/
-            hp = (status_get_lv(src) + status_get_int(src)) / 5 * 30  * skill_lv / 10;
-       #else
-           hp = ( status_get_lv(src) + status_get_int(src) ) / 8 * (4 + ( skill_id == AB_HIGHNESSHEAL ? ( sd ? pc_checkskill(sd,AL_HEAL) : 10 ) : skill_lv ) * 8);
-       #endif
+           if (skill_id == AB_HIGHNESSHEAL) {
+               /**
+               * Highness Heal Formula
+               * Formula: ( [ {(INT + Base Level)/8} X {(Heal Skill Level x 8) + 4} ] )
+               **/
+               hp = (status_get_int(src) + status_get_lv(src) / 8) * (sd ? pc_checkskill(sd,AL_HEAL) : 10);
+               hp *= ( 17 + 3 * skill_lv ) / 10;
+           } else {
+           #ifdef RENEWAL
+               /**
+               * Renewal Heal Formula
+               * Formula: ( [(Base Level + INT) / 5] x 30 ) x (Heal Level / 10) x (Modifiers) + MATK
+               **/
+               hp = (status_get_lv(src) + status_get_int(src)) / 5 * 30  * skill_lv / 10;
+           #else
+               hp = ( status_get_lv(src) + status_get_int(src) ) / 8 * (4 + ( skill_lv * 8));
+           #endif
+           }
            if( sd && ((skill = pc_checkskill(sd, HP_MEDITATIO)) > 0) )
                hp += hp * skill * 2 / 100;
            else if( src->type == BL_HOM && (skill = merc_hom_checkskill(((TBL_HOM*)src), HLIF_BRAIN)) > 0 )
@@ -423,8 +433,8 @@
    }
 
 #ifdef RENEWAL
-    // MATK part of the RE heal formula [malufett]
-    // Note: in this part matk bonuses from items or skills are not applied
+   // MATK part of the RE heal formula [malufett]
+   // Note: in this part matk bonuses from items or skills are not applied
    switch( skill_id ) {
        case BA_APPLEIDUN:  case PR_SANCTUARY:
        case NPC_EVILLAND:  break;
@@ -4928,12 +4981,8 @@
     **/
    case AB_HIGHNESSHEAL:
        {
-           int heal = skill_calc_heal(src, bl, (skill_id == AB_HIGHNESSHEAL)?AL_HEAL:skill_id, (skill_id == AB_HIGHNESSHEAL)?10:skill_lv, true);
+           int heal = skill_calc_heal(src, bl, skill_id, skill_lv, true);
            int heal_get_jobexp;
-           //Highness Heal: starts at 1.7 boost + 0.3 for each level
-           if( skill_id == AB_HIGHNESSHEAL ) {
-               heal = heal * ( 17 + 3 * skill_lv ) / 10;
-           }
            if( status_isimmune(bl) ||
                    (dstmd && (dstmd->class_ == MOBID_EMPERIUM || mob_is_battleground(dstmd))) ||
                    (dstsd && pc_ismadogear(dstsd)) )//Mado is immune to heal
@@ -4942,8 +4991,7 @@
            if( sd && dstsd && sd->status.partner_id == dstsd->status.char_id && (sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->status.sex == 0 )
                heal = heal*2;
 
-           if( tsc && tsc->count )
-           {
+           if( tsc && tsc->count ) {
                if( tsc->data[SC_KAITE] && !(sstatus->mode&MD_BOSS) )
                { //Bounce back heal
                    if (--tsc->data[SC_KAITE]->val2 <= 0)
Viewed 724 times, submitted by Guest.