Linkin Park Posted September 25, 2012 Posted September 25, 2012 (edited) How can I make Professors to be able to dispel enemies wearing GTB with chance, let's say 30% chance to dispel an enemy even though he is wearing GTB. I checked the SA_DISPELL in skill.c and I think this is where the part where it won't dispel those who has GTB if(status_isimmune(bl) || !tsc || !tsc->count) break; Edited September 25, 2012 by RaGERO Quote
QQfoolsorellina Posted September 25, 2012 Posted September 25, 2012 (edited) if(status_isimmune(bl) || !tsc || !tsc->count) change to if((status_isimmune(bl) &&!tsc->data[sC_HERMODE] && rnd()%100 > 30 ) || !tsc || !tsc->count) Edited September 26, 2012 by QQfoolsorellina Quote
Linkin Park Posted September 26, 2012 Author Posted September 26, 2012 if(status_isimmune(bl) || !tsc || !tsc->count) change to if((status_isimmune(bl) &&!tsc->data[sC_HERMODE] && rnd()%100 < 30 ) || !tsc || !tsc->count) How about if the Professor is Soul Linked he can dispell those with GTBs by 30% Quote
QQfoolsorellina Posted September 26, 2012 Posted September 26, 2012 not sure whether it work or not , I am not that good at src edit if(sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_SAGE && status_isimmune(bl) && !tsc->data[sC_HERMODE] && rnd()%100 < 70 || !tsc || !tsc->count || status_isimmune(bl) && tsc && tsc->data[sC_HERMODE] ) break; Quote
Linkin Park Posted October 3, 2012 Author Posted October 3, 2012 (edited) not sure whether it work or not , I am not that good at src edit if(sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_SAGE && status_isimmune(bl) && !tsc->data[sC_HERMODE] && rnd()%100 < 70 || !tsc || !tsc->count || status_isimmune(bl) && tsc && tsc->data[sC_HERMODE] ) break; Thank you! Hope it works, I'll test it out tomorrow ----------- Doesn't work, it completely fail the dispell even the enemy has no GTB card on it when the Professor has Soul Link BUT When the Professor has no Soul Link, it can dispel the enemy 100% chance even with GTB Card. Edited October 3, 2012 by RaGERO Quote
QQfoolsorellina Posted October 3, 2012 Posted October 3, 2012 (edited) skill.c int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, int skillid, int skilllv, unsigned int tick, int flag) { struct map_session_data *sd, *dstsd; struct mob_data *md, *dstmd; struct homun_data *hd; struct mercenary_data *mer; struct status_data *sstatus, *tstatus; struct status_change *tsc; struct status_change_entry *tsce; + struct status_change *sc = status_get_sc(src); and replace this if(status_isimmune(bl) || !tsc || !tsc->count) break; with if(sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_SAGE && status_isimmune(bl) && !tsc->data[sC_HERMODE] && rnd()%100 < 70 || !tsc || !tsc->count || status_isimmune(bl) && !(sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_SAGE) ){ if (sd) clif_skill_fail(sd,skillid,USESKILL_FAIL_LEVEL,0); break; } don't forget compile It work for me !! Edited October 3, 2012 by QQfoolsorellina Quote
Bin4ry Posted October 6, 2012 Posted October 6, 2012 (edited) Pardon for asking but this will dispell the GTB's effect or dispell the buff that target has? Edit: Oops, dispell doesn't have duration so it must be dispelling buff. Edited October 6, 2012 by darristan Quote
Napster Posted October 7, 2012 Posted October 7, 2012 @QQfoolsorellina Do you know how to Dispell check target cast skill Quote
QQfoolsorellina Posted October 7, 2012 Posted October 7, 2012 (edited) @QQfoolsorellina Do you know how to Dispell check target cast skill just make a guess if(dstsd.ud->skilltimer != INVALID_TIMER && dstsd.ud->skillid == SKIllname ) Edited October 7, 2012 by QQfoolsorellina Quote
Question
Linkin Park
How can I make Professors to be able to dispel enemies wearing GTB with chance, let's say 30% chance to dispel an enemy even though he is wearing GTB.
I checked the SA_DISPELL in skill.c and I think this is where the part where it won't dispel those who has GTB
Edited by RaGERO10 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.