Browse Source

Make powerups appear more slowly; add upgrades to speed them up

tags/v0.0.4
Fen Dweller 5 years ago
parent
commit
cd468417c6
2 changed files with 72 additions and 2 deletions
  1. +63
    -1
      constants.js
  2. +9
    -1
      gorge.js

+ 63
- 1
constants.js View File

@@ -197,6 +197,14 @@ const effect_types = {
"desc": function(effect) { "desc": function(effect) {
return "Devour larger prey"; return "Devour larger prey";
} }
},
"powerup-freq": {
"apply": function(effect, delay) {
return delay * effect.amount;
},
"desc": function(effect) {
return "Speed up powerup spawns by " + Math.round((1 / effect.amount - 1) * 100) + "%";
}
} }
} }


@@ -210,6 +218,7 @@ function createTemplateUpgrades() {
createClickUpgrades(); createClickUpgrades();
createHelperUpgrades(); createHelperUpgrades();
createClickVictimUpgrades(); createClickVictimUpgrades();
createPowerupFreqUpgrades();
} }


const prodUpgradeCounts = [1, 5, 10, 25, 50, 75, 100]; const prodUpgradeCounts = [1, 5, 10, 25, 50, 75, 100];
@@ -335,7 +344,6 @@ function createHelperUpgrades() {


for (let text of texts) { for (let text of texts) {
const key = prefix + infix + suffix + "-" + counter; const key = prefix + infix + suffix + "-" + counter;
console.log(key);
upgrades[key] = { upgrades[key] = {
"name": text.name, "name": text.name,
"desc": text.desc, "desc": text.desc,
@@ -405,6 +413,38 @@ function createClickVictimUpgrades() {
}); });
} }



function createPowerupFreqUpgrades() {
const prefix = "powerup-freq-";
let counter = 1;
powerupFreqUpgradeText.forEach(text => {
upgrades[prefix + counter] = {
"name": text.name,
"desc": text.desc,
"icon": "fa-drumstick-bite",
"cost": {
"food": 1000 * Math.pow(10, counter)
},
"effects": [
{
"type": "powerup-freq",
"id": prefix + counter,
"amount": 0.5
}
],
"prereqs": {
"upgrades": [
]
}
};
if (counter > 1) {
upgrades[prefix + counter].prereqs.upgrades.push(prefix + (counter - 1));
}
counter += 1;
});
}

let prodUpgradeText = { let prodUpgradeText = {
"micro": [ "micro": [
{ {
@@ -1003,6 +1043,28 @@ const clickVictimUpgradeText = {
} }
}; };


const powerupFreqUpgradeText = [
{
name: "powerup-freq-1",
desc: "",
},
{
name: "powerup-freq-2",
desc: "",
},
{
name: "powerup-freq-3",
desc: "",
},
{
name: "powerup-freq-4",
desc: "",
},
{
name: "powerup-freq-5",
desc: "",
}
]
// to avoid yoinking stuff from global variables directly... // to avoid yoinking stuff from global variables directly...


// state.ownedUpgrades == ownedUpgrades // state.ownedUpgrades == ownedUpgrades


+ 9
- 1
gorge.js View File

@@ -826,9 +826,17 @@ function doPowerup() {
body.removeChild(button); body.removeChild(button);
}, lifetime); }, lifetime);


let delay = 60000 + Math.random() * 30000;

for (let effect of effects["powerup-freq"]) {
if (ownedUpgrades[effect.parent]) {
delay = effect.apply(delay);
}
}

setTimeout(() => { setTimeout(() => {
doPowerup(); doPowerup();
}, 20000);
}, delay);


const state = { const state = {
ownedUpgrades: ownedUpgrades, ownedUpgrades: ownedUpgrades,


Loading…
Cancel
Save