mirror of
https://github.com/Acamaeda/The-Modding-Tree.git
synced 2024-11-24 01:11:46 +00:00
Added drop-down
This commit is contained in:
parent
cd71349fd5
commit
e7b0af397d
9 changed files with 30 additions and 11 deletions
|
@ -1,7 +1,9 @@
|
||||||
# The Modding Tree changelog:
|
# The Modding Tree changelog:
|
||||||
|
|
||||||
### v2.5.12 - 6/2/21
|
### v2.6 - 6/2/21
|
||||||
- Fixed issues with NaN checking. Saves should never break now unless something really unusual happens.
|
- Fixed issues with NaN checking. Saves should never break now unless something really unusual happens.
|
||||||
|
- Added a drop-down menu component!
|
||||||
|
- Options are now saved separately, and not affected by hard resetting or importing saves.
|
||||||
- Fixed demo.html
|
- Fixed demo.html
|
||||||
- Fixed branches not working on the right tab.
|
- Fixed branches not working on the right tab.
|
||||||
- Fixed background color not working on the left tab.
|
- Fixed background color not working on the left tab.
|
||||||
|
@ -13,6 +15,7 @@
|
||||||
- resetsNothing now works immediately on a reset that enables it.
|
- resetsNothing now works immediately on a reset that enables it.
|
||||||
- Made the star on maxed challenges larger.
|
- Made the star on maxed challenges larger.
|
||||||
|
|
||||||
|
- diff can no longer be negative.
|
||||||
- Fixed challenges with no currencyDisplayName using "points" instead of the mod's pointsName.
|
- Fixed challenges with no currencyDisplayName using "points" instead of the mod's pointsName.
|
||||||
- inChallenge no longer can return undefined.
|
- inChallenge no longer can return undefined.
|
||||||
- Fixed certain things skipping negative rows (now they are treated like non-numeric rows, and don't appear in the tree still).
|
- Fixed certain things skipping negative rows (now they are treated like non-numeric rows, and don't appear in the tree still).
|
||||||
|
|
|
@ -126,6 +126,5 @@
|
||||||
<bg :layer="player.tab" ></bg>
|
<bg :layer="player.tab" ></bg>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="bg2"></div>
|
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
|
@ -45,9 +45,12 @@ These are the existing components, but you can create more in [components.js](/j
|
||||||
(Works with strings, numbers, and Decimals!)
|
(Works with strings, numbers, and Decimals!)
|
||||||
|
|
||||||
- slider: Lets the user input a value with a slider. The argument a 3-element array: [name, min, max].
|
- slider: Lets the user input a value with a slider. The argument a 3-element array: [name, min, max].
|
||||||
The name is the name of the variable in player[layer] that the input that the input is for, and min and max are the limits of the slider.
|
The name is the name of the variable in player[layer] that the input is for, and min and max are the limits of the slider.
|
||||||
(Does not work for Decimal values)
|
(Does not work for Decimal values)
|
||||||
|
|
||||||
|
- drop-down: Lets the user input a value with a dropdown menu. The argument a 2-element array: [name, options].
|
||||||
|
The name is the name of the variable in player[layer] that the input is for, and options is an array of strings for options you can use.
|
||||||
|
|
||||||
- upgrades: The layer's upgrades. The argument is optional, and is a the list of rows this component should include, if it doesn't have all of them.
|
- upgrades: The layer's upgrades. The argument is optional, and is a the list of rows this component should include, if it doesn't have all of them.
|
||||||
|
|
||||||
- milestones, challenges, achievements: Display the upgrades, milestones, and challenges for a layer, as appropriate.
|
- milestones, challenges, achievements: Display the upgrades, milestones, and challenges for a layer, as appropriate.
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
Grids are an easier way of making a group of similar clickables. They all have the same behavior, but are different based on their data.
|
Grids are an easier way of making a group of similar clickables. They all have the same behavior, but are different based on their data.
|
||||||
|
|
||||||
**NOTE: Gridables are similar to clickables in some respects, but are fundamentally different from normal TMT components in quite a few ways. Be sure to keep these in mind:**
|
**NOTE: Gridables are similar to clickables in some respects, but are fundamentally different from normal TMT Big Features in quite a few ways. Be sure to keep these in mind:**
|
||||||
- Gridable ids use base 100 instead of base 10, so you can have more than 10 tiles in a row. This means that a grid might look like this:
|
- Gridable ids use base 100 instead of base 10, so you can have more than 10 tiles in a row. This means that a grid might look like this:
|
||||||
101 102
|
101 102
|
||||||
201 202
|
201 202
|
||||||
|
|
|
@ -98,7 +98,7 @@
|
||||||
<overlay-head id="fakeHead" style="visibility: hidden;">
|
<overlay-head id="fakeHead" style="visibility: hidden;">
|
||||||
</overlay-head>
|
</overlay-head>
|
||||||
<layer-tab :layer="player.navTab == 'none' ? player.tab : player.navTab" :key="'left'"></layer-tab>
|
<layer-tab :layer="player.navTab == 'none' ? player.tab : player.navTab" :key="'left'"></layer-tab>
|
||||||
|
<bg :layer="player.navTab == 'none' ? player.tab : player.navTab" ></bg>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Popups -->
|
<!-- Popups -->
|
||||||
|
@ -117,12 +117,14 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="player.navTab !== 'none' && player.tab !== 'none' && !(gameEnded && !player.keepGoing)" onscroll="resizeCanvas()" style="background-color:var(--background)" v-bind:class="{ fullWidth: player.navTab == 'none' || !tmp.other.splitScreen || !readData(layoutInfo.showTree), col: player.navTab != 'none', right: player.navTab != 'none', fast: true, tab: true}">
|
<div v-if="player.navTab !== 'none' && player.tab !== 'none' && !(gameEnded && !player.keepGoing)" onscroll="resizeCanvas()" v-bind:class="{ fullWidth: player.navTab == 'none' || !tmp.other.splitScreen || !readData(layoutInfo.showTree), col: player.navTab != 'none', right: player.navTab != 'none', fast: true, tab: true}">
|
||||||
<div v-for="layer in LAYERS">
|
<div v-for="layer in LAYERS">
|
||||||
<div v-if="player.tab==layer">
|
<div v-if="player.tab==layer">
|
||||||
<layer-tab :layer="layer" :back="'none'" :spacing="'50px'" :key="'left'"></layer-tab>
|
<layer-tab :layer="layer" :back="'none'" :spacing="'50px'" :key="'left'"></layer-tab>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<bg :layer="player.tab" ></bg>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
|
@ -15,6 +15,7 @@ addLayer("c", {
|
||||||
beep: false,
|
beep: false,
|
||||||
thingy: "pointy",
|
thingy: "pointy",
|
||||||
otherThingy: 10,
|
otherThingy: 10,
|
||||||
|
drop: "drip",
|
||||||
}},
|
}},
|
||||||
color: "#4BDC13",
|
color: "#4BDC13",
|
||||||
requires: new Decimal(10), // Can be a function that takes requirement increases into account
|
requires: new Decimal(10), // Can be a function that takes requirement increases into account
|
||||||
|
@ -221,7 +222,7 @@ addLayer("c", {
|
||||||
microtabs: {
|
microtabs: {
|
||||||
stuff: {
|
stuff: {
|
||||||
first: {
|
first: {
|
||||||
content: ["upgrades", ["display-text", function() {return "confirmed"}]]
|
content: ["upgrades", ["display-text", function() {return "confirmed<br>" + player.c.drop}], ["drop-down", ["drop", ["drip", "drop"]]]]
|
||||||
},
|
},
|
||||||
second: {
|
second: {
|
||||||
embedLayer: "f",
|
embedLayer: "f",
|
||||||
|
|
|
@ -11,7 +11,7 @@ let modInfo = {
|
||||||
|
|
||||||
// Set your version in num and name
|
// Set your version in num and name
|
||||||
let VERSION = {
|
let VERSION = {
|
||||||
num: "2.5.12",
|
num: "2.6",
|
||||||
name: "Dreams Really Do Come True",
|
name: "Dreams Really Do Come True",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -515,7 +515,7 @@ function loadVue() {
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
|
|
||||||
// Updates the value in player[layer][data]
|
// Updates the value in player[layer][data][0]
|
||||||
Vue.component('slider', {
|
Vue.component('slider', {
|
||||||
props: ['layer', 'data'],
|
props: ['layer', 'data'],
|
||||||
template: `
|
template: `
|
||||||
|
@ -524,6 +524,15 @@ function loadVue() {
|
||||||
`
|
`
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// Updates the value in player[layer][data[0]], options are an array in data[1]
|
||||||
|
Vue.component('drop-down', {
|
||||||
|
props: ['layer', 'data'],
|
||||||
|
template: `
|
||||||
|
<select v-model="player[layer][data[0]]">
|
||||||
|
<option v-for="item in data[1]" v-bind:value="item">{{item}}</option>
|
||||||
|
</select>
|
||||||
|
`
|
||||||
|
})
|
||||||
// These are for buyables, data is the id of the corresponding buyable
|
// These are for buyables, data is the id of the corresponding buyable
|
||||||
Vue.component('sell-one', {
|
Vue.component('sell-one', {
|
||||||
props: ['layer', 'data'],
|
props: ['layer', 'data'],
|
||||||
|
@ -599,6 +608,8 @@ function loadVue() {
|
||||||
mouseY,
|
mouseY,
|
||||||
shiftDown,
|
shiftDown,
|
||||||
ctrlDown,
|
ctrlDown,
|
||||||
|
run,
|
||||||
|
gridRun,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@ var gameEnded = false;
|
||||||
|
|
||||||
// Don't change this
|
// Don't change this
|
||||||
const TMT_VERSION = {
|
const TMT_VERSION = {
|
||||||
tmtNum: "2.5.12",
|
tmtNum: "2.6",
|
||||||
tmtName: "Dreams Really Do Come True"
|
tmtName: "Dreams Really Do Come True"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -333,7 +333,7 @@ function gameLoop(diff) {
|
||||||
clearParticles()
|
clearParticles()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isNaN(diff)) diff = 0
|
if (isNaN(diff) || diff < 0) diff = 0
|
||||||
if (gameEnded && !player.keepGoing) {
|
if (gameEnded && !player.keepGoing) {
|
||||||
diff = 0
|
diff = 0
|
||||||
//player.tab = "gameEnded"
|
//player.tab = "gameEnded"
|
||||||
|
|
Loading…
Reference in a new issue