Jump to content
  • 0

Single Strip by pass by SL_ROGUE


Question

Posted

can any one help me to solve my problem. .

i have seen a lot of script in this forum about single strip fcp bypass consuming 1 glistening coat when the caster is soul link

but i dont know how to apply it. . all i can see is code but not tutorial how to apply it

please send some images step by step how to do that. . thank you in advance

2 answers to this question

Recommended Posts

  • 0
Posted

this must be in the Source Section but anyways, I am here to help

Find in the skill.cpp

//Special message when trying to use strip on FCP [Jobbie]
		if( sd && skill_id == ST_FULLSTRIP && tsc && tsc->data[SC_CP_WEAPON] && tsc->data[SC_CP_HELM] && tsc->data[SC_CP_ARMOR] && tsc->data[SC_CP_SHIELD])
		{
			clif_gospel_info(sd, 0x28);
			break;
		}

Add this after:

		if ( sd && tsc && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_ROGUE && rand()%100 < 10
			&&
		( skill_id == RG_STRIPWEAPON && tsc->data[SC_CP_WEAPON] ||
		skill_id == RG_STRIPSHIELD && tsc->data[SC_CP_SHIELD] ||
		skill_id == RG_STRIPARMOR && tsc->data[SC_CP_ARMOR] ||
		skill_id == RG_STRIPHELM && tsc->data[SC_CP_HELM] ) ) {
		int item_id = 7139; // Glistening Coat
		int ii;
		ARR_FIND( 0, MAX_INVENTORY, ii, sd->inventory.u.items_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_CP_WEAPON, INVALID_TIMER );
					sc_start(NULL,bl,SC_STRIPWEAPON,100,skill_lv,skill_get_time(skill_id,skill_lv));
					break;
				case RG_STRIPSHIELD:
						status_change_end( bl, SC_CP_SHIELD, INVALID_TIMER );
						sc_start(NULL,bl,SC_STRIPSHIELD,100,skill_lv,skill_get_time(skill_id,skill_lv));
						break;
				case RG_STRIPARMOR:
						status_change_end( bl, SC_CP_ARMOR, INVALID_TIMER );
						sc_start(NULL,bl,SC_STRIPARMOR,100,skill_lv,skill_get_time(skill_id,skill_lv));
						break;
				case RG_STRIPHELM:
						status_change_end( bl, SC_CP_HELM, INVALID_TIMER );
						sc_start(NULL,bl,SC_STRIPHELM,100,skill_lv,skill_get_time(skill_id,skill_lv));
					break;
				}
			clif_skill_nodamage( src, bl, skill_id, skill_lv, i );
				break;
				}
			}

Let me know If I got this correct ?

  • Upvote 1
  • 0
Posted
On 3/27/2020 at 9:30 AM, Vale said:

this must be in the Source Section but anyways, I am here to help

Find in the skill.cpp


//Special message when trying to use strip on FCP [Jobbie]
		if( sd && skill_id == ST_FULLSTRIP && tsc && tsc->data[SC_CP_WEAPON] && tsc->data[SC_CP_HELM] && tsc->data[SC_CP_ARMOR] && tsc->data[SC_CP_SHIELD])
		{
			clif_gospel_info(sd, 0x28);
			break;
		}

Add this after:


		if ( sd && tsc && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_ROGUE && rand()%100 < 10
			&&
		( skill_id == RG_STRIPWEAPON && tsc->data[SC_CP_WEAPON] ||
		skill_id == RG_STRIPSHIELD && tsc->data[SC_CP_SHIELD] ||
		skill_id == RG_STRIPARMOR && tsc->data[SC_CP_ARMOR] ||
		skill_id == RG_STRIPHELM && tsc->data[SC_CP_HELM] ) ) {
		int item_id = 7139; // Glistening Coat
		int ii;
		ARR_FIND( 0, MAX_INVENTORY, ii, sd->inventory.u.items_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_CP_WEAPON, INVALID_TIMER );
					sc_start(NULL,bl,SC_STRIPWEAPON,100,skill_lv,skill_get_time(skill_id,skill_lv));
					break;
				case RG_STRIPSHIELD:
						status_change_end( bl, SC_CP_SHIELD, INVALID_TIMER );
						sc_start(NULL,bl,SC_STRIPSHIELD,100,skill_lv,skill_get_time(skill_id,skill_lv));
						break;
				case RG_STRIPARMOR:
						status_change_end( bl, SC_CP_ARMOR, INVALID_TIMER );
						sc_start(NULL,bl,SC_STRIPARMOR,100,skill_lv,skill_get_time(skill_id,skill_lv));
						break;
				case RG_STRIPHELM:
						status_change_end( bl, SC_CP_HELM, INVALID_TIMER );
						sc_start(NULL,bl,SC_STRIPHELM,100,skill_lv,skill_get_time(skill_id,skill_lv));
					break;
				}
			clif_skill_nodamage( src, bl, skill_id, skill_lv, i );
				break;
				}
			}

Let me know If I got this correct ?

there is a problem when compiling 

uninitialized local variable 'i' used

c4700 line 7714

 

clif_skill_nodamage( src, bl, skill_id, skill_lv,i );

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...