- Some more cleaning up of the splash skill code. Now the passed hit value for the splash targetted mobs is 9 instead of 5, this allows multi-hitting splash skills to display the number of hits correctly.
- Also merged Blitz Beat to the rest of the splash code. git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8415 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
a18ae6fb49
commit
30bf9a2b13
@ -4,6 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
|
|||||||
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
||||||
|
|
||||||
2006/08/21
|
2006/08/21
|
||||||
|
* Some more cleaning up of the splash skill code. Now the passed hit value
|
||||||
|
for the splash targetted mobs is 9 instead of 5, this allows multi-hitting
|
||||||
|
splash skills to display the number of hits correctly. [Skotlex]
|
||||||
* Fixed call homunc bug when the homunc was vapo and the master has change
|
* Fixed call homunc bug when the homunc was vapo and the master has change
|
||||||
of map [Toms]
|
of map [Toms]
|
||||||
* Fixed SQL-Guild Creation, guild name was escaped 2 times [Toms]
|
* Fixed SQL-Guild Creation, guild name was escaped 2 times [Toms]
|
||||||
|
@ -2879,6 +2879,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
|
|||||||
case AS_SPLASHER:
|
case AS_SPLASHER:
|
||||||
case AS_GRIMTOOTH:
|
case AS_GRIMTOOTH:
|
||||||
case SM_MAGNUM:
|
case SM_MAGNUM:
|
||||||
|
case HT_BLITZBEAT:
|
||||||
case MC_CARTREVOLUTION:
|
case MC_CARTREVOLUTION:
|
||||||
case NPC_SPLASHATTACK:
|
case NPC_SPLASHATTACK:
|
||||||
case AC_SHOWER:
|
case AC_SHOWER:
|
||||||
@ -2895,7 +2896,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
|
|||||||
{ //Invoked from map_foreachinarea, skill_area_temp[0] holds number of targets to divide damage by.
|
{ //Invoked from map_foreachinarea, skill_area_temp[0] holds number of targets to divide damage by.
|
||||||
if (skill_area_temp[1] != bl->id)
|
if (skill_area_temp[1] != bl->id)
|
||||||
skill_attack(skill_get_type(skillid), src, src, bl,
|
skill_attack(skill_get_type(skillid), src, src, bl,
|
||||||
skillid, skilllv, tick, skill_area_temp[0]|0x1500);
|
skillid, skilllv, tick, skill_area_temp[0]|0x1900);
|
||||||
else if (skillid == KN_BRANDISHSPEAR)
|
else if (skillid == KN_BRANDISHSPEAR)
|
||||||
skill_attack(skill_get_type(skillid), src, src, bl,
|
skill_attack(skill_get_type(skillid), src, src, bl,
|
||||||
skillid, skilllv, tick, skill_area_temp[0]);
|
skillid, skilllv, tick, skill_area_temp[0]);
|
||||||
@ -2905,7 +2906,8 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
|
|||||||
clif_skill_nodamage(src,bl,skillid,skilllv,1);
|
clif_skill_nodamage(src,bl,skillid,skilllv,1);
|
||||||
skill_area_temp[0] = 0;
|
skill_area_temp[0] = 0;
|
||||||
skill_area_temp[1] = bl->id;
|
skill_area_temp[1] = bl->id;
|
||||||
if (skill_get_nk(skillid)&NK_SPLASHSPLIT)
|
//0xF000 -> Forced splash damage for Auto Blitz-Beat
|
||||||
|
if (flag&0xF000 || skill_get_nk(skillid)&NK_SPLASHSPLIT)
|
||||||
map_foreachinrange(skill_area_sub, bl,
|
map_foreachinrange(skill_area_sub, bl,
|
||||||
skill_get_splash(skillid, skilllv), BL_CHAR,
|
skill_get_splash(skillid, skilllv), BL_CHAR,
|
||||||
src, skillid, skilllv, tick, BCT_ENEMY, skill_area_sub_count);
|
src, skillid, skilllv, tick, BCT_ENEMY, skill_area_sub_count);
|
||||||
@ -2919,7 +2921,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
|
|||||||
|
|
||||||
//Splasher Should do 100% damage on targetted character.
|
//Splasher Should do 100% damage on targetted character.
|
||||||
skill_attack(skill_get_type(skillid), src, src, bl, skillid, skilllv,
|
skill_attack(skill_get_type(skillid), src, src, bl, skillid, skilllv,
|
||||||
tick, skillid == AS_SPLASHER?0:skill_area_temp[0]);
|
tick, (skillid == AS_SPLASHER?0:skill_area_temp[0])|(flag&0xF000));
|
||||||
|
|
||||||
if (skillid == SM_MAGNUM) {
|
if (skillid == SM_MAGNUM) {
|
||||||
//Initiate 10% of your damage becomes fire element.
|
//Initiate 10% of your damage becomes fire element.
|
||||||
@ -2928,31 +2930,6 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//Done apart because you can't mix the flag with BCT_ENEMY for auto-blitz.
|
|
||||||
case HT_BLITZBEAT:
|
|
||||||
if (flag&1) {
|
|
||||||
if (skill_area_temp[1] != bl->id)
|
|
||||||
skill_attack(skill_get_type(skillid), src, src, bl, skillid, skilllv,
|
|
||||||
tick, skill_area_temp[0]|(flag&0xFF00));
|
|
||||||
} else {
|
|
||||||
skill_area_temp[0] = 0;
|
|
||||||
skill_area_temp[1] = bl->id;
|
|
||||||
if (flag&0xF000)
|
|
||||||
map_foreachinrange(skill_area_sub, bl,
|
|
||||||
skill_get_splash(skillid, skilllv), BL_CHAR,
|
|
||||||
src, skillid, skilllv, tick, BCT_ENEMY, skill_area_sub_count);
|
|
||||||
else
|
|
||||||
skill_area_temp[0] = 1;
|
|
||||||
map_foreachinrange(skill_area_sub, bl,
|
|
||||||
skill_get_splash(skillid, skilllv), BL_CHAR,
|
|
||||||
src, skillid, skilllv, tick, BCT_ENEMY|1|flag,
|
|
||||||
skill_castend_damage_id);
|
|
||||||
|
|
||||||
skill_attack(skill_get_type(skillid), src, src, bl, skillid, skilllv,
|
|
||||||
tick, skill_area_temp[0]|(flag&0xFF00));
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case KN_BOWLINGBASH:
|
case KN_BOWLINGBASH:
|
||||||
if(flag&1){
|
if(flag&1){
|
||||||
if(bl->id==skill_area_temp[1])
|
if(bl->id==skill_area_temp[1])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user