Removed code duplication for Guild Skills (#3633)
* Fixes #3682. * Remove code duplication for Guild Skills: Battle Orders, Regeneration and Restore. Thanks to @vykimo!
This commit is contained in:
parent
af205a8841
commit
98ba549022
@ -8810,37 +8810,15 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
|
||||
// New guild skills [Celest]
|
||||
case GD_BATTLEORDER:
|
||||
if(flag&1) {
|
||||
if (status_get_guild_id(src) == status_get_guild_id(bl))
|
||||
sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id, skill_lv));
|
||||
} else if (status_get_guild_id(src)) {
|
||||
clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
|
||||
map_foreachinallrange(skill_area_sub, src,
|
||||
skill_get_splash(skill_id, skill_lv), BL_PC,
|
||||
src,skill_id,skill_lv,tick, flag|BCT_GUILD|1,
|
||||
skill_castend_nodamage_id);
|
||||
if (sd)
|
||||
guild_block_skill(sd,skill_get_time2(skill_id,skill_lv));
|
||||
}
|
||||
break;
|
||||
case GD_REGENERATION:
|
||||
if(flag&1) {
|
||||
if (status_get_guild_id(src) == status_get_guild_id(bl))
|
||||
sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id, skill_lv));
|
||||
} else if (status_get_guild_id(src)) {
|
||||
clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
|
||||
map_foreachinallrange(skill_area_sub, src,
|
||||
skill_get_splash(skill_id, skill_lv), BL_PC,
|
||||
src,skill_id,skill_lv,tick, flag|BCT_GUILD|1,
|
||||
skill_castend_nodamage_id);
|
||||
if (sd)
|
||||
guild_block_skill(sd,skill_get_time2(skill_id,skill_lv));
|
||||
}
|
||||
break;
|
||||
case GD_RESTORE:
|
||||
if(flag&1) {
|
||||
if (status_get_guild_id(src) == status_get_guild_id(bl))
|
||||
clif_skill_nodamage(src,bl,AL_HEAL,status_percent_heal(bl,90,90),1);
|
||||
if (status_get_guild_id(src) == status_get_guild_id(bl)) {
|
||||
if( skill_id == GD_RESTORE )
|
||||
clif_skill_nodamage(src,bl,AL_HEAL,status_percent_heal(bl,90,90),1);
|
||||
else
|
||||
sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id, skill_lv));
|
||||
}
|
||||
} else if (status_get_guild_id(src)) {
|
||||
clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
|
||||
map_foreachinallrange(skill_area_sub, src,
|
||||
|
Loading…
x
Reference in New Issue
Block a user