viewing paste Unknown #19550 | 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
                        case SC_STRIPACCESSARY:
                                location = EQP_ACC;
                                break;
                        }
 
                        //Special message when trying to use strip on FCP [Jobbie]
                        if( sd && skill_id == ST_FULLSTRIP && tsc && tsc->data[SC_PROTECTWEAPON] && tsc->data[SC_PROTECTHELM] && tsc->data[SC_PROTECTARMOR] && tsc->data[SC_PROTECTSHIELD])
                        {
                                clif->gospel_info(sd, 0x28);
                                break;
                        }
                                        // By pass FCP when using single strip skills by 15%(requires Glistening Coat).
                        if ( sd && tsc && sd->sc.data[SC_SOULLINK] && sd->sc.data[SC_SOULLINK]->val2 == SL_ROGUE && rand()%100 < 15
                                                 &&
                                                ( skill_id == RG_STRIPWEAPON && tsc->data[SC_PROTECTWEAPON] ||
                                                skill_id == RG_STRIPSHIELD && tsc->data[SC_PROTECTSHIELD] ||
                                                skill_id == RG_STRIPARMOR && tsc->data[SC_PROTECTARMOR] ||
                                                skill_id == RG_STRIPHELM && tsc->data[SC_PROTECTHELM] ) ) {
                                                int item_id = 7139; // Glistening Coat
                                                int ii;
                                                ARR_FIND( 0, MAX_INVENTORY, ii, sd->status.inventory[ii].nameid == item_id );
                                                if ( ii < MAX_INVENTORY ) {
                                                        pc->delitem( sd, ii, 1, 0, 0, LOG_TYPE_CONSUME);
                                                        switch ( skill_id ) {
                                                                case RG_STRIPWEAPON:
                                                                        status_change_end( bl, SC_PROTECTWEAPON, INVALID_TIMER );
                                                                        sc_start( NULL, bl, SC_NOEQUIPWEAPON, 100, skill_lv, d );
                                                                        break;
                                                                case RG_STRIPSHIELD:
                                                                        status_change_end( bl, SC_PROTECTSHIELD, INVALID_TIMER );
                                                                        sc_start( NULL, bl, SC_NOEQUIPSHIELD, 100, skill_lv, d );
                                                                        break;
                                                                case RG_STRIPARMOR:
                                                                        status_change_end( bl, SC_PROTECTARMOR, INVALID_TIMER );
                                                                        sc_start( NULL, bl, SC_NOEQUIPARMOR, 100, skill_lv, d );
                                                                        break;
                                                                case RG_STRIPHELM:
                                                                        status_change_end( bl, SC_PROTECTHELM, INVALID_TIMER );
                                                                        sc_start( NULL, bl, SC_NOEQUIPHELM, 100, skill_lv, d );
                                                                        break;
                                                        }
                                                        clif->skill_nodamage(src,bl,skill_id,skill_lv,1);
                                                        break;
                                                }
                                        }
 
       
                        //Attempts to strip at rate i and duration d
                        if( (rate = skill->strip_equip(bl, location, rate, skill_lv, d)) || (skill_id != ST_FULLSTRIP && skill_id != GC_WEAPONCRUSH ) )
                                clif->skill_nodamage(src,bl,skill_id,skill_lv,rate);
                        //Nothing stripped.
                        if( sd && !rate )
                                clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
                                int item_id = 7139;
                        break;
                }
Viewed 342 times, submitted by unknown.