|
@@ -11705,15 +11705,10 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
|
|
if( !status_isdead(bl) )
|
|
|
break;
|
|
|
|
|
|
- status_zap(bl, 0, tstatus->sp * 10 * skill_lv / 100);
|
|
|
-
|
|
|
- int heal = tstatus->sp;
|
|
|
-
|
|
|
- if( heal <= 0 )
|
|
|
- heal = 1;
|
|
|
- tstatus->hp = heal;
|
|
|
+ tstatus->hp = max(tstatus->sp, 1);
|
|
|
+ tstatus->sp -= tstatus->sp * ( 60 - 10 * skill_lv ) / 100;
|
|
|
clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
|
|
|
- pc_revive((TBL_PC*)bl,heal,0);
|
|
|
+ pc_revive(reinterpret_cast<map_session_data*>(bl),true,true);
|
|
|
clif_resurrection( *bl );
|
|
|
}
|
|
|
break;
|