From ed92c6da2d0c6e836d257ed10ecc6beafbcd7455 Mon Sep 17 00:00:00 2001 From: Acamaeda Date: Thu, 8 Oct 2020 01:33:44 -0400 Subject: [PATCH 1/3] Added midsection feature --- docs/layer-features.md | 11 +++++++---- index.html | 3 +++ js/layers.js | 4 ++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/docs/layer-features.md b/docs/layer-features.md index dc9a117..39e5b34 100644 --- a/docs/layer-features.md +++ b/docs/layer-features.md @@ -42,7 +42,7 @@ Key: - layerShown(): A function returning a bool which determines if this layer's node should be visible on the tree. -- hotkeys: An array containing information on any hotkeys associated with this layer: +- hotkeys: **optional**, An array containing information on any hotkeys associated with this layer: ```js hotkeys: [ {key: "p", // What the hotkey button is. Use uppercase if it's combined with shift, or "ctrl+x" if ctrl is. @@ -51,12 +51,15 @@ Key: ], ``` -- style(): A function returning a CSS object containing any CSS that should affect this layer's whole tab. +- style(): **optional**, a function returning a CSS object containing any CSS that should affect this layer's whole tab. -- tabFormat: Use this if you want to add extra things to your tab or change the layout. +- tabFormat: **optional**, use this if you want to add extra things to your tab or change the layout. [See here for more info.](custom-tab-layouts.md) + +- midsection: **optional**, an alternative to tabFormat, which is inserted in between Milestones and Buyables in the + standard tab layout. (cannot do subtabs) -# Big features +# Big features (all optional) - upgrades: A grid of one-time purchases which can have unique upgrade conditions, currency costs, and bonuses. [Explanations are in a separate file.](upgrades.md) diff --git a/index.html b/index.html index 39b6365..86fcf48 100644 --- a/index.html +++ b/index.html @@ -170,6 +170,9 @@ Your best {{layers[layer].resource}} is {{formatWhole(player[layer].best)}}
You have made a total of {{formatWhole(player[layer].total)}} {{layers[layer].resource}}
+
+ +
diff --git a/js/layers.js b/js/layers.js index cb5cfb3..9e25792 100644 --- a/js/layers.js +++ b/js/layers.js @@ -298,6 +298,10 @@ addLayer("f", { return ("This weird farmer dinosaur will only see you if you have at least " + this.requires() + " candies. You only have " + formatWhole(player.points)) }, + midsection: [ + "blank", ['display-image', 'https://images.beano.com/store/24ab3094eb95e5373bca1ccd6f330d4406db8d1f517fc4170b32e146f80d?auto=compress%2Cformat&dpr=1&w=390'] + ], + // The following are only currently used for "custom" Prestige type: prestigeButtonText() { //Is secretly HTML if (!this.canBuyMax()) return "Hi! I'm a weird dinosaur and I'll give you a Farm Point in exchange for all of your candies and lollipops! (At least " + formatWhole(tmp.nextAt[layer]) + " candies)" From 45ebf4c002f2b600715d5aa1a8c3c1bdb53f881c Mon Sep 17 00:00:00 2001 From: Acamaeda Date: Thu, 8 Oct 2020 01:38:08 -0400 Subject: [PATCH 2/3] Fixed text on the farm button, and added a special message --- js/layers.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/js/layers.js b/js/layers.js index 9e25792..52be58a 100644 --- a/js/layers.js +++ b/js/layers.js @@ -299,13 +299,14 @@ addLayer("f", { }, midsection: [ - "blank", ['display-image', 'https://images.beano.com/store/24ab3094eb95e5373bca1ccd6f330d4406db8d1f517fc4170b32e146f80d?auto=compress%2Cformat&dpr=1&w=390'] + "blank", ['display-image', 'https://images.beano.com/store/24ab3094eb95e5373bca1ccd6f330d4406db8d1f517fc4170b32e146f80d?auto=compress%2Cformat&dpr=1&w=390'], + ["display-text", "Bork bork!"] ], // The following are only currently used for "custom" Prestige type: prestigeButtonText() { //Is secretly HTML if (!this.canBuyMax()) return "Hi! I'm a weird dinosaur and I'll give you a Farm Point in exchange for all of your candies and lollipops! (At least " + formatWhole(tmp.nextAt[layer]) + " candies)" - if (this.canBuyMax()) return "Hi! I'm a weird dinosaur and I'll give you " + formatWhole(tmp.resetGain[this.layer]) + " Farm Points in exchange for all of your candies and lollipops! (You'll get another one at " + format(tmp.nextAt[layer]) + " candies)" + if (this.canBuyMax()) return "Hi! I'm a weird dinosaur and I'll give you " + formatWhole(tmp.resetGain[this.layer]) + " Farm Points in exchange for all of your candies and lollipops! (You'll get another one at " + formatWhole(tmp.nextAtDisp[layer]) + " candies)" }, getResetGain() { return getResetGain(this.layer, useType = "static") From 1ae02a4328e66afe3077eb68bbb0a845b5a81eea Mon Sep 17 00:00:00 2001 From: Acamaeda Date: Thu, 8 Oct 2020 15:10:15 -0400 Subject: [PATCH 3/3] Fixed being able to buy more buyables than you should. --- changelog.md | 5 +++++ js/game.js | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/changelog.md b/changelog.md index ab396df..e0891f3 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,10 @@ #The Modding Tree changelog: + +##v1.3.4: 10/8/20 +- Added "midsection" feature to add things to a tab's layout while still keeping the standard layout. +- Fix for being able to buy more buyables than you should. + ##v1.3.3: - 10/7/20 - Fix for the "order of operations" issue in temp. diff --git a/js/game.js b/js/game.js index a1c10b0..e34d7da 100644 --- a/js/game.js +++ b/js/game.js @@ -229,6 +229,7 @@ function respecBuyables(layer) { if (!layers[layer].buyables.respec) return if (!confirm("Are you sure you want to respec? This will force you to do a \"" + (layers[layer].name ? layers[layer].name : layer) + "\" reset as well!")) return layers[layer].buyables.respec() + updateBuyableTemp(layer) } function canAffordUpg(layer, id) { @@ -305,12 +306,23 @@ function buyUpg(layer, id) { upg.onPurchase() } +function buyMaxBuyable(layer, id) { + if (!player[layer].unl) return + if (!tmp.buyables[layer][id].unl) return + if (!tmp.buyables[layer][id].canAfford) return + if (!layers[layer].buyables[id].buyMax) return + + layers[layer].buyables[id].buyMax() + updateBuyableTemp(layer) +} + function buyBuyable(layer, id) { if (!player[layer].unl) return if (!tmp.buyables[layer][id].unl) return if (!tmp.buyables[layer][id].canAfford) return layers[layer].buyables[id].buy() + updateBuyableTemp(layer) } function resetRow(row) {