feat: v1.12.1.0 — prisregel via sæsonkurven, reserve til gårdens eget forbrug, paller til palleskur, fanen Lagre (idéer fra Distribution Redux)
This commit is contained in:
+16
-4
@@ -42,17 +42,29 @@ local station = {
|
||||
}
|
||||
local quote = ADPrices.getQuote(station, SUGAR)
|
||||
check("P4 pris", quote.price, 470)
|
||||
check("P4 top", quote.top, 625)
|
||||
check("P4 top (pris ved 100 %)", math.floor(quote.top + 0.5), 627)
|
||||
check("P4 procent", quote.percent, 75)
|
||||
check("P4 er salgssted", ADPrices.isSellingStation(station), true)
|
||||
check("P4 skjult = ikke salgssted", ADPrices.isSellingStation({isa = function() return true end, isSellingPoint = true, hideFromPricesMenu = true}), false)
|
||||
check("P4 fabrik-station = ikke salgssted", ADPrices.isSellingStation({isa = function() return true end, isSellingPoint = false}), false)
|
||||
|
||||
-- P5: uden stationens grundpris: pricePerLiter × faktor nu × sværhedsgrad
|
||||
-- P5: uden stationens grundpris: kun kurven tæller (faktor nu ÷ faktor max)
|
||||
local bare = {getEffectiveFillTypePrice = function() return 470 end}
|
||||
local quote2 = ADPrices.getQuote(bare, SUGAR)
|
||||
check("P5 top fra pricePerLiter", quote2.top, 500)
|
||||
check("P5 procent", quote2.percent, 94)
|
||||
check("P5 procent = kurven alene", quote2.percent, 80)
|
||||
check("P5 top = effektiv ÷ kurve", math.floor(quote2.top + 0.5), 588)
|
||||
-- P7: kurven er grundlaget (Distribution Redux-metoden): faktor nu ÷ årets max, uafhængigt af sværhedsgrad
|
||||
check("P7 curvePercent", ADPrices.curvePercent({1.0, 1.25, 0.9}, 1), 80)
|
||||
check("P7 curvePercent ved top", ADPrices.curvePercent({1.0, 1.25, 0.9}, 2), 100)
|
||||
check("P7 flad kurve = 100", ADPrices.curvePercent({1.0, 1.01, 1.0}, 3), 100)
|
||||
check("P7 ingen kurve = 100", ADPrices.curvePercent(nil, 1), 100)
|
||||
check("P7 ukendt periode = 100", ADPrices.curvePercent({1.0, 1.25}, nil), 100)
|
||||
-- P8: stor efterspørgsel ganger stationens egen faktor på: 500 grundpris, 700 effektiv, kurve 80 % -> 112
|
||||
local demandStation = {fillTypePrices = {[SUGAR] = 500}, getEffectiveFillTypePrice = function() return 700 end}
|
||||
check("P8 stor efterspørgsel > 100", ADPrices.getQuote(demandStation, SUGAR).percent, 112)
|
||||
-- P9: sværhedsgraden påvirker ikke procenten (begge priser skaleres ens)
|
||||
local hardStation = {fillTypePrices = {[SUGAR] = 250}, getEffectiveFillTypePrice = function() return 235 end}
|
||||
check("P9 uafhængig af sværhedsgrad", ADPrices.getQuote(hardStation, SUGAR).percent, 75)
|
||||
check("P5 fejlende station -> nil", ADPrices.getQuote({getEffectiveFillTypePrice = function() error("x") end}, SUGAR), nil)
|
||||
|
||||
-- P6: bedste tilbud = højeste procent, dernæst pris
|
||||
|
||||
Reference in New Issue
Block a user