From b98423cf76290dfd3b6ee8e0fc32bbf78068b382 Mon Sep 17 00:00:00 2001 From: ultramage Date: Mon, 18 May 2009 07:24:58 +0000 Subject: status calc code cleanup * Inverted the status calc code order, so that status_calc_bl optionally invokes status_calc_pc/mob/whatever instead of every status_calc_* calling status_calc_bl. * Inlined functions status_calc_bl_sub_pc, status_calc_bl_sub_hom and status_calc_bl_sub_mer into status_calc_bl. * Restructured status_calc_bl to require as little bl type-specific branching as possible. * Split status_calc_bl into two layers - the inner does the battle status calculations, while the outer deals with running appropriate base status calculations, remembering old values and handling client updates. * The status_calc_bl function is now the single entry-point for all status calculations. * status_calc_bl will now trigger a client update only on attributes that actually changed. * If hp or sp changes during status_calc_bl, it will now properly refresh on the client. * Removed SCB_PC, now SCB_ALL should be used instead. * Revived the unused status calc flag SCB_BASE to indicate that a base status recalculation should be done first (that's what the status_calc_* functions are for). * Defined a new symbolic bitmask SCB_BATTLE (SCB_ALL - SCB_BASE) in case someone needs to only calculate the battle status (currently unused). Please report any issues with this update. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13789 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'Changelog-Trunk.txt') diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index b30f79859..d988fbde5 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -3,6 +3,18 @@ Date Added AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. +09/05/18 + * status calc code cleanup [ultramage] + - Inverted the status calc code order, so that status_calc_bl optionally invokes status_calc_pc/mob/whatever instead of every status_calc_* calling status_calc_bl. + - Inlined functions status_calc_bl_sub_pc, status_calc_bl_sub_hom and status_calc_bl_sub_mer into status_calc_bl. + - Restructured status_calc_bl to require as little bl type-specific branching as possible. + - Split status_calc_bl into two layers - the inner does the battle status calculations, while the outer deals with running appropriate base status calculations, remembering old values and handling client updates. + - The status_calc_bl function is now the single entry-point for all status calculations. + - status_calc_bl will now trigger a client update only on attributes that actually changed. + - If hp or sp changes during status_calc_bl, it will now properly refresh on the client. + - Removed SCB_PC, now SCB_ALL should be used instead. + - Revived the unused status calc flag SCB_BASE to indicate that a base status recalculation should be done first (that's what the status_calc_* functions are for). + - Defined a new symbolic bitmask SCB_BATTLE (SCB_ALL - SCB_BASE) in case someone needs to only calculate the battle status (currently unused). 09/05/17 * Monocell, Instant Death and Class Change will now fail on bosses (bugreport:2907) [Playtester] * Eske and Eska now affect friendly guardians and slaves. (bugreport:2131) [Inkfish] -- cgit v1.2.3-60-g2f50