Now server side rewar same as reported at client side.
Also thanks to KiriX for patch prepering to commit and testing.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
Create new table and convert existing data.
Simplify how game event quests are activated during event by adding generic function to set quest active/inactive.
Any quest in game_event_quest are disabled until event start (and deactivated once stopped)
Signed-off-by: NoFantasy <nofantasy@nf.no>
Create enum for SpecialFlags (database flags and internally computed)
Added related functions for specialFlags and update code accordingly.
Signed-off-by: NoFantasy <nofantasy@nf.no>
Quest that can repeated each month are set by quest_template.SpecialFlags |0x04 flag
Quest are reset at midnight the first day of each month.
Note: for the time being, quest must also be set repeatable (SpecialFlags |0x01)
Signed-off-by: NoFantasy <nofantasy@nf.no>
* SkillOrClass is converted to RequiredSkill (and then field can contain skill id only)
* Field ZoneOrSort has no longer a function in quest requirement, and RequiredClasses must be used instead where class limits are expected.
To restrict a quest to one class or more, use bitmask of class in RequiredClasses. RequiredSkill works like before.
Signed-off-by: NoFantasy <nofantasy@nf.no>
Also do come constatification of quest status check functions
and fix one unsafe use std::map operator[].
Never never use std::map operator [] for _read_ access.
Good chance corrupt related structure state ;)
Not in found case but in general.
Value can be -9 to 9. Value point to actual rewarded value in dbc store.
This id can then fully replace current use of RewRepValueN, as this field will most likely be reserved for custom reputation rewards (override RewRepValueId).
Old system/DB data will still work like normal, but be aware this may change in not too far away future.
Signed-off-by: NoFantasy <nofantasy@nf.no>
Also rename an existing field to RewHonorAddition.
Note: calculation of real reward must be corrected accordingly.
Signed-off-by: NoFantasy <nofantasy@nf.no>
Values 0-8, used to display XP reward in client log.
Please note that calculation of quest XP has changed, and formula must be corrected accordingly.
Signed-off-by: NoFantasy <nofantasy@nf.no>
QuestLevel -1 is now to be used for dynamic quest level instead of older 0. DB support needed for update of quests.
Signed-off-by: NoFantasy <nofantasy@nf.no>