Merge pull request #912 from CookieMonsterTeam/dev
Bump master to 2.031.10
This commit is contained in:
13
.github/workflows/CI.yml
vendored
13
.github/workflows/CI.yml
vendored
@@ -24,19 +24,20 @@ jobs:
|
||||
run: npx mocha
|
||||
- name: Check if CookieMonsterDev.js is built correctly
|
||||
run: |
|
||||
npx webpack -o ./tmp --env production
|
||||
npx webpack -o ./tmp --env minimize
|
||||
if cmp <(head -n 2 dist/CookieMonsterDev.js) <(head -n 2 tmp/CookieMonsterDev.js); then
|
||||
echo '### SUCCESS: CookieMonsterDev is correctly built! ###'
|
||||
echo '### SUCCESS: CookieMonsterDev is built correctly! ###'
|
||||
else
|
||||
echo '### WARNING: CookieMonsterDev.js does not seem to be correct. Make sure to run "npm run build" after saving all your changes! ###'
|
||||
echo '### WARNING: CookieMonsterDev.js does not seem to be correct. Make sure to run "npm run build-dev" after saving all your changes! ###'
|
||||
exit 1
|
||||
fi
|
||||
- name: Check if CookieMonster.js is built correctly
|
||||
if: github.ref == 'refs/heads/master'
|
||||
run: |
|
||||
if cmp <(head -n 2 dist/CookieMonsterDev.js) <(head -n 2 dist/CookieMonster.js); then
|
||||
echo '### SUCCESS: CookieMonster is correctly built! ###'
|
||||
npx webpack -o ./tmp --env minimize --env finalfile
|
||||
if cmp <(head -n 2 dist/CookieMonster.js) <(head -n 2 tmp/CookieMonster.js); then
|
||||
echo '### SUCCESS: CookieMonster is built correctly! ###'
|
||||
else
|
||||
echo '### WARNING: CookieMonster.js does not seem to be correct. Make sure to copy CookieMonsterDev.js into CookieMonster.js before merging to master! ###'
|
||||
echo '### WARNING: CookieMonster.js does not seem to be correct. Make sure to run "npm run build-final" after saving all your changes! ###'
|
||||
exit 1
|
||||
fi
|
||||
@@ -74,9 +74,9 @@ Currently we exposes relevant data for buildings and upgrades (PP, colour and bo
|
||||
|
||||
To contribute you can fork and clone the repository and run `npm install`. Note that you will need to authenticate to the GitHub Package Registery (see [this documentation](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-npm-registry#authenticating-to-github-packages)). After creating a Public Access Token you should export this variable to $GITHUB_REGISTERY_PAT as defined in `.npmrc`.
|
||||
|
||||
Please also remember to run `npm run build` after saving all your changes to build the final `CookieMonsterDev.js` file.
|
||||
Please also remember to run `npm run build-dev` after saving all your changes to build the final `CookieMonsterDev.js` file.
|
||||
|
||||
Before pushing a new version to master and Github pages copy the `Dev` files into the normal files.
|
||||
Before pushing a new version to `main` and Github pages use the `build-final` command to build the final file.
|
||||
|
||||
## Contributors
|
||||
|
||||
|
||||
6
dist/CookieMonster.js
vendored
6
dist/CookieMonster.js
vendored
File diff suppressed because one or more lines are too long
2
dist/CookieMonster.js.map
vendored
2
dist/CookieMonster.js.map
vendored
File diff suppressed because one or more lines are too long
2
dist/CookieMonsterDev.js
vendored
2
dist/CookieMonsterDev.js
vendored
File diff suppressed because one or more lines are too long
2
dist/CookieMonsterDev.js.map
vendored
2
dist/CookieMonsterDev.js.map
vendored
File diff suppressed because one or more lines are too long
272
package-lock.json
generated
272
package-lock.json
generated
@@ -1,22 +1,22 @@
|
||||
{
|
||||
"name": "cookiemonster-mod",
|
||||
"version": "2.031.7",
|
||||
"version": "2.031.9",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "cookiemonster-mod",
|
||||
"version": "2.031.7",
|
||||
"version": "2.031.9",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@cookiemonsterteam/cookiemonsterframework": "^0.2.0",
|
||||
"@cookiemonsterteam/cookiemonsterframework": "^0.2.1",
|
||||
"@eastdesire/jscolor": "^2.4.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/chai": "^4.2.19",
|
||||
"@types/mocha": "^8.2.2",
|
||||
"@typescript-eslint/eslint-plugin": "^4.28.3",
|
||||
"@typescript-eslint/parser": "^4.28.3",
|
||||
"@types/mocha": "^9.0.0",
|
||||
"@typescript-eslint/eslint-plugin": "^4.28.4",
|
||||
"@typescript-eslint/parser": "^4.28.4",
|
||||
"chai": "^4.3.4",
|
||||
"eslint": "^7.31.0",
|
||||
"eslint-config-airbnb-base": "^14.2.1",
|
||||
@@ -43,9 +43,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/helper-validator-identifier": {
|
||||
"version": "7.14.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz",
|
||||
"integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==",
|
||||
"version": "7.14.8",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz",
|
||||
"integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
@@ -137,9 +137,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@cookiemonsterteam/cookiemonsterframework": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://npm.pkg.github.com/download/@cookiemonsterteam/cookiemonsterframework/0.2.0/0e38bd032c0746e1bb52446ac51217a2dc8460eda6fddba4b804450ead7306e8",
|
||||
"integrity": "sha512-xezyE14jwE1jIe+Rkmk7TD+gJECTypfW7OMs1hVXvQ4CrjkkmsTQj44eA2mAyTnP2tTPBj6RYVq7cty/KlRTDw==",
|
||||
"version": "0.2.1",
|
||||
"resolved": "https://npm.pkg.github.com/download/@cookiemonsterteam/cookiemonsterframework/0.2.1/ecdb3353590590a95d3cafa98a1e11c36ee877089a669129f43a6de45599c0fa",
|
||||
"integrity": "sha512-WwwFN7EZ1eYYj7+DpW2XOoaQewGP95l9WPsGeNDClW6Q9n1v2AKVgTTiBytcsccnyDZQpdmvXewnrvBvyI7JbQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@eastdesire/jscolor": "^2.4.5"
|
||||
@@ -253,9 +253,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@tsconfig/node16": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.1.tgz",
|
||||
"integrity": "sha512-FTgBI767POY/lKNDNbIzgAX6miIDBs6NTCbdlDb8TrWovHsSvaVIZDlTqym29C6UqhzwcJx4CYr+AlrMywA0cA==",
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz",
|
||||
"integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/chai": {
|
||||
@@ -297,25 +297,25 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/mocha": {
|
||||
"version": "8.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
|
||||
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.0.0.tgz",
|
||||
"integrity": "sha512-scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "16.3.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.3.3.tgz",
|
||||
"integrity": "sha512-8h7k1YgQKxKXWckzFCMfsIwn0Y61UK6tlD6y2lOb3hTOIMlK3t9/QwHOhc81TwU+RMf0As5fj7NPjroERCnejQ==",
|
||||
"version": "16.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.4.0.tgz",
|
||||
"integrity": "sha512-HrJuE7Mlqcjj+00JqMWpZ3tY8w7EUd+S0U3L1+PQSWiXZbOgyQDvi+ogoUxaHApPJq5diKxYBQwA3iIlNcPqOg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@typescript-eslint/eslint-plugin": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.3.tgz",
|
||||
"integrity": "sha512-jW8sEFu1ZeaV8xzwsfi6Vgtty2jf7/lJmQmDkDruBjYAbx5DA8JtbcMnP0rNPUG+oH5GoQBTSp+9613BzuIpYg==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.4.tgz",
|
||||
"integrity": "sha512-s1oY4RmYDlWMlcV0kKPBaADn46JirZzvvH7c2CtAqxCY96S538JRBAzt83RrfkDheV/+G/vWNK0zek+8TB3Gmw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@typescript-eslint/experimental-utils": "4.28.3",
|
||||
"@typescript-eslint/scope-manager": "4.28.3",
|
||||
"@typescript-eslint/experimental-utils": "4.28.4",
|
||||
"@typescript-eslint/scope-manager": "4.28.4",
|
||||
"debug": "^4.3.1",
|
||||
"functional-red-black-tree": "^1.0.1",
|
||||
"regexpp": "^3.1.0",
|
||||
@@ -340,15 +340,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@typescript-eslint/experimental-utils": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.3.tgz",
|
||||
"integrity": "sha512-zZYl9TnrxwEPi3FbyeX0ZnE8Hp7j3OCR+ELoUfbwGHGxWnHg9+OqSmkw2MoCVpZksPCZYpQzC559Ee9pJNHTQw==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.4.tgz",
|
||||
"integrity": "sha512-OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/json-schema": "^7.0.7",
|
||||
"@typescript-eslint/scope-manager": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/typescript-estree": "4.28.3",
|
||||
"@typescript-eslint/scope-manager": "4.28.4",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/typescript-estree": "4.28.4",
|
||||
"eslint-scope": "^5.1.1",
|
||||
"eslint-utils": "^3.0.0"
|
||||
},
|
||||
@@ -364,14 +364,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@typescript-eslint/parser": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.3.tgz",
|
||||
"integrity": "sha512-ZyWEn34bJexn/JNYvLQab0Mo5e+qqQNhknxmc8azgNd4XqspVYR5oHq9O11fLwdZMRcj4by15ghSlIEq+H5ltQ==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.4.tgz",
|
||||
"integrity": "sha512-4i0jq3C6n+og7/uCHiE6q5ssw87zVdpUj1k6VlVYMonE3ILdFApEzTWgppSRG4kVNB/5jxnH+gTeKLMNfUelQA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@typescript-eslint/scope-manager": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/typescript-estree": "4.28.3",
|
||||
"@typescript-eslint/scope-manager": "4.28.4",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/typescript-estree": "4.28.4",
|
||||
"debug": "^4.3.1"
|
||||
},
|
||||
"engines": {
|
||||
@@ -391,13 +391,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@typescript-eslint/scope-manager": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.3.tgz",
|
||||
"integrity": "sha512-/8lMisZ5NGIzGtJB+QizQ5eX4Xd8uxedFfMBXOKuJGP0oaBBVEMbJVddQKDXyyB0bPlmt8i6bHV89KbwOelJiQ==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.4.tgz",
|
||||
"integrity": "sha512-ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/visitor-keys": "4.28.3"
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/visitor-keys": "4.28.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^8.10.0 || ^10.13.0 || >=11.10.1"
|
||||
@@ -408,9 +408,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@typescript-eslint/types": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.3.tgz",
|
||||
"integrity": "sha512-kQFaEsQBQVtA9VGVyciyTbIg7S3WoKHNuOp/UF5RG40900KtGqfoiETWD/v0lzRXc+euVE9NXmfer9dLkUJrkA==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.4.tgz",
|
||||
"integrity": "sha512-3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": "^8.10.0 || ^10.13.0 || >=11.10.1"
|
||||
@@ -421,13 +421,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@typescript-eslint/typescript-estree": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.3.tgz",
|
||||
"integrity": "sha512-YAb1JED41kJsqCQt1NcnX5ZdTA93vKFCMP4lQYG6CFxd0VzDJcKttRlMrlG+1qiWAw8+zowmHU1H0OzjWJzR2w==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.4.tgz",
|
||||
"integrity": "sha512-z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/visitor-keys": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/visitor-keys": "4.28.4",
|
||||
"debug": "^4.3.1",
|
||||
"globby": "^11.0.3",
|
||||
"is-glob": "^4.0.1",
|
||||
@@ -448,12 +448,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@typescript-eslint/visitor-keys": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.3.tgz",
|
||||
"integrity": "sha512-ri1OzcLnk1HH4gORmr1dllxDzzrN6goUIz/P4MHFV0YZJDCADPR3RvYNp0PW2SetKTThar6wlbFTL00hV2Q+fg==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.4.tgz",
|
||||
"integrity": "sha512-NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"eslint-visitor-keys": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
@@ -941,9 +941,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/caniuse-lite": {
|
||||
"version": "1.0.30001245",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz",
|
||||
"integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==",
|
||||
"version": "1.0.30001246",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz",
|
||||
"integrity": "sha512-Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==",
|
||||
"dev": true,
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
@@ -1202,9 +1202,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/electron-to-chromium": {
|
||||
"version": "1.3.779",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz",
|
||||
"integrity": "sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==",
|
||||
"version": "1.3.784",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.784.tgz",
|
||||
"integrity": "sha512-JTPxdUibkefeomWNaYs8lI/x/Zb4cOhZWX+d7kpzsNKzUd07pNuo/AcHeNJ/qgEchxM1IAxda9aaGUhKN/poOg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/emoji-regex": {
|
||||
@@ -3552,9 +3552,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/rechoir": {
|
||||
"version": "0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz",
|
||||
"integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==",
|
||||
"version": "0.7.1",
|
||||
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
|
||||
"integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"resolve": "^1.9.0"
|
||||
@@ -4333,9 +4333,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/webpack": {
|
||||
"version": "5.45.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.45.1.tgz",
|
||||
"integrity": "sha512-68VT2ZgG9EHs6h6UxfV2SEYewA9BA3SOLSnC2NEbJJiEwbAiueDL033R1xX0jzjmXvMh0oSeKnKgbO2bDXIEyQ==",
|
||||
"version": "5.46.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.46.0.tgz",
|
||||
"integrity": "sha512-qxD0t/KTedJbpcXUmvMxY5PUvXDbF8LsThCzqomeGaDlCA6k998D8yYVwZMvO8sSM3BTEOaD4uzFniwpHaTIJw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/eslint-scope": "^3.7.0",
|
||||
@@ -4360,7 +4360,7 @@
|
||||
"tapable": "^2.1.1",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"watchpack": "^2.2.0",
|
||||
"webpack-sources": "^2.3.0"
|
||||
"webpack-sources": "^2.3.1"
|
||||
},
|
||||
"bin": {
|
||||
"webpack": "bin/webpack.js"
|
||||
@@ -4445,9 +4445,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/webpack-sources": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz",
|
||||
"integrity": "sha512-WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==",
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz",
|
||||
"integrity": "sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"source-list-map": "^2.0.1",
|
||||
@@ -4686,9 +4686,9 @@
|
||||
}
|
||||
},
|
||||
"@babel/helper-validator-identifier": {
|
||||
"version": "7.14.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz",
|
||||
"integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==",
|
||||
"version": "7.14.8",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz",
|
||||
"integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/highlight": {
|
||||
@@ -4761,9 +4761,9 @@
|
||||
}
|
||||
},
|
||||
"@cookiemonsterteam/cookiemonsterframework": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://npm.pkg.github.com/download/@cookiemonsterteam/cookiemonsterframework/0.2.0/0e38bd032c0746e1bb52446ac51217a2dc8460eda6fddba4b804450ead7306e8",
|
||||
"integrity": "sha512-xezyE14jwE1jIe+Rkmk7TD+gJECTypfW7OMs1hVXvQ4CrjkkmsTQj44eA2mAyTnP2tTPBj6RYVq7cty/KlRTDw==",
|
||||
"version": "0.2.1",
|
||||
"resolved": "https://npm.pkg.github.com/download/@cookiemonsterteam/cookiemonsterframework/0.2.1/ecdb3353590590a95d3cafa98a1e11c36ee877089a669129f43a6de45599c0fa",
|
||||
"integrity": "sha512-WwwFN7EZ1eYYj7+DpW2XOoaQewGP95l9WPsGeNDClW6Q9n1v2AKVgTTiBytcsccnyDZQpdmvXewnrvBvyI7JbQ==",
|
||||
"requires": {
|
||||
"@eastdesire/jscolor": "^2.4.5"
|
||||
}
|
||||
@@ -4858,9 +4858,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"@tsconfig/node16": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.1.tgz",
|
||||
"integrity": "sha512-FTgBI767POY/lKNDNbIzgAX6miIDBs6NTCbdlDb8TrWovHsSvaVIZDlTqym29C6UqhzwcJx4CYr+AlrMywA0cA==",
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz",
|
||||
"integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/chai": {
|
||||
@@ -4902,25 +4902,25 @@
|
||||
"dev": true
|
||||
},
|
||||
"@types/mocha": {
|
||||
"version": "8.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
|
||||
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.0.0.tgz",
|
||||
"integrity": "sha512-scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/node": {
|
||||
"version": "16.3.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.3.3.tgz",
|
||||
"integrity": "sha512-8h7k1YgQKxKXWckzFCMfsIwn0Y61UK6tlD6y2lOb3hTOIMlK3t9/QwHOhc81TwU+RMf0As5fj7NPjroERCnejQ==",
|
||||
"version": "16.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.4.0.tgz",
|
||||
"integrity": "sha512-HrJuE7Mlqcjj+00JqMWpZ3tY8w7EUd+S0U3L1+PQSWiXZbOgyQDvi+ogoUxaHApPJq5diKxYBQwA3iIlNcPqOg==",
|
||||
"dev": true
|
||||
},
|
||||
"@typescript-eslint/eslint-plugin": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.3.tgz",
|
||||
"integrity": "sha512-jW8sEFu1ZeaV8xzwsfi6Vgtty2jf7/lJmQmDkDruBjYAbx5DA8JtbcMnP0rNPUG+oH5GoQBTSp+9613BzuIpYg==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.4.tgz",
|
||||
"integrity": "sha512-s1oY4RmYDlWMlcV0kKPBaADn46JirZzvvH7c2CtAqxCY96S538JRBAzt83RrfkDheV/+G/vWNK0zek+8TB3Gmw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@typescript-eslint/experimental-utils": "4.28.3",
|
||||
"@typescript-eslint/scope-manager": "4.28.3",
|
||||
"@typescript-eslint/experimental-utils": "4.28.4",
|
||||
"@typescript-eslint/scope-manager": "4.28.4",
|
||||
"debug": "^4.3.1",
|
||||
"functional-red-black-tree": "^1.0.1",
|
||||
"regexpp": "^3.1.0",
|
||||
@@ -4929,55 +4929,55 @@
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/experimental-utils": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.3.tgz",
|
||||
"integrity": "sha512-zZYl9TnrxwEPi3FbyeX0ZnE8Hp7j3OCR+ELoUfbwGHGxWnHg9+OqSmkw2MoCVpZksPCZYpQzC559Ee9pJNHTQw==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.4.tgz",
|
||||
"integrity": "sha512-OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/json-schema": "^7.0.7",
|
||||
"@typescript-eslint/scope-manager": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/typescript-estree": "4.28.3",
|
||||
"@typescript-eslint/scope-manager": "4.28.4",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/typescript-estree": "4.28.4",
|
||||
"eslint-scope": "^5.1.1",
|
||||
"eslint-utils": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/parser": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.3.tgz",
|
||||
"integrity": "sha512-ZyWEn34bJexn/JNYvLQab0Mo5e+qqQNhknxmc8azgNd4XqspVYR5oHq9O11fLwdZMRcj4by15ghSlIEq+H5ltQ==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.4.tgz",
|
||||
"integrity": "sha512-4i0jq3C6n+og7/uCHiE6q5ssw87zVdpUj1k6VlVYMonE3ILdFApEzTWgppSRG4kVNB/5jxnH+gTeKLMNfUelQA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@typescript-eslint/scope-manager": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/typescript-estree": "4.28.3",
|
||||
"@typescript-eslint/scope-manager": "4.28.4",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/typescript-estree": "4.28.4",
|
||||
"debug": "^4.3.1"
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/scope-manager": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.3.tgz",
|
||||
"integrity": "sha512-/8lMisZ5NGIzGtJB+QizQ5eX4Xd8uxedFfMBXOKuJGP0oaBBVEMbJVddQKDXyyB0bPlmt8i6bHV89KbwOelJiQ==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.4.tgz",
|
||||
"integrity": "sha512-ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/visitor-keys": "4.28.3"
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/visitor-keys": "4.28.4"
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/types": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.3.tgz",
|
||||
"integrity": "sha512-kQFaEsQBQVtA9VGVyciyTbIg7S3WoKHNuOp/UF5RG40900KtGqfoiETWD/v0lzRXc+euVE9NXmfer9dLkUJrkA==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.4.tgz",
|
||||
"integrity": "sha512-3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==",
|
||||
"dev": true
|
||||
},
|
||||
"@typescript-eslint/typescript-estree": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.3.tgz",
|
||||
"integrity": "sha512-YAb1JED41kJsqCQt1NcnX5ZdTA93vKFCMP4lQYG6CFxd0VzDJcKttRlMrlG+1qiWAw8+zowmHU1H0OzjWJzR2w==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.4.tgz",
|
||||
"integrity": "sha512-z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/visitor-keys": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"@typescript-eslint/visitor-keys": "4.28.4",
|
||||
"debug": "^4.3.1",
|
||||
"globby": "^11.0.3",
|
||||
"is-glob": "^4.0.1",
|
||||
@@ -4986,12 +4986,12 @@
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/visitor-keys": {
|
||||
"version": "4.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.3.tgz",
|
||||
"integrity": "sha512-ri1OzcLnk1HH4gORmr1dllxDzzrN6goUIz/P4MHFV0YZJDCADPR3RvYNp0PW2SetKTThar6wlbFTL00hV2Q+fg==",
|
||||
"version": "4.28.4",
|
||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.4.tgz",
|
||||
"integrity": "sha512-NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@typescript-eslint/types": "4.28.3",
|
||||
"@typescript-eslint/types": "4.28.4",
|
||||
"eslint-visitor-keys": "^2.0.0"
|
||||
}
|
||||
},
|
||||
@@ -5381,9 +5381,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"caniuse-lite": {
|
||||
"version": "1.0.30001245",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz",
|
||||
"integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==",
|
||||
"version": "1.0.30001246",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz",
|
||||
"integrity": "sha512-Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==",
|
||||
"dev": true
|
||||
},
|
||||
"chai": {
|
||||
@@ -5580,9 +5580,9 @@
|
||||
}
|
||||
},
|
||||
"electron-to-chromium": {
|
||||
"version": "1.3.779",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz",
|
||||
"integrity": "sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==",
|
||||
"version": "1.3.784",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.784.tgz",
|
||||
"integrity": "sha512-JTPxdUibkefeomWNaYs8lI/x/Zb4cOhZWX+d7kpzsNKzUd07pNuo/AcHeNJ/qgEchxM1IAxda9aaGUhKN/poOg==",
|
||||
"dev": true
|
||||
},
|
||||
"emoji-regex": {
|
||||
@@ -7322,9 +7322,9 @@
|
||||
}
|
||||
},
|
||||
"rechoir": {
|
||||
"version": "0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz",
|
||||
"integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==",
|
||||
"version": "0.7.1",
|
||||
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
|
||||
"integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"resolve": "^1.9.0"
|
||||
@@ -7878,9 +7878,9 @@
|
||||
}
|
||||
},
|
||||
"webpack": {
|
||||
"version": "5.45.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.45.1.tgz",
|
||||
"integrity": "sha512-68VT2ZgG9EHs6h6UxfV2SEYewA9BA3SOLSnC2NEbJJiEwbAiueDL033R1xX0jzjmXvMh0oSeKnKgbO2bDXIEyQ==",
|
||||
"version": "5.46.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.46.0.tgz",
|
||||
"integrity": "sha512-qxD0t/KTedJbpcXUmvMxY5PUvXDbF8LsThCzqomeGaDlCA6k998D8yYVwZMvO8sSM3BTEOaD4uzFniwpHaTIJw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/eslint-scope": "^3.7.0",
|
||||
@@ -7905,7 +7905,7 @@
|
||||
"tapable": "^2.1.1",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"watchpack": "^2.2.0",
|
||||
"webpack-sources": "^2.3.0"
|
||||
"webpack-sources": "^2.3.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"acorn": {
|
||||
@@ -7956,9 +7956,9 @@
|
||||
}
|
||||
},
|
||||
"webpack-sources": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz",
|
||||
"integrity": "sha512-WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==",
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz",
|
||||
"integrity": "sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"source-list-map": "^2.0.1",
|
||||
|
||||
23
package.json
23
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "cookiemonster-mod",
|
||||
"version": "2.031.7",
|
||||
"name": "@cookiemonsterteam/cookiemonster-mod",
|
||||
"version": "2.031.10",
|
||||
"description": "Cookie Monster is an add-on that you can load into Cookie Clicker which offers a wide range of tools and statistics to enhance the game. It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want. This is a helper and everything is an option.",
|
||||
"main": "CookieMonster.js",
|
||||
"keywords": [
|
||||
@@ -11,11 +11,12 @@
|
||||
"Orteil"
|
||||
],
|
||||
"scripts": {
|
||||
"eslint-src": "eslint src test",
|
||||
"build": "run-s eslint-src test pack-prod",
|
||||
"build-test": "run-s pack-dev",
|
||||
"pack-prod": "webpack --env production",
|
||||
"pack-dev": "webpack",
|
||||
"build-dev": "run-s eslint test pack-prod",
|
||||
"build-final": "run-s eslint test pack-final",
|
||||
"build-test": "webpack",
|
||||
"eslint": "eslint src test",
|
||||
"pack-prod": "webpack --env minimize",
|
||||
"pack-final": "webpack --env minimize --env finalfile",
|
||||
"test": "mocha"
|
||||
},
|
||||
"repository": {
|
||||
@@ -44,9 +45,9 @@
|
||||
"homepage": "https://github.com/CookieMonsterTeam/CookieMonster#readme",
|
||||
"devDependencies": {
|
||||
"@types/chai": "^4.2.19",
|
||||
"@types/mocha": "^8.2.2",
|
||||
"@typescript-eslint/eslint-plugin": "^4.28.3",
|
||||
"@typescript-eslint/parser": "^4.28.3",
|
||||
"@types/mocha": "^9.0.0",
|
||||
"@typescript-eslint/eslint-plugin": "^4.28.4",
|
||||
"@typescript-eslint/parser": "^4.28.4",
|
||||
"chai": "^4.3.4",
|
||||
"eslint": "^7.31.0",
|
||||
"eslint-config-airbnb-base": "^14.2.1",
|
||||
@@ -71,6 +72,6 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@eastdesire/jscolor": "^2.4.5",
|
||||
"@cookiemonsterteam/cookiemonsterframework": "^0.2.0"
|
||||
"@cookiemonsterteam/cookiemonsterframework": "^0.2.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,11 +22,11 @@ function CacheColour(target, amount) {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPRigidelMode &&
|
||||
amount === 1
|
||||
) {
|
||||
target[i].color = ColourGray; // eslint-disable-line no-param-reassign
|
||||
target[i].colour = ColourGray; // eslint-disable-line no-param-reassign
|
||||
return;
|
||||
}
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
target[i].color = ColourOfPP(
|
||||
target[i].colour = ColourOfPP(
|
||||
target[i],
|
||||
BuildingGetPrice(
|
||||
i,
|
||||
@@ -42,7 +42,7 @@ function CacheColour(target, amount) {
|
||||
j < Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPExcludeTop;
|
||||
j++
|
||||
) {
|
||||
if (target[i].pp === CachePPArray[j][0]) target[i].color = ColourGray; // eslint-disable-line no-param-reassign
|
||||
if (target[i].pp === CachePPArray[j][0]) target[i].colour = ColourGray; // eslint-disable-line no-param-reassign
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -84,7 +84,7 @@ export default function CacheBuildingsPP() {
|
||||
)
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPExcludeTop = 0; // Otherwise breaks during initialization
|
||||
|
||||
// Calculate PP and colors
|
||||
// Calculate PP and colours
|
||||
CachePP(CacheObjects1, 1);
|
||||
CachePP(CacheObjects10, 10);
|
||||
CachePP(CacheObjects100, 100);
|
||||
|
||||
@@ -15,18 +15,18 @@ import { CacheMinPP, CachePPArray } from '../VariablesAndData';
|
||||
* It is called by CM.Cache.CacheBuildingsPP(), CM.Cache.CacheBuildingsBulkPP() and CM.Cache.CacheUpgradePP()
|
||||
* @params {object} obj The obj of which the pp value should be checked
|
||||
* @params {number} price The price of the object
|
||||
* @returns {string} color The colour assosciated with the pp value
|
||||
* @returns {string} colour The colour assosciated with the pp value
|
||||
*/
|
||||
export default function ColourOfPP(me, price) {
|
||||
let color = '';
|
||||
let colour = '';
|
||||
// Colour based on PP
|
||||
if (me.pp <= 0 || me.pp === Infinity) color = ColourGray;
|
||||
else if (me.pp < CacheMinPP) color = ColourBlue;
|
||||
else if (me.pp === CacheMinPP) color = ColourGreen;
|
||||
else if (me.pp < CachePPArray[10][0]) color = ColourYellow;
|
||||
else if (me.pp < CachePPArray[20][0]) color = ColourOrange;
|
||||
else if (me.pp < CachePPArray[30][0]) color = ColourRed;
|
||||
else color = ColourPurple;
|
||||
if (me.pp <= 0 || me.pp === Infinity) colour = ColourGray;
|
||||
else if (me.pp < CacheMinPP) colour = ColourBlue;
|
||||
else if (me.pp === CacheMinPP) colour = ColourGreen;
|
||||
else if (me.pp < CachePPArray[10][0]) colour = ColourYellow;
|
||||
else if (me.pp < CachePPArray[20][0]) colour = ColourOrange;
|
||||
else if (me.pp < CachePPArray[30][0]) colour = ColourRed;
|
||||
else colour = ColourPurple;
|
||||
|
||||
// Colour based on price in terms of CPS
|
||||
if (
|
||||
@@ -40,11 +40,11 @@ export default function ColourOfPP(me, price) {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPSecondsLowerLimit,
|
||||
)
|
||||
)
|
||||
color = ColourBlue;
|
||||
colour = ColourBlue;
|
||||
}
|
||||
// Colour based on being able to purchase
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPOnlyConsiderBuyable) {
|
||||
if (price - Game.cookies > 0) color = ColourRed;
|
||||
if (price - Game.cookies > 0) colour = ColourRed;
|
||||
}
|
||||
return color;
|
||||
return colour;
|
||||
}
|
||||
|
||||
@@ -16,6 +16,6 @@ export default function CacheUpgradePP() {
|
||||
} else CacheUpgrades[i].pp = Game.Upgrades[i].getPrice() / CacheUpgrades[i].bonus;
|
||||
if (Number.isNaN(CacheUpgrades[i].pp)) CacheUpgrades[i].pp = Infinity;
|
||||
|
||||
CacheUpgrades[i].color = ColourOfPP(CacheUpgrades[i], Game.Upgrades[i].getPrice());
|
||||
CacheUpgrades[i].colour = ColourOfPP(CacheUpgrades[i], Game.Upgrades[i].getPrice());
|
||||
});
|
||||
}
|
||||
|
||||
@@ -2,14 +2,16 @@ import UpdateUpgrades from '../../Disp/BuildingsUpgrades/Upgrades';
|
||||
|
||||
/**
|
||||
* This function toggles the upgrade bar and the colours of upgrades
|
||||
* It is called by a change in CM.Options.UpBarColor
|
||||
* It is called by a change in CM.Options.UpBarColour
|
||||
*/
|
||||
export default function ToggleUpgradeBarAndColor() {
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColor === 1) {
|
||||
export default function ToggleUpgradeBarAndColour() {
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColour === 1) {
|
||||
// Colours and bar on
|
||||
l('CMUpgradeBar').style.display = '';
|
||||
UpdateUpgrades();
|
||||
} else if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColor === 2) {
|
||||
} else if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColour === 2
|
||||
) {
|
||||
// Colours on and bar off
|
||||
l('CMUpgradeBar').style.display = 'none';
|
||||
UpdateUpgrades();
|
||||
|
||||
@@ -9,3 +9,7 @@ const CM = {
|
||||
};
|
||||
|
||||
Game.registerMod('CookieMonster', CM);
|
||||
|
||||
// Game.registerMod also calls CM.load() which calls the loop hook
|
||||
// Thus sounds normally play at start up as Season and Garden states are checked
|
||||
window.cookieMonsterFrameworkData.isInitializing = false;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/** Data related directly to Cookie Monster */
|
||||
|
||||
export const VersionMajor = '2.031';
|
||||
export const VersionMinor = '9';
|
||||
export const VersionMinor = '10';
|
||||
|
||||
/** Information about Cookie Monster to be displayed in the info section */
|
||||
export const ModDescription = `<a href="https://github.com/CookieMonsterTeam/CookieMonster" target="blank">Cookie Monster</a>
|
||||
@@ -13,17 +13,13 @@ export const ModDescription = `<a href="https://github.com/CookieMonsterTeam/Coo
|
||||
|
||||
/** Latest releasenotes of Cookie Monster to be displayed in the info section */
|
||||
export const LatestReleaseNotes = `This update implements the following functions:</br>
|
||||
- HOTFIX: Fixed the possibility of clicking Golden Cookies multiple times with autoclickers</br>
|
||||
- For developers: we now expose some data calculated by Cookie Monster to the global scope. You can access it through the CookieMonsterData object</br>
|
||||
- The column with the most optimal building now has a green coloured indicator whenever colour coding is turned on</br>
|
||||
- The current season in the seasons statistics section is now displayed with green text for easier identification</br>
|
||||
- New option to show a timer bar that counts down till next autosave</br>
|
||||
- New option to sort buildings based on the "cost till next achievement"</br>
|
||||
- Added extra information about achievements in statistics page</br>
|
||||
- This updates adds a number of performance improvements which make CookieMonster about 33% more efficient</br>
|
||||
- Added a button to all buildings in the middle section that can "lock" the building. This makes the building unclickable, which might be useful for frantic clicking during cookie storms</br>
|
||||
- Added a percentage to the Golden Cookie timer bar</br>
|
||||
</br>
|
||||
This update fixes the following bugs:</br>
|
||||
- Fixed a bug where ignoring certain buildings in rare cases did not create a "most optimal building"</br>
|
||||
- Fixed some issues related to "left till achievement"</br>
|
||||
- Fixed some cases where upgrades and buildings were not correctly sorted</br>
|
||||
- Fixed the tooltip of "Pop all normal wrinklers" displaying an incorrect reward when Shiny's are present</br>
|
||||
`;
|
||||
This update fixes the following bugs:
|
||||
- Fix considerable lag on the Ascension screen when using the monospace font</br>
|
||||
- Fix sound playing at start-up</br>
|
||||
- Fix building tooltips and warnings not updating correctly</br>
|
||||
- Fix upgrade bar not displaying</br>
|
||||
- Fix loading of mod when no save was found</br>`;
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
/** The basic setting class */
|
||||
export default class Setting {
|
||||
defaultValue: string | number;
|
||||
|
||||
type: string;
|
||||
|
||||
group: string;
|
||||
|
||||
constructor(defaultValue: string | number, type: string, group: string) {
|
||||
this.defaultValue = defaultValue;
|
||||
this.type = type;
|
||||
this.group = group;
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
import Setting from './BaseSetting';
|
||||
|
||||
/** The colour picker setting class */
|
||||
export default class SettingColours extends Setting {
|
||||
desc: string;
|
||||
|
||||
constructor(defaultValue: string | number,type: string, group: string, desc: string) {
|
||||
super(defaultValue, type, group);
|
||||
this.desc = desc;
|
||||
}
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
import Setting from './BaseSetting';
|
||||
|
||||
/** The number input setting class */
|
||||
export default class SettingInputNumber extends Setting {
|
||||
label: string[];
|
||||
|
||||
desc: string;
|
||||
|
||||
min: number;
|
||||
|
||||
max: number;
|
||||
|
||||
constructor(
|
||||
defaultValue: string | number,
|
||||
type: string,
|
||||
group: string,
|
||||
label: string[],
|
||||
desc: string,
|
||||
min: number,
|
||||
max: number,
|
||||
) {
|
||||
super(defaultValue, type, group);
|
||||
this.label = label;
|
||||
this.desc = desc;
|
||||
this.min = min;
|
||||
this.max = max;
|
||||
}
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
import Setting from './BaseSetting';
|
||||
|
||||
/** The standard toggle setting class */
|
||||
export default class SettingStandard extends Setting {
|
||||
label: string[];
|
||||
|
||||
desc: string;
|
||||
|
||||
toggle: boolean;
|
||||
|
||||
func: () => void;
|
||||
|
||||
constructor(
|
||||
defaultValue: string | number,
|
||||
type: string,
|
||||
group: string,
|
||||
label: string[],
|
||||
desc: string,
|
||||
toggle: boolean,
|
||||
func?: () => void,
|
||||
) {
|
||||
super(defaultValue, type, group);
|
||||
this.label = label;
|
||||
this.desc = desc;
|
||||
this.toggle = toggle;
|
||||
if (func !== undefined) {
|
||||
this.func = func;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
import Setting from './BaseSetting';
|
||||
|
||||
/** The volume level setting class */
|
||||
export default class SettingVolume extends Setting {
|
||||
label: string[];
|
||||
|
||||
desc: string;
|
||||
|
||||
constructor(defaultValue: string | number,type: string, group: string, label: string[], desc: string) {
|
||||
super(defaultValue, type, group);
|
||||
this.label = label;
|
||||
this.desc = desc;
|
||||
for (let i = 0; i < 101; i++) {
|
||||
this.label[i] = `${i}%`;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,8 @@
|
||||
import { settingClasses } from '@cookiemonsterteam/cookiemonsterframework/src/index';
|
||||
|
||||
import CheckNotificationPermissions from '../Config/CheckNotificationPermissions';
|
||||
import { ToggleTimerBar, ToggleTimerBarPos } from '../Config/SpecificToggles';
|
||||
import RefreshScale from '../Disp/HelperFunctions/RefreshScale';
|
||||
import { SimDoSims } from '../Sim/VariablesAndData'; // eslint-disable-line no-unused-vars
|
||||
import ToggleBotBar from '../Config/Toggles/ToggleBotBar';
|
||||
import ToggleDetailedTime from '../Config/Toggles/ToggleDetailedTime';
|
||||
import ToggleGCTimer from '../Config/Toggles/ToggleGCTimer';
|
||||
@@ -9,20 +12,15 @@ import ToggleUpgradeBarAndColour from '../Config/Toggles/ToggleUpgradeBarAndColo
|
||||
import ToggleUpgradeBarFixedPos from '../Config/Toggles/ToggleUpgradeBarFixedPos';
|
||||
import ToggleWrinklerButtons from '../Config/Toggles/ToggleWrinklerButtons';
|
||||
import UpdateBuildings from '../Disp/BuildingsUpgrades/Buildings';
|
||||
import { UpdateFavicon } from '../Disp/TabTitle/FavIcon';
|
||||
import UpdateUpgradeSectionsHeight from '../Disp/BuildingsUpgrades/UpdateUpgradeSectionsHeight';
|
||||
import UpdateUpgrades from '../Disp/BuildingsUpgrades/Upgrades';
|
||||
import RefreshScale from '../Disp/HelperFunctions/RefreshScale';
|
||||
import { UpdateFavicon } from '../Disp/TabTitle/FavIcon';
|
||||
import { SimDoSims } from '../Sim/VariablesAndData'; // eslint-disable-line no-unused-vars
|
||||
import SettingColours from './SettingClasses/SettingColours.ts';
|
||||
import SettingInputNumber from './SettingClasses/SettingInputNumber.ts';
|
||||
import SettingStandard from './SettingClasses/SettingStandard.ts';
|
||||
import SettingVolume from './SettingClasses/SettingVolume.ts';
|
||||
import { ToggleTimerBar, ToggleTimerBarPos } from '../Config/SpecificToggles';
|
||||
|
||||
/** This includes all options of CookieMonster and their relevant data */
|
||||
const settings = {
|
||||
// Calculation
|
||||
CPSMode: new SettingStandard(
|
||||
CPSMode: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Calculation',
|
||||
@@ -30,7 +28,7 @@ const settings = {
|
||||
'Calculate times using current cookies per second or average cookies per second',
|
||||
false,
|
||||
),
|
||||
AvgCPSHist: new SettingStandard(
|
||||
AvgCPSHist: new settingClasses.SettingStandard(
|
||||
3,
|
||||
'bool',
|
||||
'Calculation',
|
||||
@@ -47,7 +45,7 @@ const settings = {
|
||||
'How much time average Cookies Per Second should consider',
|
||||
false,
|
||||
),
|
||||
AvgClicksHist: new SettingStandard(
|
||||
AvgClicksHist: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Calculation',
|
||||
@@ -61,7 +59,7 @@ const settings = {
|
||||
'How much time average Cookie Clicks should consider',
|
||||
false,
|
||||
),
|
||||
CalcWrink: new SettingStandard(
|
||||
CalcWrink: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'Calculation',
|
||||
@@ -78,7 +76,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// Notation
|
||||
Scale: new SettingStandard(
|
||||
Scale: new settingClasses.SettingStandardWithFunc(
|
||||
2,
|
||||
'bool',
|
||||
'Notation',
|
||||
@@ -96,7 +94,7 @@ const settings = {
|
||||
RefreshScale();
|
||||
},
|
||||
),
|
||||
ScaleDecimals: new SettingStandard(
|
||||
ScaleDecimals: new settingClasses.SettingStandardWithFunc(
|
||||
2,
|
||||
'bool',
|
||||
'Notation',
|
||||
@@ -107,7 +105,7 @@ const settings = {
|
||||
RefreshScale();
|
||||
},
|
||||
),
|
||||
ScaleSeparator: new SettingStandard(
|
||||
ScaleSeparator: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'Notation',
|
||||
@@ -118,7 +116,7 @@ const settings = {
|
||||
RefreshScale();
|
||||
},
|
||||
),
|
||||
ScaleCutoff: new SettingInputNumber(
|
||||
ScaleCutoff: new settingClasses.SettingInputNumber(
|
||||
999999,
|
||||
'numscale',
|
||||
'Notation',
|
||||
@@ -127,7 +125,7 @@ const settings = {
|
||||
1,
|
||||
999999999,
|
||||
),
|
||||
TimeFormat: new SettingStandard(
|
||||
TimeFormat: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Notation',
|
||||
@@ -135,7 +133,7 @@ const settings = {
|
||||
'Change the time format',
|
||||
false,
|
||||
),
|
||||
DetailedTime: new SettingStandard(
|
||||
DetailedTime: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'Notation',
|
||||
@@ -146,7 +144,7 @@ const settings = {
|
||||
ToggleDetailedTime();
|
||||
},
|
||||
),
|
||||
PPDisplayTime: new SettingStandard(
|
||||
PPDisplayTime: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Notation',
|
||||
@@ -156,7 +154,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// Colours
|
||||
BuildColour: new SettingStandard(
|
||||
BuildColour: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'Colours',
|
||||
@@ -167,7 +165,7 @@ const settings = {
|
||||
UpdateBuildings();
|
||||
},
|
||||
),
|
||||
PPOnlyConsiderBuyable: new SettingStandard(
|
||||
PPOnlyConsiderBuyable: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Colours',
|
||||
@@ -175,7 +173,7 @@ const settings = {
|
||||
"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",
|
||||
true,
|
||||
),
|
||||
PPExcludeTop: new SettingStandard(
|
||||
PPExcludeTop: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Colours',
|
||||
@@ -188,7 +186,7 @@ const settings = {
|
||||
'Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values',
|
||||
true,
|
||||
),
|
||||
PPRigidelMode: new SettingStandard(
|
||||
PPRigidelMode: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Colours',
|
||||
@@ -196,7 +194,7 @@ const settings = {
|
||||
'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',
|
||||
true,
|
||||
),
|
||||
PPSecondsLowerLimit: new SettingInputNumber(
|
||||
PPSecondsLowerLimit: new settingClasses.SettingInputNumber(
|
||||
0,
|
||||
'numscale',
|
||||
'Colours',
|
||||
@@ -205,55 +203,55 @@ const settings = {
|
||||
0,
|
||||
Infinity,
|
||||
),
|
||||
ColourBlue: new SettingColours(
|
||||
ColourBlue: new settingClasses.SettingColours(
|
||||
'#4bb8f0',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels',
|
||||
),
|
||||
ColourGreen: new SettingColours(
|
||||
ColourGreen: new settingClasses.SettingColours(
|
||||
'#00ff00',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels',
|
||||
),
|
||||
ColourYellow: new SettingColours(
|
||||
ColourYellow: new settingClasses.SettingColours(
|
||||
'#ffff00',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels',
|
||||
),
|
||||
ColourOrange: new SettingColours(
|
||||
ColourOrange: new settingClasses.SettingColours(
|
||||
'#ff7f00',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels',
|
||||
),
|
||||
ColourRed: new SettingColours(
|
||||
ColourRed: new settingClasses.SettingColours(
|
||||
'#ff0000',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels',
|
||||
),
|
||||
ColourPurple: new SettingColours(
|
||||
ColourPurple: new settingClasses.SettingColours(
|
||||
'#ff00ff',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels',
|
||||
),
|
||||
ColourGray: new SettingColours(
|
||||
ColourGray: new settingClasses.SettingColours(
|
||||
'#b3b3b3',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar',
|
||||
),
|
||||
ColourPink: new SettingColours(
|
||||
ColourPink: new settingClasses.SettingColours(
|
||||
'#ff1493',
|
||||
'colour',
|
||||
'Colours',
|
||||
'Standard colour is pink. Used for Dragonflight bar',
|
||||
),
|
||||
ColourBrown: new SettingColours(
|
||||
ColourBrown: new settingClasses.SettingColours(
|
||||
'#8b4513',
|
||||
'colour',
|
||||
'Colours',
|
||||
@@ -261,7 +259,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// BarsDisplay
|
||||
BotBar: new SettingStandard(
|
||||
BotBar: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -272,7 +270,7 @@ const settings = {
|
||||
ToggleBotBar();
|
||||
},
|
||||
),
|
||||
TimerBar: new SettingStandard(
|
||||
TimerBar: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -283,7 +281,7 @@ const settings = {
|
||||
ToggleTimerBar();
|
||||
},
|
||||
),
|
||||
TimerBarPos: new SettingStandard(
|
||||
TimerBarPos: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -294,7 +292,7 @@ const settings = {
|
||||
ToggleTimerBarPos();
|
||||
},
|
||||
),
|
||||
TimerBarOverlay: new SettingStandard(
|
||||
TimerBarOverlay: new settingClasses.SettingStandard(
|
||||
2,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -302,7 +300,7 @@ const settings = {
|
||||
'Overlay on timers displaying seconds and/or percentage left',
|
||||
true,
|
||||
),
|
||||
AutosaveTimerBar: new SettingStandard(
|
||||
AutosaveTimerBar: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -310,7 +308,7 @@ const settings = {
|
||||
'Show a timer counting down till next autosave in the timer bar',
|
||||
true,
|
||||
),
|
||||
UpBarColour: new SettingStandard(
|
||||
UpBarColour: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -321,7 +319,7 @@ const settings = {
|
||||
ToggleUpgradeBarAndColour();
|
||||
},
|
||||
),
|
||||
UpgradeBarFixedPos: new SettingStandard(
|
||||
UpgradeBarFixedPos: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -332,7 +330,7 @@ const settings = {
|
||||
ToggleUpgradeBarFixedPos();
|
||||
},
|
||||
),
|
||||
SortBuildings: new SettingStandard(
|
||||
SortBuildings: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -348,7 +346,7 @@ const settings = {
|
||||
UpdateBuildings();
|
||||
},
|
||||
),
|
||||
SortUpgrades: new SettingStandard(
|
||||
SortUpgrades: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -359,7 +357,7 @@ const settings = {
|
||||
UpdateUpgrades();
|
||||
},
|
||||
),
|
||||
UpgradesNeverCollapse: new SettingStandard(
|
||||
UpgradesNeverCollapse: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -370,7 +368,7 @@ const settings = {
|
||||
UpdateUpgradeSectionsHeight();
|
||||
},
|
||||
),
|
||||
DragonAuraInfo: new SettingStandard(
|
||||
DragonAuraInfo: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -378,7 +376,7 @@ const settings = {
|
||||
'Shows information about changes in CPS and costs in the dragon aura interface.',
|
||||
true,
|
||||
),
|
||||
GrimoireBar: new SettingStandard(
|
||||
GrimoireBar: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -386,7 +384,7 @@ const settings = {
|
||||
'A timer overlay showing how long till the Grimoire magic meter is full',
|
||||
true,
|
||||
),
|
||||
GCTimer: new SettingStandard(
|
||||
GCTimer: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -397,7 +395,7 @@ const settings = {
|
||||
ToggleGCTimer();
|
||||
},
|
||||
),
|
||||
Favicon: new SettingStandard(
|
||||
Favicon: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -408,7 +406,7 @@ const settings = {
|
||||
UpdateFavicon();
|
||||
},
|
||||
),
|
||||
WrinklerButtons: new SettingStandard(
|
||||
WrinklerButtons: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -419,7 +417,7 @@ const settings = {
|
||||
ToggleWrinklerButtons();
|
||||
},
|
||||
),
|
||||
HideSectionsButtons: new SettingStandard(
|
||||
HideSectionsButtons: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'BarsDisplay',
|
||||
@@ -432,7 +430,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// Tooltip
|
||||
TooltipBuildUpgrade: new SettingStandard(
|
||||
TooltipBuildUpgrade: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -440,7 +438,7 @@ const settings = {
|
||||
'Extra information in building/upgrade tooltips',
|
||||
true,
|
||||
),
|
||||
TooltipAmor: new SettingStandard(
|
||||
TooltipAmor: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -451,7 +449,7 @@ const settings = {
|
||||
'Add amortization information to buildings tooltip',
|
||||
true,
|
||||
),
|
||||
ToolWarnLucky: new SettingStandard(
|
||||
ToolWarnLucky: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -459,7 +457,7 @@ const settings = {
|
||||
'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',
|
||||
true,
|
||||
),
|
||||
ToolWarnLuckyFrenzy: new SettingStandard(
|
||||
ToolWarnLuckyFrenzy: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -467,7 +465,7 @@ const settings = {
|
||||
'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',
|
||||
true,
|
||||
),
|
||||
ToolWarnConjure: new SettingStandard(
|
||||
ToolWarnConjure: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -475,7 +473,7 @@ const settings = {
|
||||
'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',
|
||||
true,
|
||||
),
|
||||
ToolWarnConjureFrenzy: new SettingStandard(
|
||||
ToolWarnConjureFrenzy: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -483,7 +481,7 @@ const settings = {
|
||||
'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',
|
||||
true,
|
||||
),
|
||||
ToolWarnEdifice: new SettingStandard(
|
||||
ToolWarnEdifice: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -491,7 +489,7 @@ const settings = {
|
||||
'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',
|
||||
true,
|
||||
),
|
||||
ToolWarnUser: new SettingInputNumber(
|
||||
ToolWarnUser: new settingClasses.SettingInputNumber(
|
||||
0,
|
||||
'numscale',
|
||||
'Tooltip',
|
||||
@@ -500,7 +498,7 @@ const settings = {
|
||||
0,
|
||||
Infinity,
|
||||
),
|
||||
ToolWarnBon: new SettingStandard(
|
||||
ToolWarnBon: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -508,7 +506,7 @@ const settings = {
|
||||
'Calculate the warning with or without the bonus CPS you get from buying',
|
||||
true,
|
||||
),
|
||||
ToolWarnPos: new SettingStandard(
|
||||
ToolWarnPos: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -519,7 +517,7 @@ const settings = {
|
||||
ToggleToolWarnPos();
|
||||
},
|
||||
),
|
||||
TooltipGrim: new SettingStandard(
|
||||
TooltipGrim: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -527,7 +525,7 @@ const settings = {
|
||||
'Extra information in tooltip for grimoire',
|
||||
true,
|
||||
),
|
||||
TooltipWrink: new SettingStandard(
|
||||
TooltipWrink: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -535,7 +533,7 @@ const settings = {
|
||||
'Shows the amount of cookies a wrinkler will give when popping it',
|
||||
true,
|
||||
),
|
||||
TooltipLump: new SettingStandard(
|
||||
TooltipLump: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -543,7 +541,7 @@ const settings = {
|
||||
'Shows the current Sugar Lump type in Sugar lump tooltip.',
|
||||
true,
|
||||
),
|
||||
TooltipPlots: new SettingStandard(
|
||||
TooltipPlots: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -551,7 +549,7 @@ const settings = {
|
||||
'Shows a tooltip for plants that have a cookie reward.',
|
||||
true,
|
||||
),
|
||||
TooltipPantheon: new SettingStandard(
|
||||
TooltipPantheon: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -559,7 +557,7 @@ const settings = {
|
||||
'Shows additional info in the pantheon tooltip',
|
||||
true,
|
||||
),
|
||||
TooltipAscendButton: new SettingStandard(
|
||||
TooltipAscendButton: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Tooltip',
|
||||
@@ -569,7 +567,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// Statistics
|
||||
Stats: new SettingStandard(
|
||||
Stats: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Statistics',
|
||||
@@ -577,7 +575,7 @@ const settings = {
|
||||
'Extra Cookie Monster statistics!',
|
||||
true,
|
||||
),
|
||||
MissingUpgrades: new SettingStandard(
|
||||
MissingUpgrades: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Statistics',
|
||||
@@ -585,7 +583,7 @@ const settings = {
|
||||
'Shows missing upgrades in statistics menu',
|
||||
true,
|
||||
),
|
||||
MissingAchievements: new SettingStandard(
|
||||
MissingAchievements: new settingClasses.SettingStandard(
|
||||
0,
|
||||
'bool',
|
||||
'Statistics',
|
||||
@@ -593,7 +591,7 @@ const settings = {
|
||||
'Shows missing normal achievements in statistics menu.',
|
||||
true,
|
||||
),
|
||||
UpStats: new SettingStandard(
|
||||
UpStats: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Statistics',
|
||||
@@ -601,7 +599,7 @@ const settings = {
|
||||
'Default rate is once every 5 seconds',
|
||||
false,
|
||||
),
|
||||
HeavenlyChipsTarget: new SettingInputNumber(
|
||||
HeavenlyChipsTarget: new settingClasses.SettingInputNumber(
|
||||
1,
|
||||
'numscale',
|
||||
'Statistics',
|
||||
@@ -610,7 +608,7 @@ const settings = {
|
||||
1,
|
||||
Infinity,
|
||||
),
|
||||
ShowMissedGC: new SettingStandard(
|
||||
ShowMissedGC: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Statistics',
|
||||
@@ -620,7 +618,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// Notification
|
||||
Title: new SettingStandard(
|
||||
Title: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationGeneral',
|
||||
@@ -628,7 +626,7 @@ const settings = {
|
||||
'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',
|
||||
true,
|
||||
),
|
||||
GeneralSound: new SettingStandard(
|
||||
GeneralSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationGeneral',
|
||||
@@ -636,7 +634,7 @@ const settings = {
|
||||
'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',
|
||||
true,
|
||||
),
|
||||
GCNotification: new SettingStandard(
|
||||
GCNotification: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'NotificationGC',
|
||||
@@ -649,7 +647,7 @@ const settings = {
|
||||
);
|
||||
},
|
||||
),
|
||||
GCFlash: new SettingStandard(
|
||||
GCFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationGC',
|
||||
@@ -657,13 +655,13 @@ const settings = {
|
||||
'Flash screen on golden cookie',
|
||||
true,
|
||||
),
|
||||
ColourGCFlash: new SettingColours(
|
||||
ColourGCFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationGC',
|
||||
'The colour of the GC flash, standard colour is white',
|
||||
),
|
||||
GCSound: new SettingStandard(
|
||||
GCSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationGC',
|
||||
@@ -671,15 +669,15 @@ const settings = {
|
||||
'Play a sound on golden cookie',
|
||||
true,
|
||||
),
|
||||
GCVolume: new SettingVolume(100, 'vol', 'NotificationGC', [], 'Volume'),
|
||||
GCSoundURL: new SettingStandard(
|
||||
GCVolume: new settingClasses.SettingVolume(100, 'vol', 'NotificationGC', [], 'Volume'),
|
||||
GCSoundURL: new settingClasses.SettingStandard(
|
||||
'https://freesound.org/data/previews/66/66717_931655-lq.mp3',
|
||||
'url',
|
||||
'NotificationGC',
|
||||
'Sound URL:',
|
||||
'URL of the sound to be played when a golden cookie spawns',
|
||||
),
|
||||
FortuneNotification: new SettingStandard(
|
||||
FortuneNotification: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'NotificationFC',
|
||||
@@ -692,7 +690,7 @@ const settings = {
|
||||
);
|
||||
},
|
||||
),
|
||||
FortuneFlash: new SettingStandard(
|
||||
FortuneFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationFC',
|
||||
@@ -700,13 +698,13 @@ const settings = {
|
||||
'Flash screen on fortune cookie spawn',
|
||||
true,
|
||||
),
|
||||
ColourFortuneFlash: new SettingColours(
|
||||
ColourFortuneFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationFC',
|
||||
'The colour of the fortune flash, standard colour is white',
|
||||
),
|
||||
FortuneSound: new SettingStandard(
|
||||
FortuneSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationFC',
|
||||
@@ -714,15 +712,15 @@ const settings = {
|
||||
'Play a sound on fortune cookie spawn',
|
||||
true,
|
||||
),
|
||||
FortuneVolume: new SettingVolume(100, 'vol', 'NotificationFC', [], 'Volume'),
|
||||
FortuneSoundURL: new SettingStandard(
|
||||
FortuneVolume: new settingClasses.SettingVolume(100, 'vol', 'NotificationFC', [], 'Volume'),
|
||||
FortuneSoundURL: new settingClasses.SettingStandard(
|
||||
'https://freesound.org/data/previews/174/174027_3242494-lq.mp3',
|
||||
'url',
|
||||
'NotificationFC',
|
||||
'Sound URL:',
|
||||
'URL of the sound to be played when the ticker has a fortune cookie',
|
||||
),
|
||||
SeaNotification: new SettingStandard(
|
||||
SeaNotification: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'NotificationSea',
|
||||
@@ -735,7 +733,7 @@ const settings = {
|
||||
);
|
||||
},
|
||||
),
|
||||
SeaFlash: new SettingStandard(
|
||||
SeaFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationSea',
|
||||
@@ -743,13 +741,13 @@ const settings = {
|
||||
'Flash screen on season popup',
|
||||
true,
|
||||
),
|
||||
ColourSeaFlash: new SettingColours(
|
||||
ColourSeaFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationSea',
|
||||
'The colour of the season popup flash, standard colour is white',
|
||||
),
|
||||
SeaSound: new SettingStandard(
|
||||
SeaSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationSea',
|
||||
@@ -757,15 +755,15 @@ const settings = {
|
||||
'Play a sound on season popup',
|
||||
true,
|
||||
),
|
||||
SeaVolume: new SettingVolume(100, 'vol', 'NotificationSea', [], 'Volume'),
|
||||
SeaSoundURL: new SettingStandard(
|
||||
SeaVolume: new settingClasses.SettingVolume(100, 'vol', 'NotificationSea', [], 'Volume'),
|
||||
SeaSoundURL: new settingClasses.SettingStandard(
|
||||
'https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3',
|
||||
'url',
|
||||
'NotificationSea',
|
||||
'Sound URL:',
|
||||
'URL of the sound to be played when on season popup spawns',
|
||||
),
|
||||
GardFlash: new SettingStandard(
|
||||
GardFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationGard',
|
||||
@@ -773,13 +771,13 @@ const settings = {
|
||||
'Flash screen on garden tick',
|
||||
true,
|
||||
),
|
||||
ColourGardFlash: new SettingColours(
|
||||
ColourGardFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationGard',
|
||||
'The colour of the garden flash, standard colour is white',
|
||||
),
|
||||
GardSound: new SettingStandard(
|
||||
GardSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationGard',
|
||||
@@ -787,15 +785,15 @@ const settings = {
|
||||
'Play a sound on garden tick',
|
||||
true,
|
||||
),
|
||||
GardVolume: new SettingVolume(100, 'vol', 'NotificationGard', [], 'Volume'),
|
||||
GardSoundURL: new SettingStandard(
|
||||
GardVolume: new settingClasses.SettingVolume(100, 'vol', 'NotificationGard', [], 'Volume'),
|
||||
GardSoundURL: new settingClasses.SettingStandard(
|
||||
'https://freesound.org/data/previews/103/103046_861714-lq.mp3',
|
||||
'url',
|
||||
'NotificationGard',
|
||||
'Garden Tick Sound URL:',
|
||||
'URL of the sound to be played when the garden ticks',
|
||||
),
|
||||
MagicNotification: new SettingStandard(
|
||||
MagicNotification: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'NotificationMagi',
|
||||
@@ -808,7 +806,7 @@ const settings = {
|
||||
);
|
||||
},
|
||||
),
|
||||
MagicFlash: new SettingStandard(
|
||||
MagicFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationMagi',
|
||||
@@ -816,13 +814,13 @@ const settings = {
|
||||
'Flash screen when magic reaches maximum',
|
||||
true,
|
||||
),
|
||||
ColourMagicFlash: new SettingColours(
|
||||
ColourMagicFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationMagi',
|
||||
'The colour of the magic flash, standard colour is white',
|
||||
),
|
||||
MagicSound: new SettingStandard(
|
||||
MagicSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationMagi',
|
||||
@@ -830,15 +828,15 @@ const settings = {
|
||||
'Play a sound when magic reaches maximum',
|
||||
true,
|
||||
),
|
||||
MagicVolume: new SettingVolume(100, 'vol', 'NotificationMagi', [], 'Volume'),
|
||||
MagicSoundURL: new SettingStandard(
|
||||
MagicVolume: new settingClasses.SettingVolume(100, 'vol', 'NotificationMagi', [], 'Volume'),
|
||||
MagicSoundURL: new settingClasses.SettingStandard(
|
||||
'https://freesound.org/data/previews/221/221683_1015240-lq.mp3',
|
||||
'url',
|
||||
'NotificationMagi',
|
||||
'Sound URL:',
|
||||
'URL of the sound to be played when magic reaches maxium',
|
||||
),
|
||||
WrinklerNotification: new SettingStandard(
|
||||
WrinklerNotification: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'NotificationWrink',
|
||||
@@ -851,7 +849,7 @@ const settings = {
|
||||
);
|
||||
},
|
||||
),
|
||||
WrinklerFlash: new SettingStandard(
|
||||
WrinklerFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationWrink',
|
||||
@@ -859,13 +857,13 @@ const settings = {
|
||||
'Flash screen when a wrinkler appears',
|
||||
true,
|
||||
),
|
||||
ColourWrinklerFlash: new SettingColours(
|
||||
ColourWrinklerFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationWrink',
|
||||
'The colour of the wrinkler flash, standard colour is white',
|
||||
),
|
||||
WrinklerSound: new SettingStandard(
|
||||
WrinklerSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationWrink',
|
||||
@@ -873,15 +871,15 @@ const settings = {
|
||||
'Play a sound when a wrinkler appears',
|
||||
true,
|
||||
),
|
||||
WrinklerVolume: new SettingVolume(100, 'vol', 'NotificationWrink', [], 'Volume'),
|
||||
WrinklerSoundURL: new SettingStandard(
|
||||
WrinklerVolume: new settingClasses.SettingVolume(100, 'vol', 'NotificationWrink', [], 'Volume'),
|
||||
WrinklerSoundURL: new settingClasses.SettingStandard(
|
||||
'https://freesound.org/data/previews/124/124186_8043-lq.mp3',
|
||||
'url',
|
||||
'NotificationWrink',
|
||||
'Sound URL:',
|
||||
'URL of the sound to be played when a wrinkler appears',
|
||||
),
|
||||
WrinklerMaxNotification: new SettingStandard(
|
||||
WrinklerMaxNotification: new settingClasses.SettingStandardWithFunc(
|
||||
0,
|
||||
'bool',
|
||||
'NotificationWrinkMax',
|
||||
@@ -894,7 +892,7 @@ const settings = {
|
||||
);
|
||||
},
|
||||
),
|
||||
WrinklerMaxFlash: new SettingStandard(
|
||||
WrinklerMaxFlash: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationWrinkMax',
|
||||
@@ -902,13 +900,13 @@ const settings = {
|
||||
'Flash screen when the maximum amount of Wrinklers has appeared',
|
||||
true,
|
||||
),
|
||||
ColourWrinklerMaxFlash: new SettingColours(
|
||||
ColourWrinklerMaxFlash: new settingClasses.SettingColours(
|
||||
'#ffffff',
|
||||
'colour',
|
||||
'NotificationWrinkMax',
|
||||
'The colour of the maximum wrinkler flash, standard colour is white',
|
||||
),
|
||||
WrinklerMaxSound: new SettingStandard(
|
||||
WrinklerMaxSound: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'NotificationWrinkMax',
|
||||
@@ -916,8 +914,14 @@ const settings = {
|
||||
'Play a sound when the maximum amount of wrinklers has appeared',
|
||||
true,
|
||||
),
|
||||
WrinklerMaxVolume: new SettingVolume(100, 'vol', 'NotificationWrinkMax', [], 'Volume'),
|
||||
WrinklerMaxSoundURL: new SettingStandard(
|
||||
WrinklerMaxVolume: new settingClasses.SettingVolume(
|
||||
100,
|
||||
'vol',
|
||||
'NotificationWrinkMax',
|
||||
[],
|
||||
'Volume',
|
||||
),
|
||||
WrinklerMaxSoundURL: new settingClasses.SettingStandard(
|
||||
'https://freesound.org/data/previews/152/152743_15663-lq.mp3',
|
||||
'url',
|
||||
'NotificationWrinkMax',
|
||||
@@ -926,7 +930,7 @@ const settings = {
|
||||
),
|
||||
|
||||
// Miscellaneous
|
||||
BulkBuyBlock: new SettingStandard(
|
||||
BulkBuyBlock: new settingClasses.SettingStandard(
|
||||
1,
|
||||
'bool',
|
||||
'Miscellaneous',
|
||||
@@ -934,7 +938,7 @@ const settings = {
|
||||
"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",
|
||||
true,
|
||||
),
|
||||
FavouriteSettings: new SettingStandard(
|
||||
FavouriteSettings: new settingClasses.SettingStandardWithFunc(
|
||||
1,
|
||||
'bool',
|
||||
'Miscellaneous',
|
||||
|
||||
@@ -2,23 +2,23 @@ import { ColourGreen, ColourOrange, ColourRed, ColourYellow } from '../Variables
|
||||
import FormatTime from './FormatTime';
|
||||
|
||||
/**
|
||||
* This function returns the color to be used for time-strings
|
||||
* This function returns the colour to be used for time-strings
|
||||
* @param {number} time Time to be coloured
|
||||
* @returns {{string, string}} {text, color} Both the formatted time and color as strings in an array
|
||||
* @returns {{string, string}} {text, colour} Both the formatted time and colour as strings in an array
|
||||
*/
|
||||
export default function GetTimeColour(time) {
|
||||
let color;
|
||||
let colour;
|
||||
let text;
|
||||
if (time <= 0) {
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.TimeFormat)
|
||||
text = '00:00:00:00:00';
|
||||
else text = 'Done!';
|
||||
color = ColourGreen;
|
||||
colour = ColourGreen;
|
||||
} else {
|
||||
text = FormatTime(time);
|
||||
if (time > 300) color = ColourRed;
|
||||
else if (time > 60) color = ColourOrange;
|
||||
else color = ColourYellow;
|
||||
if (time > 300) colour = ColourRed;
|
||||
else if (time > 60) colour = ColourOrange;
|
||||
else colour = ColourYellow;
|
||||
}
|
||||
return { text, color };
|
||||
return { text, colour };
|
||||
}
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
/**
|
||||
* This function toggle the locked state of a building
|
||||
* @param {number} index Index of the row to change
|
||||
*/
|
||||
export default function ToggleBuildingLock(index) {
|
||||
if (l(`productLock${index}`).innerHTML === 'Unlocked') {
|
||||
l(`productLock${index}`).innerHTML = 'Locked';
|
||||
l(`row${index}`).children[3].style.pointerEvents = 'none';
|
||||
} else {
|
||||
l(`productLock${index}`).innerHTML = 'Unlocked';
|
||||
l(`row${index}`).children[3].style.pointerEvents = 'auto';
|
||||
}
|
||||
}
|
||||
@@ -39,7 +39,7 @@ export default function UpdateBuildings() {
|
||||
Object.keys(target).forEach((i) => {
|
||||
l(`productPrice${Game.Objects[i].id}`).style.color =
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings[
|
||||
`Colour${target[i].color}`
|
||||
`Colour${target[i].colour}`
|
||||
];
|
||||
});
|
||||
l(`storeBulk${CacheMinPPBulk}`).style.color =
|
||||
@@ -89,14 +89,14 @@ export default function UpdateBuildings() {
|
||||
const o = {};
|
||||
o.name = k;
|
||||
o.pp = CacheObjects1[k].pp;
|
||||
o.color = CacheObjects1[k].color;
|
||||
o.colour = CacheObjects1[k].colour;
|
||||
return o;
|
||||
});
|
||||
// Sort by pp colour group, then by pp.
|
||||
arr.sort((a, b) =>
|
||||
ColoursOrdering.indexOf(a.color) === ColoursOrdering.indexOf(b.color)
|
||||
ColoursOrdering.indexOf(a.colour) === ColoursOrdering.indexOf(b.colour)
|
||||
? a.pp - b.pp
|
||||
: ColoursOrdering.indexOf(a.color) - ColoursOrdering.indexOf(b.color),
|
||||
: ColoursOrdering.indexOf(a.colour) - ColoursOrdering.indexOf(b.colour),
|
||||
);
|
||||
} else if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.SortBuildings === 2
|
||||
@@ -105,14 +105,14 @@ export default function UpdateBuildings() {
|
||||
const o = {};
|
||||
o.name = k;
|
||||
o.pp = target[k].pp;
|
||||
o.color = target[k].color;
|
||||
o.colour = target[k].colour;
|
||||
return o;
|
||||
});
|
||||
// Sort by pp colour group, then by pp.
|
||||
arr.sort((a, b) =>
|
||||
ColoursOrdering.indexOf(a.color) === ColoursOrdering.indexOf(b.color)
|
||||
ColoursOrdering.indexOf(a.colour) === ColoursOrdering.indexOf(b.colour)
|
||||
? a.pp - b.pp
|
||||
: ColoursOrdering.indexOf(a.color) - ColoursOrdering.indexOf(b.color),
|
||||
: ColoursOrdering.indexOf(a.colour) - ColoursOrdering.indexOf(b.colour),
|
||||
);
|
||||
} else if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.SortBuildings === 3
|
||||
|
||||
@@ -24,11 +24,11 @@ function CreateUpgradeBarLegend() {
|
||||
title.textContent = 'Legend';
|
||||
legend.appendChild(title);
|
||||
|
||||
const legendLine = function (color, text) {
|
||||
const legendLine = function (colour, text) {
|
||||
const div = document.createElement('div');
|
||||
div.style.verticalAlign = 'middle';
|
||||
const span = document.createElement('span');
|
||||
span.className = ColourBackPre + color;
|
||||
span.className = ColourBackPre + colour;
|
||||
span.style.display = 'inline-block';
|
||||
span.style.height = '10px';
|
||||
span.style.width = '10px';
|
||||
@@ -70,10 +70,10 @@ export default function CreateUpgradeBar() {
|
||||
Game.tooltip.draw(this, escape(placeholder.innerHTML), 'store');
|
||||
};
|
||||
|
||||
const upgradeNumber = function (id, color) {
|
||||
const upgradeNumber = function (id, colour) {
|
||||
const span = document.createElement('span');
|
||||
span.id = id;
|
||||
span.className = ColourTextPre + color;
|
||||
span.className = ColourTextPre + colour;
|
||||
span.style.width = '14.28571428571429%';
|
||||
span.style.display = 'inline-block';
|
||||
span.textContent = '0';
|
||||
|
||||
@@ -33,7 +33,7 @@ export default function UpdateUpgrades() {
|
||||
let addedColour = false;
|
||||
for (let j = 0; j < l(`upgrade${i}`).childNodes.length; j += 1) {
|
||||
if (l(`upgrade${i}`).childNodes[j].className.indexOf(ColourBackPre) !== -1) {
|
||||
l(`upgrade${i}`).childNodes[j].className = ColourBackPre + CacheUpgrades[me.name].color;
|
||||
l(`upgrade${i}`).childNodes[j].className = ColourBackPre + CacheUpgrades[me.name].colour;
|
||||
addedColour = true;
|
||||
break;
|
||||
}
|
||||
@@ -42,16 +42,16 @@ export default function UpdateUpgrades() {
|
||||
const div = document.createElement('div');
|
||||
div.style.width = '10px';
|
||||
div.style.height = '10px';
|
||||
div.className = ColourBackPre + CacheUpgrades[me.name].color;
|
||||
div.className = ColourBackPre + CacheUpgrades[me.name].colour;
|
||||
l(`upgrade${i}`).appendChild(div);
|
||||
}
|
||||
if (CacheUpgrades[me.name].color === ColourBlue) blue += 1;
|
||||
else if (CacheUpgrades[me.name].color === ColourGreen) green += 1;
|
||||
else if (CacheUpgrades[me.name].color === ColourYellow) yellow += 1;
|
||||
else if (CacheUpgrades[me.name].color === ColourOrange) orange += 1;
|
||||
else if (CacheUpgrades[me.name].color === ColourRed) red += 1;
|
||||
else if (CacheUpgrades[me.name].color === ColourPurple) purple += 1;
|
||||
else if (CacheUpgrades[me.name].color === ColourGray) gray += 1;
|
||||
if (CacheUpgrades[me.name].colour === ColourBlue) blue += 1;
|
||||
else if (CacheUpgrades[me.name].colour === ColourGreen) green += 1;
|
||||
else if (CacheUpgrades[me.name].colour === ColourYellow) yellow += 1;
|
||||
else if (CacheUpgrades[me.name].colour === ColourOrange) orange += 1;
|
||||
else if (CacheUpgrades[me.name].colour === ColourRed) red += 1;
|
||||
else if (CacheUpgrades[me.name].colour === ColourPurple) purple += 1;
|
||||
else if (CacheUpgrades[me.name].colour === ColourGray) gray += 1;
|
||||
});
|
||||
|
||||
l('CMUpgradeBarBlue').textContent = blue;
|
||||
@@ -71,16 +71,16 @@ export default function UpdateUpgrades() {
|
||||
o.name = Game.UpgradesInStore[x].name;
|
||||
o.price = Game.UpgradesInStore[x].basePrice;
|
||||
o.pp = CacheUpgrades[o.name].pp;
|
||||
o.color = CacheUpgrades[o.name].color;
|
||||
o.colour = CacheUpgrades[o.name].colour;
|
||||
arr.push(o);
|
||||
}
|
||||
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.SortUpgrades) {
|
||||
// Sort by pp colour group, then by pp.
|
||||
arr.sort((a, b) =>
|
||||
ColoursOrdering.indexOf(a.color) === ColoursOrdering.indexOf(b.color)
|
||||
ColoursOrdering.indexOf(a.colour) === ColoursOrdering.indexOf(b.colour)
|
||||
? a.pp - b.pp
|
||||
: ColoursOrdering.indexOf(a.color) - ColoursOrdering.indexOf(b.color),
|
||||
: ColoursOrdering.indexOf(a.colour) - ColoursOrdering.indexOf(b.colour),
|
||||
);
|
||||
} else {
|
||||
arr.sort((a, b) => a.price - b.price);
|
||||
|
||||
@@ -27,7 +27,7 @@ export default function CMDrawHook() {
|
||||
}
|
||||
}
|
||||
|
||||
// Update colors
|
||||
// Update colours
|
||||
UpdateBuildings();
|
||||
UpdateUpgrades();
|
||||
UpdateUpgradeSectionsHeight();
|
||||
|
||||
@@ -11,23 +11,23 @@ import {
|
||||
* This function returns Name and Colour as object for sugar lump type that is given as input param.
|
||||
* It is called by CM.Disp.UpdateTooltipSugarLump()
|
||||
* @param {string} type Sugar Lump Type.
|
||||
* @returns {{string}, {string}} text, color An array containing the text and display-color of the sugar lump
|
||||
* @returns {{string}, {string}} text, colour An array containing the text and display-colour of the sugar lump
|
||||
*/
|
||||
export default function GetLumpColour(type) {
|
||||
if (type === 0) {
|
||||
return { text: 'Normal', color: ColourGray };
|
||||
return { text: 'Normal', colour: ColourGray };
|
||||
}
|
||||
if (type === 1) {
|
||||
return { text: 'Bifurcated', color: ColourGreen };
|
||||
return { text: 'Bifurcated', colour: ColourGreen };
|
||||
}
|
||||
if (type === 2) {
|
||||
return { text: 'Golden', color: ColourYellow };
|
||||
return { text: 'Golden', colour: ColourYellow };
|
||||
}
|
||||
if (type === 3) {
|
||||
return { text: 'Meaty', color: ColourOrange };
|
||||
return { text: 'Meaty', colour: ColourOrange };
|
||||
}
|
||||
if (type === 4) {
|
||||
return { text: 'Caramelized', color: ColourPurple };
|
||||
return { text: 'Caramelized', colour: ColourPurple };
|
||||
}
|
||||
return { text: 'Unknown Sugar Lump', color: ColourRed };
|
||||
return { text: 'Unknown Sugar Lump', colour: ColourRed };
|
||||
}
|
||||
|
||||
@@ -33,10 +33,10 @@ export function CreateBotBar() {
|
||||
table.style.whiteSpace = 'nowrap';
|
||||
const tbody = table.appendChild(document.createElement('tbody'));
|
||||
|
||||
const firstCol = function (text, color) {
|
||||
const firstCol = function (text, colour) {
|
||||
const td = document.createElement('td');
|
||||
td.style.textAlign = 'right';
|
||||
td.className = ColourTextPre + color;
|
||||
td.className = ColourTextPre + colour;
|
||||
td.textContent = text;
|
||||
return td;
|
||||
};
|
||||
@@ -86,7 +86,7 @@ export function UpdateBotBar() {
|
||||
2,
|
||||
);
|
||||
l('CMBotBar').firstChild.firstChild.childNodes[2].childNodes[count].className =
|
||||
ColourTextPre + target[i].color;
|
||||
ColourTextPre + target[i].colour;
|
||||
let PPString;
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPDisplayTime)
|
||||
PPString = FormatTime(Math.round(target[i].pp));
|
||||
@@ -96,7 +96,7 @@ export function UpdateBotBar() {
|
||||
(Game.Objects[i].bulkPrice - (Game.cookies + GetWrinkConfigBank())) / GetCPS(),
|
||||
);
|
||||
l('CMBotBar').firstChild.firstChild.childNodes[3].childNodes[count].className =
|
||||
ColourTextPre + timeColour.color;
|
||||
ColourTextPre + timeColour.colour;
|
||||
if (timeColour.text === 'Done!' && Game.cookies < Game.Objects[i].bulkPrice) {
|
||||
l('CMBotBar').firstChild.firstChild.childNodes[3].childNodes[
|
||||
count
|
||||
|
||||
@@ -6,7 +6,7 @@ import { ColourBackPre, ColourBlue, ColourTextPre } from '../VariablesAndData';
|
||||
* This function creates an indivudual timer for the timer bar
|
||||
* @param {string} id An id to identify the timer
|
||||
* @param {string} name The title of the timer
|
||||
* @param [{{string}, {string}}, ...] bars ([id, color]) The id and colours of individual parts of the timer
|
||||
* @param [{{string}, {string}}, ...] bars ([id, colour]) The id and colours of individual parts of the timer
|
||||
*/
|
||||
export function CreateTimer(id, name, bars) {
|
||||
const timerBar = document.createElement('div');
|
||||
@@ -36,20 +36,20 @@ export function CreateTimer(id, name, bars) {
|
||||
div.appendChild(type);
|
||||
|
||||
for (let i = 0; i < bars.length; i++) {
|
||||
const colorBar = document.createElement('span');
|
||||
colorBar.id = bars[i].id;
|
||||
colorBar.style.display = 'inline-block';
|
||||
colorBar.style.height = '10px';
|
||||
colorBar.style.verticalAlign = 'text-top';
|
||||
colorBar.style.textAlign = 'center';
|
||||
const colourBar = document.createElement('span');
|
||||
colourBar.id = bars[i].id;
|
||||
colourBar.style.display = 'inline-block';
|
||||
colourBar.style.height = '10px';
|
||||
colourBar.style.verticalAlign = 'text-top';
|
||||
colourBar.style.textAlign = 'center';
|
||||
if (bars.length - 1 === i) {
|
||||
colorBar.style.borderTopRightRadius = '10px';
|
||||
colorBar.style.borderBottomRightRadius = '10px';
|
||||
colourBar.style.borderTopRightRadius = '10px';
|
||||
colourBar.style.borderBottomRightRadius = '10px';
|
||||
}
|
||||
if (typeof bars[i].color !== 'undefined') {
|
||||
colorBar.className = ColourBackPre + bars[i].color;
|
||||
if (typeof bars[i].colour !== 'undefined') {
|
||||
colourBar.className = ColourBackPre + bars[i].colour;
|
||||
}
|
||||
div.appendChild(colorBar);
|
||||
div.appendChild(colourBar);
|
||||
}
|
||||
|
||||
const timer = document.createElement('span');
|
||||
|
||||
@@ -26,21 +26,21 @@ export function CreateTimerBar() {
|
||||
|
||||
// Create standard Autosave bar
|
||||
const CMTimerBarAutosave = CreateTimer('CMTimerBarAutosave', 'Autosave', [
|
||||
{ id: 'CMTimerBarAutosaveBar', color: ColourPurple },
|
||||
{ id: 'CMTimerBarAutosaveBar', colour: ColourPurple },
|
||||
]);
|
||||
TimerBar.appendChild(CMTimerBarAutosave);
|
||||
|
||||
// Create standard Golden Cookie bar
|
||||
const CMTimerBarGC = CreateTimer('CMTimerBarGC', 'Next Cookie', [
|
||||
{ id: 'CMTimerBarGCMinBar', color: ColourGray },
|
||||
{ id: 'CMTimerBarGCBar', color: ColourPurple },
|
||||
{ id: 'CMTimerBarGCMinBar', colour: ColourGray },
|
||||
{ id: 'CMTimerBarGCBar', colour: ColourPurple },
|
||||
]);
|
||||
TimerBar.appendChild(CMTimerBarGC);
|
||||
|
||||
// Create standard Reindeer bar
|
||||
const CMTimerBarRen = CreateTimer('CMTimerBarRen', 'Next Reindeer', [
|
||||
{ id: 'CMTimerBarRenMinBar', color: ColourGray },
|
||||
{ id: 'CMTimerBarRenBar', color: ColourOrange },
|
||||
{ id: 'CMTimerBarRenMinBar', colour: ColourGray },
|
||||
{ id: 'CMTimerBarRenBar', colour: ColourOrange },
|
||||
]);
|
||||
TimerBar.appendChild(CMTimerBarRen);
|
||||
const TimerBarBuffTimers = document.createElement('div');
|
||||
@@ -118,9 +118,17 @@ export function UpdateTimerBar() {
|
||||
) / Game.fps,
|
||||
);
|
||||
else l('CMTimerBarGCBar').textContent = '';
|
||||
l('CMTimerBarGCTime').textContent = Math.ceil(
|
||||
const chanceToSpawn =
|
||||
Math.max(
|
||||
0,
|
||||
(Game.shimmerTypes.golden.time - Game.shimmerTypes.golden.minTime) /
|
||||
(Game.shimmerTypes.golden.maxTime - Game.shimmerTypes.golden.minTime),
|
||||
) ** 5;
|
||||
l('CMTimerBarGCTime').textContent = `${Math.ceil(
|
||||
(Game.shimmerTypes.golden.maxTime - Game.shimmerTypes.golden.time) / Game.fps,
|
||||
);
|
||||
)} ${chanceToSpawn < 0.01 ? '<' : ''}${chanceToSpawn.toLocaleString('en', {
|
||||
style: 'percent',
|
||||
})}`;
|
||||
numberOfTimers += 1;
|
||||
} else l('CMTimerBarGC').style.display = 'none';
|
||||
|
||||
@@ -153,9 +161,17 @@ export function UpdateTimerBar() {
|
||||
) / Game.fps,
|
||||
);
|
||||
else l('CMTimerBarRenBar').textContent = '';
|
||||
l('CMTimerBarRenTime').textContent = Math.ceil(
|
||||
const chanceToSpawn =
|
||||
Math.max(
|
||||
0,
|
||||
(Game.shimmerTypes.reindeer.time - Game.shimmerTypes.reindeer.minTime) /
|
||||
(Game.shimmerTypes.reindeer.maxTime - Game.shimmerTypes.reindeer.minTime),
|
||||
) ** 5;
|
||||
l('CMTimerBarRenTime').textContent = `${Math.ceil(
|
||||
(Game.shimmerTypes.reindeer.maxTime - Game.shimmerTypes.reindeer.time) / Game.fps,
|
||||
);
|
||||
)} ${chanceToSpawn < 0.01 ? '<' : ''}${chanceToSpawn.toLocaleString('en', {
|
||||
style: 'percent',
|
||||
})}`;
|
||||
numberOfTimers += 1;
|
||||
} else {
|
||||
l('CMTimerBarRen').style.display = 'none';
|
||||
@@ -171,7 +187,7 @@ export function UpdateTimerBar() {
|
||||
]);
|
||||
timer.style.display = '';
|
||||
let classColour = '';
|
||||
// Gives specific timers specific colors
|
||||
// Gives specific timers specific colours
|
||||
if (typeof BuffColours[Game.buffs[i].name] !== 'undefined') {
|
||||
classColour = BuffColours[Game.buffs[i].name];
|
||||
} else classColour = ColourPurple;
|
||||
|
||||
@@ -53,18 +53,18 @@ export function TooltipCreateWarningSection() {
|
||||
TooltipWarn.style.bottom = 'auto';
|
||||
TooltipWarn.id = 'CMDispTooltipWarningParent';
|
||||
|
||||
const create = function (boxId, color, labelTextFront, labelTextBack, deficitId) {
|
||||
const create = function (boxId, colour, labelTextFront, labelTextBack, deficitId) {
|
||||
const box = document.createElement('div');
|
||||
box.id = boxId;
|
||||
box.style.display = 'none';
|
||||
box.style.transition = 'opacity 0.1s ease-out';
|
||||
box.className = ColourBorderPre + color;
|
||||
box.className = ColourBorderPre + colour;
|
||||
box.style.padding = '2px';
|
||||
box.style.background = '#000 url(img/darkNoise.png)';
|
||||
const labelDiv = document.createElement('div');
|
||||
box.appendChild(labelDiv);
|
||||
const labelSpan = document.createElement('span');
|
||||
labelSpan.className = ColourTextPre + color;
|
||||
labelSpan.className = ColourTextPre + colour;
|
||||
labelSpan.style.fontWeight = 'bold';
|
||||
labelSpan.textContent = labelTextFront;
|
||||
labelDiv.appendChild(labelSpan);
|
||||
|
||||
@@ -26,13 +26,6 @@ import * as Create from '../CreateTooltip';
|
||||
* This function adds extra info to the Building tooltips
|
||||
*/
|
||||
export default function Building() {
|
||||
if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.TooltipBuildUpgrade === 1 &&
|
||||
Game.buyMode === 1
|
||||
) {
|
||||
const tooltipBox = l('CMTooltipBorder');
|
||||
Create.TooltipCreateCalculationSection(tooltipBox);
|
||||
|
||||
let target;
|
||||
if (Game.buyMode === 1) {
|
||||
LastTargetTooltipBuilding = target;
|
||||
@@ -46,6 +39,13 @@ export default function Building() {
|
||||
TooltipPrice = Game.Objects[TooltipName].bulkPrice;
|
||||
TooltipBonusIncome = target[TooltipName].bonus;
|
||||
|
||||
if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.TooltipBuildUpgrade === 1 &&
|
||||
Game.buyMode === 1
|
||||
) {
|
||||
const tooltipBox = l('CMTooltipBorder');
|
||||
Create.TooltipCreateCalculationSection(tooltipBox);
|
||||
|
||||
if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.TooltipBuildUpgrade ===
|
||||
1 &&
|
||||
@@ -62,11 +62,11 @@ export default function Building() {
|
||||
: '.'
|
||||
}01% of income)`;
|
||||
}
|
||||
l('CMTooltipBorder').className = ColourTextPre + target[TooltipName].color;
|
||||
l('CMTooltipBorder').className = ColourTextPre + target[TooltipName].colour;
|
||||
if (Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.PPDisplayTime)
|
||||
l('CMTooltipPP').textContent = FormatTime(target[TooltipName].pp);
|
||||
else l('CMTooltipPP').textContent = Beautify(target[TooltipName].pp, 2);
|
||||
l('CMTooltipPP').className = ColourTextPre + target[TooltipName].color;
|
||||
l('CMTooltipPP').className = ColourTextPre + target[TooltipName].colour;
|
||||
const timeColour = GetTimeColour(
|
||||
(TooltipPrice - (Game.cookies + GetWrinkConfigBank())) / GetCPS(),
|
||||
);
|
||||
@@ -74,7 +74,7 @@ export default function Building() {
|
||||
if (timeColour.text === 'Done!' && Game.cookies < target[TooltipName].price) {
|
||||
l('CMTooltipTime').textContent = `${timeColour.text} (with Wrink)`;
|
||||
} else l('CMTooltipTime').textContent = timeColour.text;
|
||||
l('CMTooltipTime').className = ColourTextPre + timeColour.color;
|
||||
l('CMTooltipTime').className = ColourTextPre + timeColour.colour;
|
||||
}
|
||||
|
||||
// Add "production left till next achievement"-bar
|
||||
|
||||
@@ -30,7 +30,7 @@ export default function Grimoire() {
|
||||
CalculateGrimoireRefillTime(minigame.magic, minigame.magicM, spellCost),
|
||||
);
|
||||
time.textContent = timeColour.text;
|
||||
time.className = ColourTextPre + timeColour.color;
|
||||
time.className = ColourTextPre + timeColour.colour;
|
||||
|
||||
// Time left untill magic spent is recovered
|
||||
if (spellCost <= minigame.magic) {
|
||||
@@ -46,7 +46,7 @@ export default function Grimoire() {
|
||||
),
|
||||
);
|
||||
recover.textContent = recoverColour.text;
|
||||
recover.className = ColourTextPre + recoverColour.color;
|
||||
recover.className = ColourTextPre + recoverColour.colour;
|
||||
}
|
||||
|
||||
// Extra information on cookies gained when spell is Conjure Baked Goods (Name === 0)
|
||||
|
||||
@@ -16,6 +16,6 @@ export default function SugarLump() {
|
||||
tooltipBox.appendChild(lumpType);
|
||||
const lumpColour = GetLumpColour(Game.lumpCurrentType);
|
||||
lumpType.textContent = lumpColour.text;
|
||||
lumpType.className = ColourTextPre + lumpColour.color;
|
||||
lumpType.className = ColourTextPre + lumpColour.colour;
|
||||
} else l('CMTooltipArea').style.display = 'none';
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ export default function Upgrade() {
|
||||
}01% of income)`;
|
||||
}
|
||||
l('CMTooltipBorder').className =
|
||||
ColourTextPre + CacheUpgrades[Game.UpgradesInStore[TooltipName].name].color;
|
||||
ColourTextPre + CacheUpgrades[Game.UpgradesInStore[TooltipName].name].colour;
|
||||
}
|
||||
|
||||
// If clicking power upgrade
|
||||
@@ -73,7 +73,7 @@ export default function Upgrade() {
|
||||
2,
|
||||
);
|
||||
l('CMTooltipPP').className =
|
||||
ColourTextPre + CacheUpgrades[Game.UpgradesInStore[TooltipName].name].color;
|
||||
ColourTextPre + CacheUpgrades[Game.UpgradesInStore[TooltipName].name].colour;
|
||||
}
|
||||
const timeColour = GetTimeColour(
|
||||
(TooltipPrice - (Game.cookies + GetWrinkConfigBank())) / GetCPS(),
|
||||
@@ -85,7 +85,7 @@ export default function Upgrade() {
|
||||
) {
|
||||
l('CMTooltipTime').textContent = `${timeColour.text} (with Wrink)`;
|
||||
} else l('CMTooltipTime').textContent = timeColour.text;
|
||||
l('CMTooltipTime').className = ColourTextPre + timeColour.color;
|
||||
l('CMTooltipTime').className = ColourTextPre + timeColour.colour;
|
||||
|
||||
// Add extra info to Chocolate egg tooltip
|
||||
if (Game.UpgradesInStore[TooltipName].name === 'Chocolate egg') {
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
import ToggleBuildingLock from './ToggleBuildingLock';
|
||||
import toggleBuildingLock from './toggleBuildingLock';
|
||||
|
||||
/**
|
||||
* This function adds a lock button to the "building view" in the middle section
|
||||
*/
|
||||
export default function CreateBuildingLockButtons() {
|
||||
export default function createBuildingLockButtons() {
|
||||
Object.keys(l('rows').children).forEach((index) => {
|
||||
const productButtons = l('rows').children[index].children[1];
|
||||
const button = document.createElement('div');
|
||||
button.id = `productLock${Number(index) + 1}`;
|
||||
button.className = 'productButton';
|
||||
button.innerHTML = 'Unlocked';
|
||||
button.innerHTML = 'Lock';
|
||||
button.onclick = function () {
|
||||
ToggleBuildingLock(Number(index) + 1);
|
||||
toggleBuildingLock(Number(index) + 1);
|
||||
};
|
||||
productButtons.appendChild(button);
|
||||
});
|
||||
35
src/Disp/buildingTiles/toggleBuildingLock.js
Normal file
35
src/Disp/buildingTiles/toggleBuildingLock.js
Normal file
@@ -0,0 +1,35 @@
|
||||
/**
|
||||
* This function toggle the locked state of a building
|
||||
* @param {number} index Index of the row to change
|
||||
*/
|
||||
export default function toggleBuildingLock(index) {
|
||||
if (l(`productLock${index}`).innerHTML === 'Lock') {
|
||||
// Add to storing array
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames.push(
|
||||
index.toString(),
|
||||
);
|
||||
|
||||
// Update styles
|
||||
l(`row${index}`).style.pointerEvents = 'none';
|
||||
l(`row${index}`).style.opacity = '0.4';
|
||||
l(`productLock${index}`).innerHTML = 'Unlock';
|
||||
l(`productLock${index}`).style.pointerEvents = 'auto';
|
||||
} else {
|
||||
// Remove from storing array
|
||||
if (
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames.includes(
|
||||
index.toString(),
|
||||
)
|
||||
) {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames =
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames.filter(
|
||||
(value) => value !== index.toString(),
|
||||
);
|
||||
}
|
||||
|
||||
// Update styles
|
||||
l(`productLock${index}`).innerHTML = 'Lock';
|
||||
l(`row${index}`).style.pointerEvents = 'auto';
|
||||
l(`row${index}`).style.opacity = '1';
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import CMDrawHook from '../Disp/DrawHook';
|
||||
import CMClickHook from '../Main/ClickHook';
|
||||
import InitializeCookieMonster from '../Main/Initialization';
|
||||
import CMLoopHook from '../Main/LoopHook';
|
||||
import load from './load';
|
||||
|
||||
/**
|
||||
* This creates a init function for the CM object. Per Game code/comments:
|
||||
@@ -30,6 +31,10 @@ export default function init() {
|
||||
Game.registerHook('click', CMClickHook);
|
||||
Game.registerHook('draw', CMDrawHook);
|
||||
Game.registerHook('logic', CMLoopHook);
|
||||
|
||||
// Load default settings if no previous saveData is found
|
||||
if (typeof Game.modSaveData.cookieMonsterMod === 'undefined') {
|
||||
load('{}');
|
||||
}
|
||||
}
|
||||
window.cookieMonsterFrameworkData.isInitializing = false;
|
||||
}
|
||||
|
||||
@@ -13,9 +13,34 @@ import InitData from '../Sim/InitializeData/InitData';
|
||||
*/
|
||||
export default function load(str) {
|
||||
InitData();
|
||||
|
||||
// Load saveData
|
||||
saveAndLoadingFunctions.loadMod('cookieMonsterMod', str, settings, headers, CMLoopHook);
|
||||
UpdateColours();
|
||||
if (
|
||||
typeof Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames ===
|
||||
'undefined'
|
||||
) {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames = [];
|
||||
}
|
||||
|
||||
// Update display with colours and locking of minigames
|
||||
UpdateColours();
|
||||
for (
|
||||
let index = 0;
|
||||
index < Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames.length;
|
||||
index++
|
||||
) {
|
||||
const buildingIndex =
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.lockedMinigames[index];
|
||||
l(`row${buildingIndex}`).style.pointerEvents = 'none';
|
||||
l(`row${buildingIndex}`).style.opacity = '0.4';
|
||||
l(`productLock${buildingIndex}`).innerHTML = 'Unlock';
|
||||
l(`productLock${buildingIndex}`).style.pointerEvents = 'auto';
|
||||
}
|
||||
|
||||
// Notify of update
|
||||
if (
|
||||
typeof Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.version !== 'undefined' &&
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.version !==
|
||||
`${VersionMajor}.${VersionMinor}`
|
||||
) {
|
||||
|
||||
@@ -17,7 +17,7 @@ import ReplaceTooltips from './ReplaceGameElements/Tooltips';
|
||||
import ReplaceNative from './ReplaceGameFunctions/ReplaceNative';
|
||||
import { LastModCount } from './VariablesAndData'; // eslint-disable-line no-unused-vars
|
||||
import AddWrinklerAreaDetect from './WrinklerArea/AddDetectArea';
|
||||
import CreateBuildingLockButtons from '../Disp/Buildings/CreateBuildingLockButtons';
|
||||
import createBuildingLockButtons from '../Disp/buildingTiles/createBuildingLockButtons';
|
||||
import createMenuInfo from '../Disp/MenuSections/createMenuInfo';
|
||||
import createMenuOptions from '../Disp/MenuSections/createMenuOptions';
|
||||
|
||||
@@ -51,7 +51,7 @@ export default function InitializeCookieMonster() {
|
||||
});
|
||||
CreateWrinklerButtons();
|
||||
UpdateBuildingUpgradeStyle();
|
||||
CreateBuildingLockButtons();
|
||||
createBuildingLockButtons();
|
||||
|
||||
ReplaceTooltips();
|
||||
AddWrinklerAreaDetect();
|
||||
|
||||
@@ -2,36 +2,36 @@ import { before, beforeEach, describe, it } from 'mocha';
|
||||
import { assert } from 'chai';
|
||||
import { l, Game } from '../../GlobalsForTesting';
|
||||
|
||||
import ToggleUpgradeBarAndColor from '../../../src/Config/Toggles/ToggleUpgradeBarAndColour';
|
||||
import ToggleUpgradeBarAndColour from '../../../src/Config/Toggles/ToggleUpgradeBarAndColour';
|
||||
|
||||
describe('ToggleUpgradeBarAndColor', () => {
|
||||
describe('ToggleUpgradeBarAndColour', () => {
|
||||
global.l = l;
|
||||
global.Game = Game;
|
||||
|
||||
beforeEach(() => {
|
||||
global.domids = {};
|
||||
ToggleUpgradeBarAndColor();
|
||||
ToggleUpgradeBarAndColour();
|
||||
});
|
||||
|
||||
describe('UpBarColor = 0', () => {
|
||||
describe('UpBarColour = 0', () => {
|
||||
before(() => {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColor = 0;
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColour = 0;
|
||||
});
|
||||
it('Toggle style correctly', () => {
|
||||
assert.equal(domids.CMUpgradeBar.style.display, 'none'); // eslint-disable-line no-undef
|
||||
});
|
||||
});
|
||||
describe('UpBarColor = 1', () => {
|
||||
describe('UpBarColour = 1', () => {
|
||||
before(() => {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColor = 1;
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColour = 1;
|
||||
});
|
||||
it('Toggle style correctly', () => {
|
||||
assert.equal(domids.CMUpgradeBar.style.display, ''); // eslint-disable-line no-undef
|
||||
});
|
||||
});
|
||||
describe('UpBarColor = 2', () => {
|
||||
describe('UpBarColour = 2', () => {
|
||||
before(() => {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColor = 2;
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.UpBarColour = 2;
|
||||
});
|
||||
it('Toggle style correctly', () => {
|
||||
assert.equal(domids.CMUpgradeBar.style.display, 'none'); // eslint-disable-line no-undef
|
||||
|
||||
@@ -5,25 +5,25 @@ import GetTimeColour from '../../src/Disp/BeautifyAndFormatting/GetTimeColour';
|
||||
|
||||
describe('GetTimeColour', () => {
|
||||
it('Format when time is less than 60', () => {
|
||||
expect(GetTimeColour(59).color).to.deep.equal('Yellow');
|
||||
expect(GetTimeColour(59).colour).to.deep.equal('Yellow');
|
||||
});
|
||||
it('Format when time is more than 60', () => {
|
||||
expect(GetTimeColour(61).color).to.deep.equal('Orange');
|
||||
expect(GetTimeColour(61).colour).to.deep.equal('Orange');
|
||||
});
|
||||
it('Format when time is more than 300', () => {
|
||||
expect(GetTimeColour(301).color).to.deep.equal('Red');
|
||||
expect(GetTimeColour(301).colour).to.deep.equal('Red');
|
||||
});
|
||||
describe('TimeFormat = 0', () => {
|
||||
before(() => {
|
||||
Game.mods.cookieMonsterFramework.saveData.cookieMonsterMod.settings.TimeFormat = 0;
|
||||
});
|
||||
it('Format when time is 0', () => {
|
||||
expect(GetTimeColour(0)).to.deep.equal({ text: 'Done!', color: 'Green' });
|
||||
expect(GetTimeColour(0)).to.deep.equal({ text: 'Done!', colour: 'Green' });
|
||||
});
|
||||
it('Format when time is negative', () => {
|
||||
expect(GetTimeColour(-1)).to.deep.equal({
|
||||
text: 'Done!',
|
||||
color: 'Green',
|
||||
colour: 'Green',
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -34,13 +34,13 @@ describe('GetTimeColour', () => {
|
||||
it('Format when time is 0', () => {
|
||||
expect(GetTimeColour(0)).to.deep.equal({
|
||||
text: '00:00:00:00:00',
|
||||
color: 'Green',
|
||||
colour: 'Green',
|
||||
});
|
||||
});
|
||||
it('Format when time is negative', () => {
|
||||
expect(GetTimeColour(-1)).to.deep.equal({
|
||||
text: '00:00:00:00:00',
|
||||
color: 'Green',
|
||||
colour: 'Green',
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -4,9 +4,9 @@ const webpack = require('webpack');
|
||||
module.exports = function (env) {
|
||||
return {
|
||||
mode: 'production',
|
||||
devtool: env.production ? 'source-map' : 'inline-source-map',
|
||||
devtool: env.minimize ? 'source-map' : 'inline-source-map',
|
||||
optimization: {
|
||||
minimize: !!env.production,
|
||||
minimize: !!env.minimize,
|
||||
},
|
||||
entry: './src/CookieMonster.js',
|
||||
resolve: {
|
||||
@@ -22,12 +22,13 @@ module.exports = function (env) {
|
||||
],
|
||||
},
|
||||
output: {
|
||||
filename: 'CookieMonsterDev.js',
|
||||
filename: env.finalfile ? 'CookieMonster.js' : 'CookieMonsterDev.js',
|
||||
path: path.resolve(__dirname, 'dist'),
|
||||
},
|
||||
plugins: [
|
||||
new webpack.SourceMapDevToolPlugin({
|
||||
filename: 'CookieMonsterDev.js.map',
|
||||
filename:
|
||||
env.finalfile && env.minimize ? 'CookieMonster.js.map' : 'CookieMonsterDev.js.map',
|
||||
publicPath: 'https://cookiemonsterteam.github.io/CookieMonster/dist/',
|
||||
fileContext: 'public',
|
||||
}),
|
||||
|
||||
Reference in New Issue
Block a user