Including the weird quirks.
Changes:
* Deposit caculated according to same rule as client. (detailed below). Should always match client deposit now
* Deposit for multiple auctions now only collected once. Deferred calculation of deposit until all auctions listed.
Deposit calculation is as follows:
Base deposit calculation = MSV x 15/75% (depending on AH). However this is not rounded. Case to int is used (so always round down)
The remainder is held in a float.
The base is then multiplied by number of items, and the time multiplier (x2 for 24 hour, x4 for 48 hour)
The nearest (no of items or lower) no of items when multiplied by the remainder that creates a whole number is then multiplied by the time multiplier (x1/x2/x4) and then added to deposit.
Example:
Item sell price 1s25. Deposit 18.75c (15% of 1s25). So base deposit = 18, remainder 0.75. Time 24h (x2) Item count 1 = 36c. Remainder = 0.75 (n) Min = 1s. Deposit 1s
Item sell price 1s25. Deposit 18.75c (15% of 1s25). So base deposit = 18, remainder 0.75. Time 24h (x2) Item count 2 = 72c. Remainder = 1.50 (n) Min = 1s. Deposit 1s
Item sell price 1s25. Deposit 18.75c (15% of 1s25). So base deposit = 18, remainder 0.75. Time 24h (x2) Item count 3 = 108c. Remainder = 2.25 (n) Min = 1s. Deposit 1s08c
Item sell price 1s25. Deposit 18.75c (15% of 1s25). So base deposit = 18, remainder 0.75. Time 24h (x2) Item count 4 = 144c. Remainder = 3.00 (n) Min = 1s. Deposit 1s50c (144c + (3c * 2))
Horrible kludge, to re-create a very weird deposit method.
Closes#15674 (PR)
Closes#15643 (Issue)
(cherry picked from commit 0ac442f19f)
# Conflicts:
# src/server/game/AuctionHouse/AuctionHouseMgr.h
Relax const uses in BossBoundaryEntry so the compiler can generate proper
copy assignment operator (error C2582: 'operator =' function is unavailable in 'BossBoundaryEntry')
Also renamed its members to match our coding standards
(public members should be UpperCamelCase)
(cherry picked from commit 954323d9cb)
Update 01beba21b5 to more reliabily complete quest to actually allow quest to be returned rather than just been marked as complete in quest log and on map but quest giver still showing grey ? ad grey continue button.
(cherry picked from commit 6d10b92071)
1) Move the http://www.wowhead.com/spell=52214/rainspeaker-treasures-see-invisibility and http://www.wowhead.com/spell=50735/frenzyheart-chicken-see-invisibility to spell area instead of been cast and removed by quest giver on quest accept and return - this solves the issue of Gods Like Shiny Things, Appeasing the Great Rainstone , Flown the Coop! and Chicken Party not working properly (due to player not been able to see npcs) if player relogged or left zone while had quest uncompleted in log unles quest was abandoned and retaken
2) Someone had put non repeatable flags on some of the events for Guardians since I originally scripted these npcs which resulted in that once guardian and dug up one treasure or threw net at one chicken would not work again, all events on these npcs need to repeatable
(cherry picked from commit 4f2cd84625)