just_another_tree/js/mod.js

82 lines
2.3 KiB
JavaScript
Raw Normal View History

2024-03-03 11:53:50 +00:00
let modInfo = {
2024-03-07 17:49:20 +00:00
name: "Progressbar Incremental",
id: "nif/pbic",
author: "Nif",
2024-03-03 11:53:50 +00:00
pointsName: "points",
2024-03-07 17:49:20 +00:00
modFiles: ["levels.js", "progress.js", "tree.js"],
2024-03-03 11:53:50 +00:00
discordName: "",
discordLink: "",
2024-03-07 17:49:20 +00:00
initialStartPoints: new Decimal (1), // Used for hard resets and new players
2024-03-03 11:53:50 +00:00
offlineLimit: 1, // In hours
}
// Set your version in num and name
let VERSION = {
2024-03-07 17:49:20 +00:00
num: "0/a1",
name: "You guys wanted it.",
2024-03-03 11:53:50 +00:00
}
2024-03-07 18:38:17 +00:00
let changelog = `<h1>Changelog:</h1><br><br>
2024-03-07 17:49:20 +00:00
<h3>v0/a1</h3><br>
- Added progress points.<br>
- Added bars Alpha to Epsilon.<br>`
2024-03-03 11:53:50 +00:00
2024-03-07 17:49:20 +00:00
let winText = `Download 100% complete.<br><br>You won! Congratulations!<br>Beyond this point may be unbalanced, proceed with caution!`
2024-03-03 11:53:50 +00:00
// If you add new functions anywhere inside of a layer, and those functions have an effect when called, add them here.
// (The ones here are examples, all official functions are already taken care of)
var doNotCallTheseFunctionsEveryTick = ["blowUpEverything"]
function getStartPoints(){
return new Decimal(modInfo.initialStartPoints)
}
// Determines if it should show points/sec
function canGenPoints(){
2024-03-07 17:49:20 +00:00
return getAlphaLevel().gte(0)
2024-03-03 11:53:50 +00:00
}
// Calculate points/sec!
function getPointGen() {
2024-03-07 17:49:20 +00:00
if(!canGenPoints()) return new Decimal(0)
2024-03-03 11:53:50 +00:00
2024-03-07 17:49:20 +00:00
let gain = getAlphaLevel().div(20)
gain = gain.mul(getBetaLevel().div(20).add(1))
gain = gain.mul(getGammaLevel().div(15).add(1))
2024-03-07 17:57:57 +00:00
gain = gain.mul(getDeltaLevel().div(10).add(1))
gain = gain.pow(getEpsilonLevel().div(40).add(1))
2024-03-03 11:53:50 +00:00
return gain
}
// You can add non-layer related variables that should to into "player" and be saved here, along with default values
function addedPlayerData() { return {
}}
// Display extra things at the top of the page
var displayThings = [
]
// Determines when the game "ends"
function isEndgame() {
return player.points.gte(new Decimal("e280000000"))
}
// Less important things beyond this point!
// Style for the background, can be a function
var backgroundStyle = {
}
// You can change this if you have things that can be messed up by long tick lengths
function maxTickLength() {
return(3600) // Default is 1 hour which is just arbitrarily large
}
// Use this if you need to undo inflation from an older version. If the version is older than the version that fixed the issue,
// you can cap their current resources with this.
function fixOldSave(oldVersion){
}