mirror of
https://github.com/thepaperpilot/Advent-Incremental.git
synced 2025-03-01 14:58:07 +00:00
Implement Frost lv1-4
This commit is contained in:
parent
2665ca87f8
commit
46918a6719
3 changed files with 59 additions and 11 deletions
src/data/layers
|
@ -962,7 +962,7 @@ const layer = createLayer(id, () => {
|
||||||
createMilestone(() => ({
|
createMilestone(() => ({
|
||||||
display: {
|
display: {
|
||||||
requirement: "Frosty Level 2",
|
requirement: "Frosty Level 2",
|
||||||
effectDisplay: "Oil pumps are cheaper"
|
effectDisplay: "Oil pumps are 10x cheaper"
|
||||||
},
|
},
|
||||||
visibility: () => showIf(heavyDrillElfMilestones[0].earned.value),
|
visibility: () => showIf(heavyDrillElfMilestones[0].earned.value),
|
||||||
shouldEarn: () => heavyDrillElfTraining.level.value >= 2
|
shouldEarn: () => heavyDrillElfTraining.level.value >= 2
|
||||||
|
@ -978,7 +978,11 @@ const layer = createLayer(id, () => {
|
||||||
createMilestone(() => ({
|
createMilestone(() => ({
|
||||||
display: {
|
display: {
|
||||||
requirement: "Frosty Level 4",
|
requirement: "Frosty Level 4",
|
||||||
effectDisplay: "Heavy drill's ln is now log2.5"
|
effectDisplay: jsx(() => (
|
||||||
|
<>
|
||||||
|
Heavy drill drill's ln is now log<sub>2.5</sub>
|
||||||
|
</>
|
||||||
|
))
|
||||||
},
|
},
|
||||||
visibility: () =>
|
visibility: () =>
|
||||||
showIf(heavyDrillElfMilestones[2].earned.value && main.day.value >= 13),
|
showIf(heavyDrillElfMilestones[2].earned.value && main.day.value >= 13),
|
||||||
|
@ -1042,8 +1046,24 @@ const layer = createLayer(id, () => {
|
||||||
const kilnElfTraining = createElfTraining(elves.elves.kilnElf, kilnElfMilestones);
|
const kilnElfTraining = createElfTraining(elves.elves.kilnElf, kilnElfMilestones);
|
||||||
const fireElfTraining = [smallfireElfTraining, bonfireElfTraining, kilnElfTraining];
|
const fireElfTraining = [smallfireElfTraining, bonfireElfTraining, kilnElfTraining];
|
||||||
|
|
||||||
const paperElfTraining = createElfTraining(elves.elves.paperElf, paperElfMilestones);
|
const paperElfTraining = createElfTraining(
|
||||||
const boxElfTraining = createElfTraining(elves.elves.boxElf, boxElfMilestones);
|
elves.elves.paperElf,
|
||||||
|
paperElfMilestones,
|
||||||
|
createMultiplicativeModifier(() => ({
|
||||||
|
multiplier: () => Decimal.add(oil.oil.value, 1).log10(),
|
||||||
|
description: "Frosty Level 1",
|
||||||
|
enabled: heavyDrillElfMilestones[0].earned
|
||||||
|
}))
|
||||||
|
);
|
||||||
|
const boxElfTraining = createElfTraining(
|
||||||
|
elves.elves.boxElf,
|
||||||
|
boxElfMilestones,
|
||||||
|
createMultiplicativeModifier(() => ({
|
||||||
|
multiplier: () => Decimal.add(oil.oil.value, 1).log10(),
|
||||||
|
description: "Frosty Level 1",
|
||||||
|
enabled: heavyDrillElfMilestones[0].earned
|
||||||
|
}))
|
||||||
|
);
|
||||||
const clothElfTraining = createElfTraining(elves.elves.clothElf, clothElfMilestones);
|
const clothElfTraining = createElfTraining(elves.elves.clothElf, clothElfMilestones);
|
||||||
const plasticElfTraining = [paperElfTraining, boxElfTraining, clothElfTraining];
|
const plasticElfTraining = [paperElfTraining, boxElfTraining, clothElfTraining];
|
||||||
const coalDrillElfTraining = createElfTraining(
|
const coalDrillElfTraining = createElfTraining(
|
||||||
|
|
|
@ -179,7 +179,7 @@ const layer = createLayer(id, function (this: BaseLayer) {
|
||||||
})),
|
})),
|
||||||
createMultiplicativeModifier(() => ({
|
createMultiplicativeModifier(() => ({
|
||||||
multiplier: () =>
|
multiplier: () =>
|
||||||
Decimal.add(oil.activeBurner.value, 1).mul(oil.oilEffectiveness.value),
|
Decimal.add(oil.effectiveBurners.value, 1).mul(oil.oilEffectiveness.value),
|
||||||
description: "Blaster Burner",
|
description: "Blaster Burner",
|
||||||
enabled: oil.row2Upgrades[2].bought
|
enabled: oil.row2Upgrades[2].bought
|
||||||
})),
|
})),
|
||||||
|
|
|
@ -144,7 +144,15 @@ const layer = createLayer(id, function (this: BaseLayer) {
|
||||||
active: activeHeavy
|
active: activeHeavy
|
||||||
});
|
});
|
||||||
const activeHeavy2 = persistent<DecimalSource>(0);
|
const activeHeavy2 = persistent<DecimalSource>(0);
|
||||||
const heavy2Power = computed(() => Decimal.add(activeHeavy2.value, Math.E).ln());
|
const heavy2Power = computed(() => {
|
||||||
|
let power = Decimal.add(activeHeavy2.value, Math.E);
|
||||||
|
if (management.elfTraining.heavyDrillElfTraining.milestones[3].earned.value) {
|
||||||
|
power = power.log(2.5);
|
||||||
|
} else {
|
||||||
|
power = power.ln();
|
||||||
|
}
|
||||||
|
return power;
|
||||||
|
});
|
||||||
const buildHeavy2 = createBuyable(() => ({
|
const buildHeavy2 = createBuyable(() => ({
|
||||||
resource: metal.metal,
|
resource: metal.metal,
|
||||||
cost() {
|
cost() {
|
||||||
|
@ -158,7 +166,15 @@ const layer = createLayer(id, function (this: BaseLayer) {
|
||||||
<br />
|
<br />
|
||||||
Attach extra drills to Heavy Drills to make them faster
|
Attach extra drills to Heavy Drills to make them faster
|
||||||
<br />
|
<br />
|
||||||
Raise amount of effective Heavy Drills by ^ln(Heavy Drill Drill amount + e).
|
Raise amount of effective Heavy Drills by ^
|
||||||
|
{management.elfTraining.heavyDrillElfTraining.milestones[3].earned.value ? (
|
||||||
|
<>
|
||||||
|
log<sub>2.5</sub>
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
<>ln</>
|
||||||
|
)}
|
||||||
|
(Heavy Drill Drill amount + e).
|
||||||
<br />
|
<br />
|
||||||
(also affects coal consumption).
|
(also affects coal consumption).
|
||||||
<br />
|
<br />
|
||||||
|
@ -260,8 +276,12 @@ const layer = createLayer(id, function (this: BaseLayer) {
|
||||||
let v = new Decimal(this.amount.value);
|
let v = new Decimal(this.amount.value);
|
||||||
v = Decimal.pow(0.95, paper.books.oilBook.totalAmount.value).times(v);
|
v = Decimal.pow(0.95, paper.books.oilBook.totalAmount.value).times(v);
|
||||||
let price = Decimal.pow(16, v).times(2e6);
|
let price = Decimal.pow(16, v).times(2e6);
|
||||||
if (row2Upgrades[4].bought.value)
|
if (row2Upgrades[4].bought.value) {
|
||||||
price = price.div(Decimal.add(totalOil.value, 1).root(6));
|
price = price.div(Decimal.add(totalOil.value, 1).root(6));
|
||||||
|
}
|
||||||
|
if (management.elfTraining.heavyDrillElfTraining.milestones[1].earned.value) {
|
||||||
|
price = price.div(10);
|
||||||
|
}
|
||||||
return price;
|
return price;
|
||||||
},
|
},
|
||||||
display: jsx(() => (
|
display: jsx(() => (
|
||||||
|
@ -301,9 +321,16 @@ const layer = createLayer(id, function (this: BaseLayer) {
|
||||||
});
|
});
|
||||||
|
|
||||||
const activeBurner = persistent<DecimalSource>(0);
|
const activeBurner = persistent<DecimalSource>(0);
|
||||||
const burnerOil = computed(() => Decimal.pow(activeBurner.value, 2));
|
const effectiveBurners = computed(() => {
|
||||||
const burnerCoal = computed(() => Decimal.pow(activeBurner.value, 3).mul(1e19));
|
let burners = activeBurner.value;
|
||||||
const burnerMetal = computed(() => Decimal.add(activeBurner.value, 1));
|
if (management.elfTraining.heavyDrillElfTraining.milestones[2].earned.value) {
|
||||||
|
burners = Decimal.pow(burners, 1.5);
|
||||||
|
}
|
||||||
|
return burners;
|
||||||
|
});
|
||||||
|
const burnerOil = computed(() => Decimal.pow(effectiveBurners.value, 2));
|
||||||
|
const burnerCoal = computed(() => Decimal.pow(effectiveBurners.value, 3).mul(1e19));
|
||||||
|
const burnerMetal = computed(() => Decimal.add(effectiveBurners.value, 1));
|
||||||
const buildBurner = createBuyable(() => ({
|
const buildBurner = createBuyable(() => ({
|
||||||
resource: noPersist(oil),
|
resource: noPersist(oil),
|
||||||
cost() {
|
cost() {
|
||||||
|
@ -1011,6 +1038,7 @@ const layer = createLayer(id, function (this: BaseLayer) {
|
||||||
activePump,
|
activePump,
|
||||||
buildPump,
|
buildPump,
|
||||||
activeBurner,
|
activeBurner,
|
||||||
|
effectiveBurners,
|
||||||
buildBurner,
|
buildBurner,
|
||||||
activeSmelter,
|
activeSmelter,
|
||||||
buildSmelter,
|
buildSmelter,
|
||||||
|
|
Loading…
Add table
Reference in a new issue