diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/skill.c | 17 | ||||
-rw-r--r-- | src/map/skill.h | 5 |
2 files changed, 20 insertions, 2 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 775e8ca14..275e85094 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -6040,6 +6040,7 @@ int skill_castend_pos2 (struct block_list *src, int x, int y, int skillid, int s case NJ_KAENSIN: case NJ_BAKUENRYU: case NJ_HYOUSYOURAKU: + clif_skill_nodamage(src,bl,skillid,skilllv,1); skill_unitsetting(src,skillid,skilllv,x,y,0); flag|=1; break; @@ -6438,6 +6439,13 @@ struct skill_unit_group *skill_unitsetting (struct block_list *src, int skillid, case WE_CALLBABY: if (sd) val1 = sd->status.child; break; + case NJ_KAENSIN: + val1 = skilllv; + val2 = (skilllv+1)/2 + 4; + break; + case NJ_BAKUENRYU: + val1 = 3; + break; case GS_GROUNDDRIFT: { //Take on the base element, not the elemental one. struct status_data *bstatus = status_get_base_status(src); @@ -10504,6 +10512,15 @@ void skill_init_unit_layout (void) memcpy(skill_unit_layout[pos].dy,dy,sizeof(dy)); break; } + case NJ_TATAMIGAESHI: + { + static const int dx[] = {-1, 0, 0, 1}; + static const int dy[] = { 0,-1, 1, 0}; + skill_unit_layout[pos].count = 4; + memcpy(skill_unit_layout[pos].dx,dx,sizeof(dx)); + memcpy(skill_unit_layout[pos].dy,dy,sizeof(dy)); + break; + } default: ShowError("unknown unit layout at skill %d\n",i); break; diff --git a/src/map/skill.h b/src/map/skill.h index 704fd4f57..f6494ead5 100644 --- a/src/map/skill.h +++ b/src/map/skill.h @@ -937,8 +937,9 @@ enum { UNT_HERMODE,
//0xba
UNT_SUITON = 0xbb,
- UNT_DESPERADO,
- //0xbd, 0xbe, 0xc0, 0xc1 //Maybe the other elements of Ground Drift?
+ UNT_DESPERADO, //NJ_TATAMIGAESHI is 0xbc as well?
+ UNT_KAENSIN,
+ //0xbe, 0xc0, 0xc1 //Maybe the other elements of Ground Drift?
UNT_GROUNDDRIFT = 0xc2,
};
|