Skill.c please Help Strip

razermantis

New member
Messages
32
Points
0
Github
razermantis920
please help me i dont know what should i do. when i do full strip into my character and i try to use Full Chemical protection.. full chemical protection wont work.. all i know if someone uses full strip you can counter it by using FCP? what should i do? have yo u guys encounter this problem??

 
The skill protects from divests, it doesn't remove them.
sir you know how to fixed this?

            // 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 < 100
                         &&
                        ( 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->sskill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
            break;
        }
        // Full Chemical Protection
        case CR_FULLPROTECTION: {
            bool iused=true;
            int i;
            if(dstsd && dstsd->inventory_data[dstsd->equip_index[EQI_HAND_R]]) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTWEAPON,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(dstsd && (i=dstsd->equip_index[EQI_HAND_L])>=0 && dstsd->inventory_data && 
                    dstsd->inventory_data->type==IT_ARMOR) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTSHIELD,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(dstsd && dstsd->inventory_data[dstsd->equip_index[EQI_ARMOR]]) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTARMOR,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(dstsd && dstsd->inventory_data[dstsd->equip_index[EQI_HEAD_TOP]]) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTHELM,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(iused)
                clif->skill_nodamage(src,bl,skill_id,skill_lv,1);
            else {
                clif->sskill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
                return 1;
            }
        }
        break;
 
please help me i dont know what should i do. when i do full strip into my character and i try to use Full Chemical protection.. full chemical protection wont work.. all i know if someone uses full strip you can counter it by using FCP? what should i do? have yo u guys encounter this problem??
full chemical protection first your character and it can't be full strip. read the description of full chemical protection skill.

 
E

please help me i dont know what should i do. when i do full strip into my character and i try to use Full Chemical protection.. full chemical protection wont work.. all i know if someone uses full strip you can counter it by using FCP? what should i do? have yo u guys encounter this problem??
full chemical protection first your character and it can't be full strip. read the description of full chemical protection skill.
im saying is if they uses full strip to me. i can reset it by using FCP. vice versa

because the last server i created. when they uses full strip you can use FCP to cancel Strip

 
Back
Top