viewing paste Nosiege_cooldownfix&no_op | Diff

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
Index: clif.c
===================================================================
--- clif.c      (revision 16966)
+++ clif.c      (working copy)
@@ -10791,7 +10791,7 @@
        // Whether skill fails or not is irrelevant, the char ain't idle. [Skotlex]
        sd->idletime = last_tick;
 
-       if( pc_cant_act(sd) && !(skillnum == SR_GENTLETOUCH_CURE && (sd->sc.opt1 == OPT1_STONE || sd->sc.opt1 == OPT1_FREEZE || sd->sc.opt1 == OPT1_STUN)) )
+       if( pc_cant_act(sd) && skillnum != RK_REFRESH && !(skillnum == SR_GENTLETOUCH_CURE && (sd->sc.opt1 == OPT1_STONE || sd->sc.opt1 == OPT1_FREEZE || sd->sc.opt1 == OPT1_STUN)) )
                return;
        if( pc_issit(sd) )
                return;
Index: pc.c
===================================================================
--- pc.c        (revision 16966)
+++ pc.c        (working copy)
@@ -4187,24 +4187,8 @@
        if (nameid != ITEMID_NAUTHIZ && sd->sc.opt1 > 0 && sd->sc.opt1 != OPT1_STONEWAIT && sd->sc.opt1 != OPT1_BURNING)
                return 0;
 
-       if( sd->sc.count){
-            if((nameid == ITEMID_NAUTHIZ) && ( //bugreport 6751
-                   sd->sc.data[SC_FREEZE] ||
-                   sd->sc.data[SC_STUN] ||
-                   sd->sc.data[SC_DEEPSLEEP] ||
-                   sd->sc.data[SC_STONE] ||
-                   sd->sc.data[SC_CRYSTALIZE]
-                   )
-               ){
-                        sd->sc.opt1 = 0; //remove option and status to allow skill
-                        status_change_end(&sd->bl,SC_FREEZE,INVALID_TIMER);
-                        status_change_end(&sd->bl,SC_STUN,INVALID_TIMER);
-                        status_change_end(&sd->bl,SC_DEEPSLEEP,INVALID_TIMER);
-                        status_change_end(&sd->bl,SC_STONE,INVALID_TIMER);
-                        status_change_end(&sd->bl,SC_CRYSTALIZE,INVALID_TIMER);
-            }  //let us continue
-            else if(
-               sd->sc.data[SC_BERSERK] || sd->sc.data[SC__BLOODYLUST] ||
+       if( sd->sc.count &&
+               (sd->sc.data[SC_BERSERK] || sd->sc.data[SC__BLOODYLUST] ||
                (sd->sc.data[SC_GRAVITATION] && sd->sc.data[SC_GRAVITATION]->val3 == BCT_SELF) ||
                sd->sc.data[SC_TRICKDEAD] ||
                sd->sc.data[SC_HIDING] ||
@@ -4212,10 +4196,10 @@
                sd->sc.data[SC__MANHOLE] ||
                sd->sc.data[SC_KAGEHUMI] ||
                (sd->sc.data[SC_NOCHAT] && sd->sc.data[SC_NOCHAT]->val1&MANNER_NOITEM)
-           )
+           ))
                return 0;
-       }
 
+
        //Prevent mass item usage. [Skotlex]
        if( DIFF_TICK(sd->canuseitem_tick, tick) > 0 ||
                (itemdb_iscashfood(nameid) && DIFF_TICK(sd->canusecashfood_tick, tick) > 0)
Index: status.c
===================================================================
--- status.c    (revision 16966)
+++ status.c    (working copy)
@@ -1584,7 +1584,7 @@
 
        if( sc && sc->count ) {
 
-               if( sc->opt1 >0 && (sc->opt1 != OPT1_CRYSTALIZE && src->type != BL_MOB) && sc->opt1 != OPT1_BURNING && skill_num != SR_GENTLETOUCH_CURE ) {     //Stuned/Frozen/etc
+               if(skill_num != RK_REFRESH && sc->opt1 >0 && (sc->opt1 != OPT1_CRYSTALIZE && src->type != BL_MOB) && sc->opt1 != OPT1_BURNING && skill_num != SR_GENTLETOUCH_CURE ) {   //Stuned/Frozen/etc
                        if (flag != 1) //Can't cast, casted stuff can't damage.
                                return 0;
                        if (!(skill_get_inf(skill_num)&INF_GROUND_SKILL))
Viewed 286 times, submitted by unknown.