diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/clif.c | 2 | ||||
-rw-r--r-- | src/map/skill.c | 15 | ||||
-rw-r--r-- | src/map/skill.h | 39 |
3 files changed, 31 insertions, 25 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index cb4450b6d..bc2392504 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -3753,7 +3753,7 @@ static void clif_getareachar_skillunit(struct map_session_data *sd, struct skill WFIFOW(fd,10)=unit->bl.x; WFIFOW(fd,12)=unit->bl.y; if (battle_config.traps_setting&1 && skill_get_inf2(unit->group->skill_id)&INF2_TRAP) - WFIFOB(fd,14)=UNT_ATTACK_SKILLS; //Use invisible unit id for traps. + WFIFOB(fd,14)=UNT_DUMMYSKILL; //Use invisible unit id for traps. else WFIFOB(fd,14)=unit->group->unit_id; WFIFOB(fd,15)=1; // ignored by client (always gets set to 1) diff --git a/src/map/skill.c b/src/map/skill.c index 7620fe91b..84bdfe5bd 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7124,7 +7124,7 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns switch (sg->unit_id) { case UNT_FIREWALL: - case UNT_KAENSIN: + case UNT_KAEN: { int count=0; const int x = bl->x, y = bl->y; @@ -7203,7 +7203,7 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns skill_attack(BF_MAGIC,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0); break; - case UNT_ATTACK_SKILLS: + case UNT_DUMMYSKILL: switch (sg->skill_id) { case SG_SUN_WARM: //SG skills [Komurka] @@ -7241,6 +7241,12 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns if (skill_attack(skill_get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0) <= 0 && tsc) tsc->sg_counter=0; //Attack absorbed. break; + + case GS_DESPERADO: + if (rand()%100 < src->val1) + skill_attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0); + break; + default: skill_attack(skill_get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0); } @@ -7464,11 +7470,6 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns skill_attack(skill_get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0); break; - case UNT_DESPERADO: - if (rand()%100 < src->val1) - skill_attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0); - break; - case UNT_GROUNDDRIFT_WIND: case UNT_GROUNDDRIFT_DARK: case UNT_GROUNDDRIFT_POISON: diff --git a/src/map/skill.h b/src/map/skill.h index 6d32e449b..4a2b7bfcf 100644 --- a/src/map/skill.h +++ b/src/map/skill.h @@ -1055,22 +1055,23 @@ enum e_skill { MER_ESTIMATION, }; +/// The client view ids for land skills. enum { UNT_SAFETYWALL = 0x7e, UNT_FIREWALL, UNT_WARP_WAITING, UNT_WARP_ACTIVE, - //0x82 - UNT_SANCTUARY = 0x83, + UNT_BENEDICTIO, //TODO + UNT_SANCTUARY, UNT_MAGNUS, UNT_PNEUMA, - UNT_ATTACK_SKILLS, //These show no effect on the client, therefore can be used for attack skills. + UNT_DUMMYSKILL, //These show no effect on the client UNT_FIREPILLAR_WAITING, UNT_FIREPILLAR_ACTIVE, - //0x89 - //0x8a - //0x8b - UNT_USED_TRAPS = 0x8c, + UNT_HIDDEN_TRAP, //TODO + UNT_TRAP, //TODO + UNT_HIDDEN_WARP_NPC, //TODO + UNT_USED_TRAPS, UNT_ICEWALL, UNT_QUAGMIRE, UNT_BLASTMINE, @@ -1111,25 +1112,29 @@ enum { UNT_CALLFAMILY, UNT_GOSPEL, UNT_BASILICA, - UNT_MOONLIT,//0xb5 //I HOPE this one doesn't shows any effects - UNT_FOGWALL = 0xb6, + UNT_MOONLIT, + UNT_FOGWALL, UNT_SPIDERWEB, UNT_GRAVITATION, UNT_HERMODE, - UNT_DESPERADO, //0xba //Temporary setting until correct value is found. - UNT_SUITON = 0xbb, + UNT_KAENSIN, //TODO + UNT_SUITON, UNT_TATAMIGAESHI, - UNT_KAENSIN, + UNT_KAEN, UNT_GROUNDDRIFT_WIND, UNT_GROUNDDRIFT_DARK, UNT_GROUNDDRIFT_POISON, UNT_GROUNDDRIFT_WATER, UNT_GROUNDDRIFT_FIRE, - //0xc3 ? - //0xc4 ? - //0xc5 ? - //0xc6 ? - UNT_EVILLAND = 0xc7, + UNT_DEATHWAVE, //TODO + UNT_WATERATTACK, //TODO + UNT_WINDATTACK, //TODO + UNT_EARTHQUAKE, //TODO + UNT_EVILLAND, + UNT_DARK_RUNNER, //TODO + UNT_DARK_TRANSFER, //TODO + + UNT_MAX = 0x190 }; #endif /* _SKILL_H_ */ |