Currently amxmodx doesn't reload modules that use metamod, so MODULE_RELOAD_ON_MAP_CHANGE being defined or not doesn't make any difference.
Even though this commit currently doesn't change any behavior, amxmodx might in the future support reloading modules that use metamod, and all these modules in their current state either fail completely because of erroneous cleanup, or are untested (and most likely leak stuff).
Furthermore, these changes make it clear that these modules are in fact not being reloaded.
Modules are loaded before plugins, and can hook OnPluginsLoaded. Therefore, they should be unloaded AFTER plugins, and be able to hook OnPluginsUnloaded. This was not the case for reloadable modules.
This affects nvault module, whose OnPluginsUnloaded function wasn't being called.
* Add JSON module
* Merge upstream changes
Fix memory leaks
* Add json include to PackageScript
* Merge upstream changes
Fix memory leaks and increase max nesting
* Fix documentation
* Use AutoPtr in managing JSON handles
* Merge upstream changes
Order of items in an array is preserved after removing an item.
* Merge upstream
* Fix crash
* Add VS projects files and fix mixed tab/spaces
* Remove erroring on "json_free"
* Add comments to "json.inc" file
* Remove overloaded operators
* Use of "override" keyword where needed
* Fix parameter's name
* clang 4.0: fix ordered comparison between pointer and zero
* clang 4.0: fix taking address of packed member
Maybe someday someone will properly fix it
* clang 3.9: passing an object that undergoes default argument promotion to 'va_start' has undefined behavior
Someday proper fix?
* Missing amx_help_display_msg_time var in amxx.cfg
* Missing vars in CS DOD TFC and TS core.ini
* Standardization to others file location comments in clcmds.ini
* Missing account flag comments + typo errors in NS users.ini