How to disable skill animation and action on some skills?

lovesosa

New member
Messages
2
Points
0
Hi.  How to disable skill animation and action on certain skills?  I want some items and skills to have no animation on them.  example I want provoke skill to have no animation so when you use it the skill will just be used and the character wont move instead of doing the casting action.  so if i disable action on provoke when I use aloevera my character will also not do any action and self provoke buff will just start.  I attach picture here to show what action im talk about.  this is to prevent character from stopping when attacking enemies when useing aloevera.

charsim.png

 
Last edited by a moderator:
just adding it to skilleffectinfo doc will override stuff,

or you can do this

case SM_PROVOKE:
case SM_SELFPROVOKE:
case MER_PROVOKE:
{
int failure;
if( (tstatus->mode&MD_BOSS) || battle->check_undead(tstatus->race,tstatus->def_ele) ) {
map->freeblock_unlock();
return 1;
}
//TODO: How much does base level affects? Dummy value of 1% per level difference used. [Skotlex]
clif->skill_nodamage(src,bl,skill_id == SM_SELFPROVOKE ? SM_PROVOKE : skill_id,skill_lv,
(failure = sc_start(src,bl,type, skill_id == SM_SELFPROVOKE ? 100:( 50 + 3*skill_lv + status->get_lv(src) - status->get_lv(bl)), skill_lv, skill->get_time(skill_id,skill_lv))));
if( !failure ) {
if( sd )
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
map->freeblock_unlock();
return 0;
}
unit->skillcastcancel(bl, 2);

if( tsc && tsc->count )
{
status_change_end(bl, SC_FREEZE, INVALID_TIMER);
if( tsc->data[SC_STONE] && tsc->opt1 == OPT1_STONE )
status_change_end(bl, SC_STONE, INVALID_TIMER);
status_change_end(bl, SC_SLEEP, INVALID_TIMER);
status_change_end(bl, SC_TRICKDEAD, INVALID_TIMER);
}

if( dstmd )
{
dstmd->state.provoke_flag = src->id;
mob->target(dstmd, src, skill->get_range2(src,skill_id,skill_lv));
}
}
break;


youd have to rip this line apart 

clif->skill_nodamage(src,bl,skill_id,skill_lv,
sc_start(src,bl,type,100,skill_lv,skill->get_time(skill_id,skill_lv)));


and change the last constant to this

case BD_ADAPTATION:
clif->skill_nodamage(src,bl,skill_id,skill_lv,-1);
break;


-1 makes it not display effect, skill still works.. havnt really tested it tho

thst means you would have to seperate the sc_start from it.. pretty simple 

 
Last edited by a moderator:
Back
Top