Jump to content
  • 0

about single strip link and tarot dispel help me


xlaws27

Question


  • Group:  Members
  • Topic Count:  36
  • Topics Per Day:  0.01
  • Content Count:  57
  • Reputation:   2
  • Joined:  03/03/15
  • Last Seen:  

diff --git a/src/map/skill.c b/src/map/skill.c
index 1d94e0b..737cab4 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -6684,6 +6684,41 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
 				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);

1. single strip - can someone revise it? so it will be compatible at skill.c if i just copy paste it. well its an xdiff file but i dont know if i have to patch it to my CLIENT or to my SKILL.C(sounds absurd)

2. tarot dispel - can someone help me how to fix tarot because it can dispel fcp

  • Upvote 1
Link to comment
Share on other sites

2 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  36
  • Topics Per Day:  0.01
  • Content Count:  57
  • Reputation:   2
  • Joined:  03/03/15
  • Last Seen:  

bunp

Link to comment
Share on other sites

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.

×
×
  • Create New...