Browse Source

Fixed some arrays not zeroing out on status recalculation (fixes #1722)
* Follow up to 0f1b1af, f296409, and a79d065.
* Fixes several bonuses that are not zeroed out properly since the block order didn't match.
Thanks to @whupdo!

aleos89 8 năm trước cách đây
mục cha
commit
0dd3c74c2e
1 tập tin đã thay đổi với 5 bổ sung0 xóa
  1. 5 0
      src/map/status.c

+ 5 - 0
src/map/status.c

@@ -3294,7 +3294,10 @@ int status_calc_pc_(struct map_session_data* sd, enum e_status_calc_opt opt)
 		+ sizeof(sd->ignore_mdef_by_race)
 		+ sizeof(sd->ignore_mdef_by_class)
 		+ sizeof(sd->ignore_def_by_race)
+		+ sizeof(sd->ignore_def_by_class)
 		+ sizeof(sd->sp_gain_race)
+		+ sizeof(sd->magic_addrace2)
+		+ sizeof(sd->ignore_mdef_by_race2)
 		+ sizeof(sd->dropaddrace)
 		+ sizeof(sd->dropaddclass)
 		);
@@ -3358,6 +3361,8 @@ int status_calc_pc_(struct map_session_data* sd, enum e_status_calc_opt opt)
 		+ sizeof(sd->sp_loss)
 		+ sizeof(sd->hp_regen)
 		+ sizeof(sd->sp_regen)
+		+ sizeof(sd->percent_hp_regen)
+		+ sizeof(sd->percent_sp_regen)
 		+ sizeof(sd->add_def)
 		+ sizeof(sd->add_mdef)
 		+ sizeof(sd->add_mdmg)