diff options
author | pete318 <pete318@hotmail.com> | 2015-10-02 03:20:42 +0100 |
---|---|---|
committer | DDuarte <dnpd.dd@gmail.com> | 2016-03-23 00:28:03 +0000 |
commit | 28f51306d4af3cbbae0ad745858d0eb7c5a98783 (patch) | |
tree | 618cba9ce9d3188f990419cb89727a6e19fb9eaf /cmake/compiler/gcc | |
parent | 9660848385068c7f57dc3b0ec3408c01ff4341aa (diff) |
Improved Auction house deposit handling.
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 0ac442f19fcfa8c39775c5ae06bba8f3bcbd0407)
# Conflicts:
# src/server/game/AuctionHouse/AuctionHouseMgr.h
Diffstat (limited to 'cmake/compiler/gcc')
0 files changed, 0 insertions, 0 deletions