Jump to content
  • 0
Sign in to follow this  
koko24

Tarot Dispel

Question

How to remove Dispel from Tarot Skills? or if possible how can GTB block Dispel from Tarot?

 

					case 2: // all buffs removed						status->change_clear_buffs(bl,1);

 

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

@@koko24 yes you can remove that line then adjust the case
 

it should be like this

 

case CG_TAROTCARD:			{				int count = -1;				if (tsc && tsc->data[type]) {					map->freeblock_unlock();					return 0;				}				if( rnd() % 100 > skill_lv * 8 || (dstmd && ((dstmd->guardian_data && dstmd->class_ == MOBID_EMPERIUM) || mob_is_battleground(dstmd))) ) {					if( sd )						clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);					map->freeblock_unlock();					return 0;				}				status_zap(src,0,skill->db[skill->get_index(skill_id)].sp[skill_lv]); // consume sp only if succeeded [Inkfish]				do {					int eff = rnd() % 14;					if( eff == 5 )						clif->specialeffect(src, 528, AREA);					else						clif->specialeffect(bl, 523 + eff, AREA);					switch (eff)					{					case 0: // heals SP to 0						status_percent_damage(src, bl, 0, 100, false);						break;					case 1: // matk halved						sc_start(src,bl,SC_INCMATKRATE,100,-50,skill->get_time2(skill_id,skill_lv));						break;					//case 2: // all buffs removed					//	status->change_clear_buffs(bl,1);					//	break;					case 2: // 1000 damage, random armor destroyed						{							status_fix_damage(src, bl, 1000, 0);							clif->damage(src,bl,0,0,1000,0,0,0);							if( !status->isdead(bl) ) {								int where[] = { EQP_ARMOR, EQP_SHIELD, EQP_HELM, EQP_SHOES, EQP_GARMENT };								skill->break_equip(bl, where[rnd()%5], 10000, BCT_ENEMY);							}						}						break;					case 3: // atk halved						sc_start(src,bl,SC_INCATKRATE,100,-50,skill->get_time2(skill_id,skill_lv));						break;					case 4: // 2000HP heal, random teleported						status->heal(src, 2000, 0, 0);						if( !map_flag_vs(bl->m) )							unit->warp(bl, -1,-1,-1, CLR_TELEPORT);						break;					case 5: // random 2 other effects						if (count == -1)							count = 3;						else							count++; //Should not re-trigger this one.						break;					case 6: // stop freeze or stoned						{							enum sc_type sc[] = { SC_STOP, SC_FREEZE, SC_STONE };							sc_start(src,bl,sc[rnd()%3],100,skill_lv,skill->get_time2(skill_id,skill_lv));						}						break;					case 7: // curse coma and poison						sc_start(src,bl,SC_COMA,100,skill_lv,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_CURSE,100,skill_lv,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_POISON,100,skill_lv,skill->get_time2(skill_id,skill_lv));						break;					case 8: // confusion						sc_start(src,bl,SC_CONFUSION,100,skill_lv,skill->get_time2(skill_id,skill_lv));						break;					case 9: // 6666 damage, atk matk halved, cursed						status_fix_damage(src, bl, 6666, 0);						clif->damage(src,bl,0,0,6666,0,0,0);						sc_start(src,bl,SC_INCATKRATE,100,-50,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_INCMATKRATE,100,-50,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_CURSE,skill_lv,100,skill->get_time2(skill_id,skill_lv));						break;					case 10: // 4444 damage						status_fix_damage(src, bl, 4444, 0);						clif->damage(src,bl,0,0,4444,0,0,0);						break;					case 11: // stun						sc_start(src,bl,SC_STUN,100,skill_lv,5000);						break;					case 12: // atk,matk,hit,flee,def reduced						sc_start(src,bl,SC_INCATKRATE,100,-20,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_INCMATKRATE,100,-20,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_INCHITRATE,100,-20,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_INCFLEERATE,100,-20,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,SC_INCDEFRATE,100,-20,skill->get_time2(skill_id,skill_lv));						sc_start(src,bl,type,100,skill_lv,skill->get_time2(skill_id,skill_lv));						break;					default:						break;					}				} while ((--count) > 0);				clif->skill_nodamage(src,bl,skill_id,skill_lv,1);			}			break;

 


 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.