* detatch from User and Util and move to its own enum class
* added definitions for all locales the 12340 client could in theory have
* this is incompatble with the Intl extension
* version bump and php requirement bump
* fix empty scaling bar
* fix setting max level for scaling tooltips
* fix displayed periodic power gain value for runic power and rage
* attempt to fix spell coefficient calculation (dear god...)
* append % sign to value for two more auras
* display value per combo point
* fixed several deprecation notices and warnings from MySQL8, most notably:
- SQL_CALC_FOUND_ROWS: stopped using DBSimple::selectPage and query 'SELECT COUNT(*) ...' separately where needed
- ON DUPLICATE KEY UPDATE ... VALUES(): use row alias for new values instead of VALUES function
- boolean shorthands to long form (&& -> AND, etc)
* spell: resolve MiscValue for SPELL_AURA_MOD_INVISIBILITY
* search: do not double escape page title
* profiler: fixed typo, causing shaman spirit weapons to be applied _everywhere_
* define magic numbers from combat ratings
* move forgotten rating base values from Util to Stats
* fix localized rating strings for item and spell tooltips (expected float, got string)
* some cleanup in item/spell types to make it more clear when an internal stat is being handled, not an itemMod or combatRating
* prevent direct access to some internal files where applicable and reword error for others
* if CFG_DEBUG is set also enable debug in client javascript
* non-breaking formatting changes
* define regions and missing locales for later use
* unify stat handling. If there are discrepancies left at least they are now centralized.
- health should no longer pretend to be mana
- stats are no longer capped to 32.7k points as items can have multiple of the same stat and handily exceed smallints
* weight scale fixes:
- "repair cost" is no longer a weight scale option. Why was it one in the first place? Also it wasn't even accessible before. (that was a bug)
- "bonus armor" is now searchable and only applied to armor pieces
* removed unused parsed stats from itemsets
* relax numeric type requirements when working with filters
* restore smart type casting functionality of Util::checkNumeric when used with NUM_ANY
* enable Util::arraySumByKey to work recursively
* fix source display in listview
* convert configuration from list of constants to object
* fixes config changes not applying on cli whithout closing and reopening again
* config variables are no longer embedded in localization text
* enable level scaling for spells with RealPointsPerLevel
* note: While BasePoint vars ($m, $M) can scale, they are often involved in formulas that would have to be recalculated in javascript. This is currently impossible. So this var is skipped for now.
* fixed "modefied-by" and "modifies" tab having different results
* evalueate some more spell effects
* replace magic numbers with defined strings
* get model info from some more spell auras
* fixed wrong indizes for gem color picker in locale 3 (deDE)
* fixed interpretation of filter enums. Some are providing their value directly, others have an intermediate key.
* createSQLForCriterium is no longer abstract. (was implemented in exactly the same way everywhere)
* erronous criteria are now logged and discarded entirely)
* define and use some more magic numbers
* move id-based custom data from spell SetupScript to aowow_setup_custom_data table
* hide on unused glyph while at it
* rewrote SetupSrcipt
* implemented 'zone' parameter
* implemented 'bossdrop' parameter
* implemented 'dungeondifficulty' parameter
* implemented item filter relying on zone information (dropsInX)
* fixed world random drops showing a single loot source
* extended Source column of spells to the same functionality as items
ToDo:
* apply new 'commondrop' parameter on loot listviews
* gather difficuly versions of gameobjects and apply the same logic as for creatures
* implement fake spawns so npcs can get linked to a zone
* use strings from globalstrings.lua to format time in item and spell tooltips
* fixed item filter ItemCooldown
* fixed timeAgo format
* move item duration to correct position in tooltip
* defined upper limit for localeIds and also discard negative localeIds
* fixed eval error when parsing spell descriptions. Calculated numbers sadly can't be localized.
* display skill learning breakpoints for gathering skills
* fixed mixed up mining-skinning and savanging-skinning filters for NPCs
* defined some magic skill numbers
* removed tooltip-highlight when there is no tooltip to display
Spells/Tooltips
* fixed ancient copy-paste error and 'greater than or equal' conditions are now always evaluated as such
* display dbc definitions before articles on detail pages
* fixed logic when displaying skill step numbers
* made custom spell columns for linked spells and stack rules localizable
* added support for locale 4
* some strings are missing and will need to be translated at a later date
* thx @qyh214 for a lot of content
Co-authored-by: qyh214 <sandy0214qin@msn.com>