|
@@ -7657,14 +7657,27 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
|
|
}
|
|
|
status_damage(src, src, sstatus->max_hp,0,0,1, skill_id);
|
|
|
break;
|
|
|
-
|
|
|
case AL_ANGELUS:
|
|
|
#ifdef RENEWAL
|
|
|
- case MC_LOUD:
|
|
|
case PR_SUFFRAGIUM:
|
|
|
+ case PR_IMPOSITIO:
|
|
|
#endif
|
|
|
case PR_MAGNIFICAT:
|
|
|
case PR_GLORIA:
|
|
|
+ if (sd == NULL || sd->status.party_id == 0 || (flag & 1)) {
|
|
|
+
|
|
|
+ // Animations don't play when outside visible range
|
|
|
+ if (check_distance_bl(src, bl, AREA_SIZE))
|
|
|
+ clif_skill_nodamage(bl, bl, skill_id, skill_lv, 1);
|
|
|
+
|
|
|
+ sc_start(src, bl, type, 100, skill_lv, skill_get_time(skill_id, skill_lv));
|
|
|
+ }
|
|
|
+ else if (sd)
|
|
|
+ party_foreachsamemap(skill_area_sub, sd, skill_get_splash(skill_id, skill_lv), src, skill_id, skill_lv, tick, flag | BCT_PARTY | 1, skill_castend_nodamage_id);
|
|
|
+ break;
|
|
|
+#ifdef RENEWAL
|
|
|
+ case MC_LOUD:
|
|
|
+#endif
|
|
|
case SN_WINDWALK:
|
|
|
case CASH_BLESSING:
|
|
|
case CASH_INCAGI:
|
|
@@ -9800,9 +9813,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
|
|
|
|
|
case AB_PRAEFATIO:
|
|
|
case AB_RENOVATIO:
|
|
|
-#ifdef RENEWAL
|
|
|
- case PR_IMPOSITIO:
|
|
|
-#endif
|
|
|
if( !sd || sd->status.party_id == 0 || flag&1 ) {
|
|
|
if (skill_id == AB_PRAEFATIO)
|
|
|
clif_skill_nodamage(bl, bl, skill_id, skill_lv, sc_start4(src, bl, type, 100, skill_lv, 0, 0, (sd && sd->status.party_id ? party_foreachsamemap(party_sub_count, sd, 0) : 1 ), skill_get_time(skill_id, skill_lv)));
|