Sanitized and improved several macros through the code

- Sanitized all potentially unsafe macros (related eA:15259)
- Improved some function-like macros to evaluate their argument only
  once and keep it in a temporary variable.  This improves performance
  in the damage calculation related code.

Signed-off-by: Haru <haru@dotalux.com>
Replaced hardcoded Item IDs with constants

- This makes it harder to get the item IDs wrong in the code.
- Fixes item 'Slot_Coupon' being incorrectly considered a Spell Book due
  to an oversight (wrong item nameid) when the check was introduced.

Signed-off-by: Haru <haru@dotalux.com>
Added support for Max EquipLv in Pre-Renewal

- Follow-up to ed72a947a6c97804c1eef5b80bfa49d99f7d7586
- Max EquipLv is now observed, rather than ignored, in pre-renewal mode.

Signed-off-by: Haru <haru@dotalux.com>
Fixed wrong parentheses in a condition in status_calc_regen_rate

- eAthena:15257
- Teh wrong parentheses cause the condition to be always false, which in
  turn causes SP regen to continue while under
  SC_EXTREMITYFIST/SC_EXPLOSIONSPIRITS statuses.

Signed-off-by: Haru <haru@dotalux.com>
Merge branch 'master' of https://github.com/HerculesWS/Hercules into ghbb

Conflicts:
	src/map/itemdb.h
	src/map/mob.h