I have been working in a custom skill area, This ability hits a 3x3 area and then 1 second takes another hit.
What complicates me is the skill-> addtimerskill function, I tried to use this for the second hit, but the target is always self (src & bl).
There is another way for timer skills that allow realize it in area?
Or I used this function wrong?
The code:
case QQ_CUSTOM: clif->skill_nodamage(src,bl,skill_id,skill_lv,1); skill->castend_damage_id(src, src, skill_id, skill_lv,tick, flag); skill->addtimerskill(src,tick+1000,bl->id,src->x,src->y,skill_id,skill_lv,0,flag); break;
case GN_CARTCANNON: case KO_HAPPOKUNAI: case KO_HUUMARANKA: case KO_MUCHANAGE: case KO_BAKURETSU: case GN_ILLUSIONDOPING: case MH_XENO_SLASHER: case QQ_CUSTOM: if( flag&1 ) {//Recursive invocation // skill->area_temp[0] holds number of targets in area // skill->area_temp[1] holds the id of the original target // skill->area_temp[2] counts how many targets have already been processed int sflag = skill->area_temp[0] & 0xFFF, heal; struct status_change *tsc = status->get_sc(bl); if( flag&SD_LEVEL ) sflag |= SD_LEVEL; // -1 will be used in packets instead of the skill level....
Hi,
Share this post
Link to post
Share on other sites