mirror of
https://gitlab.com/lecarore/breakout71.git
synced 2025-04-26 23:16:15 -04:00
wip
This commit is contained in:
parent
3d3e7805d6
commit
16911620c0
16 changed files with 55 additions and 95 deletions
|
@ -17,6 +17,11 @@ Break colourful bricks, catch bouncing coins and select powerful upgrades !
|
|||
|
||||
## Done
|
||||
|
||||
- removed : instant_upgrade
|
||||
- nerfed : helium : now need to be level 3 to have the same effect of keeping coins up
|
||||
|
||||
## 29088680
|
||||
|
||||
- new perk: happy family: + lvl points per paddle bounce per extra ball, reset on ball lost
|
||||
- nerfed perk : sticky coins : stick to same color at level 1, any color at level 2+
|
||||
- nerfed perk: zen : combo increases every 3 seconds, resets on explosion
|
||||
|
@ -342,7 +347,7 @@ Break colourful bricks, catch bouncing coins and select powerful upgrades !
|
|||
|
||||
## Easy perks ideas
|
||||
|
||||
- "+1 coin for each brick within a small radius of the broken brick" ?
|
||||
- "+1 coin for each ball within a small radius of the broken brick" ?
|
||||
- two for one : add a 2 for one upgrade combo to the choice lists
|
||||
- cash out : double last level's gains
|
||||
- snowball : Combo resets every 0.1s . +1 combo for each combo gained Since last reset.
|
||||
|
@ -388,6 +393,7 @@ Break colourful bricks, catch bouncing coins and select powerful upgrades !
|
|||
- the more balls are close to a brick, the more combo is gained when breaking it. If only one ball, loose one point or reset
|
||||
- ball avoids brick of wrong color
|
||||
- puck slowly follows desired position, but +1 combo
|
||||
- knockback : hitting a brick pushes it (requires sturdy bricks)
|
||||
|
||||
## Hard perk ideas
|
||||
- accelerometer controls coins and balls
|
||||
|
|
66
dist/index.html
vendored
66
dist/index.html
vendored
File diff suppressed because one or more lines are too long
|
@ -704,11 +704,6 @@
|
|||
"size": 7,
|
||||
"bricks": "ttt____tbbb___tbttt__tbtbbb__btbbb___tbbb____bbb_"
|
||||
},
|
||||
{
|
||||
"name": "icon:instant_upgrade",
|
||||
"size": 5,
|
||||
"bricks": "ttt__tbbb_tbbb_tbbb__bbb_"
|
||||
},
|
||||
{
|
||||
"name": "icon:checkmark_checked",
|
||||
"size": 6,
|
||||
|
|
|
@ -299,7 +299,7 @@ export async function openUpgradesPicker(gameState: GameState) {
|
|||
help: string;
|
||||
}> = pickRandomUpgrades(
|
||||
gameState,
|
||||
3 + gameState.perks.one_more_choice - gameState.perks.instant_upgrade,
|
||||
3 + gameState.perks.one_more_choice ,
|
||||
);
|
||||
if (!actions.length) break;
|
||||
|
||||
|
@ -359,9 +359,6 @@ export async function openUpgradesPicker(gameState: GameState) {
|
|||
gameState.rerolls--;
|
||||
} else {
|
||||
gameState.perks[upgradeId]++;
|
||||
if (upgradeId === "instant_upgrade") {
|
||||
repeats += 2;
|
||||
}
|
||||
gameState.runStatistics.upgrades_picked++;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1181,7 +1181,7 @@ export function gameStateTick(
|
|||
Math.abs(coin.x - gameState.puckPosition) * 2 >
|
||||
gameState.puckWidth + coin.size;
|
||||
let dvy =
|
||||
frames * coin.weight * 0.8 * (flip ? -gameState.perks.helium : 1);
|
||||
frames * coin.weight * 0.8 * (flip ? 1-gameState.perks.helium*0.6 : 1);
|
||||
|
||||
if (gameState.perks.etherealcoins) {
|
||||
if (gameState.perks.helium) {
|
||||
|
|
|
@ -306,7 +306,6 @@ function isExcluded(id: PerkId) {
|
|||
"extra_levels",
|
||||
"extra_life",
|
||||
"one_more_choice",
|
||||
"instant_upgrade",
|
||||
"shunt",
|
||||
"slow_down",
|
||||
]);
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
"upgrades.happy_family.verbose_description": "",
|
||||
"upgrades.helium.name": "الهيليوم",
|
||||
"upgrades.helium.tooltip": "انعكست الجاذبية إلى اليسار واليمين من المجداف",
|
||||
"upgrades.helium.verbose_description": "يؤثر هذا على العملات المعدنية وسيسمح لها بالطفو حتى تصبح جاهزًا لالتقاطها.",
|
||||
"upgrades.helium.verbose_description": "",
|
||||
"upgrades.hot_start.name": "بداية ساخنة",
|
||||
"upgrades.hot_start.tooltip": "ابدأ عند المجموعة {{start}}، -{{loss}} مجموعة في الثانية",
|
||||
"upgrades.hot_start.verbose_description": "في بداية كل مستوى، تبدأ مجموعتك بـ +٣٠ نقطة، ثم تنخفض نقطة واحدة كل ثانية. يتراكم هذا التأثير مع مزايا أخرى.",
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
"upgrades.happy_family.verbose_description": "",
|
||||
"upgrades.helium.name": "Helium",
|
||||
"upgrades.helium.tooltip": "Umgekehrte Schwerkraft links und rechts des Paddels",
|
||||
"upgrades.helium.verbose_description": "Dies wirkt sich auf die Münzen aus und lässt sie nach oben treiben, bis Sie bereit sind, sie aufzuheben.",
|
||||
"upgrades.helium.verbose_description": "",
|
||||
"upgrades.hot_start.name": "Heißer Start",
|
||||
"upgrades.hot_start.tooltip": "Start bei Kombo {{start}}, -{{loss}} Kombo pro Sekunde",
|
||||
"upgrades.hot_start.verbose_description": "Zu Beginn eines jeden Levels beginnt deine Kombo mit +30 Punkten, aber dann wird sie jede Sekunde um einen Punkt verringert. Der Effekt ist mit anderen Perks stapelbar.",
|
||||
|
|
|
@ -317,8 +317,8 @@
|
|||
"upgrades.happy_family.tooltip": "+1 combo per extra ball for each paddle bounce. Combo resets when a ball is lost. ",
|
||||
"upgrades.happy_family.verbose_description": "Only the ball above 1 give combo.",
|
||||
"upgrades.helium.name": "Helium",
|
||||
"upgrades.helium.tooltip": "Gravity reversed left and right of paddle",
|
||||
"upgrades.helium.verbose_description": "This affects the coins and will let the float up until you are ready to pick them up.",
|
||||
"upgrades.helium.tooltip": "Gravity limited left and right of paddle",
|
||||
"upgrades.helium.verbose_description": "At level 1, gravity is reduced. At level 2, coins slowly float up. At level 3 they really fly.",
|
||||
"upgrades.hot_start.name": "Hot start",
|
||||
"upgrades.hot_start.tooltip": "Start at combo {{start}}, -{{loss}} combo per second",
|
||||
"upgrades.hot_start.verbose_description": "At the start of every level, your combo will start at +30 points, but then every second it will be decreased by one. The effect stacks with other perks. ",
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
"upgrades.happy_family.verbose_description": "",
|
||||
"upgrades.helium.name": "Helio",
|
||||
"upgrades.helium.tooltip": "Las piezas flotan en lugar de caer alrededor de la raqueta.",
|
||||
"upgrades.helium.verbose_description": "Las monedas esperarán a estar debajo de la raqueta para caer.",
|
||||
"upgrades.helium.verbose_description": "",
|
||||
"upgrades.hot_start.name": "Arranque en caliente",
|
||||
"upgrades.hot_start.tooltip": "Combo a {{start}}, -{{loss}} combo por segundo",
|
||||
"upgrades.hot_start.verbose_description": "Al principio de cada nivel, tu combo comenzará con +30 puntos, pero cada segundo se reducirá en un punto. ",
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
"upgrades.happy_family.verbose_description": "",
|
||||
"upgrades.helium.name": "Hélium",
|
||||
"upgrades.helium.tooltip": "Les pièce flottent au lieu de tomber autours de la raquette.",
|
||||
"upgrades.helium.verbose_description": "Les pièces attendront d'être sous la raquette pour tomber. ",
|
||||
"upgrades.helium.verbose_description": "",
|
||||
"upgrades.hot_start.name": "Démarrage à chaud",
|
||||
"upgrades.hot_start.tooltip": "Combo à {{start}}, -{{loss}} combo par seconde",
|
||||
"upgrades.hot_start.verbose_description": "Au début de chaque niveau, votre combo commencera à +30 points, mais à chaque seconde, il sera diminué d'un point. ",
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
"upgrades.happy_family.verbose_description": "",
|
||||
"upgrades.helium.name": "Гелий",
|
||||
"upgrades.helium.tooltip": "Гравитация изменяется слева и справа от весла",
|
||||
"upgrades.helium.verbose_description": "Это повлияет на монеты и позволит им плавать до тех пор, пока вы не соберете их.",
|
||||
"upgrades.helium.verbose_description": "",
|
||||
"upgrades.hot_start.name": "Горячий старт",
|
||||
"upgrades.hot_start.tooltip": "Начните с комбо {{start}}, -{{loss}} комбо в секунду",
|
||||
"upgrades.hot_start.verbose_description": "В начале каждого уровня ваше комбо будет начинаться с +30 очков, но затем каждую секунду оно будет уменьшаться на одно. Эффект суммируется с другими перками.",
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
"upgrades.happy_family.verbose_description": "",
|
||||
"upgrades.helium.name": "Helyum",
|
||||
"upgrades.helium.tooltip": "Yerçekimi küreğin solunda ve sağında tersine döndü",
|
||||
"upgrades.helium.verbose_description": "Bu, paraları etkileyecek ve siz onları almaya hazır olana kadar paraların havada asılı kalmasına neden olacaktır.",
|
||||
"upgrades.helium.verbose_description": "",
|
||||
"upgrades.hot_start.name": "Sıcak başlangıç",
|
||||
"upgrades.hot_start.tooltip": " {{start}}kombosundan başla, saniyede{{loss}} kombo",
|
||||
"upgrades.hot_start.verbose_description": "Her seviyenin başında kombonuz +30 puanla başlayacak, ancak daha sonra her saniye bir puan düşecek. Etki diğer avantajlarla birikiyor.",
|
||||
|
|
|
@ -271,7 +271,10 @@ export function render(gameState: GameState) {
|
|||
ctx.globalAlpha = 1;
|
||||
ctx.globalCompositeOperation = "source-over";
|
||||
const lastExplosionDelay = gameState.levelTime - gameState.lastExplosion + 5;
|
||||
const shaked = lastExplosionDelay < 200 && !isOptionOn("basic");
|
||||
|
||||
const shaked = lastExplosionDelay < 200 && !isOptionOn("basic") &&
|
||||
// Otherwise, if you pause after an explosion, moving the mouses shakes the picture
|
||||
gameState.running;
|
||||
if (shaked) {
|
||||
const amplitude =
|
||||
((gameState.perks.bigger_explosions + 1) * 50) / lastExplosionDelay;
|
||||
|
|
|
@ -4,7 +4,6 @@ import { t } from "./i18n/i18n";
|
|||
import { icons, upgrades } from "./loadGameData";
|
||||
import { getSettingValue, getTotalScore, setSettingValue } from "./settings";
|
||||
import { isOptionOn } from "./options";
|
||||
import { notStartingPerk } from "./upgrades";
|
||||
|
||||
export function startingPerkMenuButton() {
|
||||
return {
|
||||
|
@ -20,7 +19,6 @@ export function startingPerkMenuButton() {
|
|||
|
||||
export function isBlackListedForStart(u: Upgrade) {
|
||||
return !!(
|
||||
notStartingPerk.includes(u.id) ||
|
||||
u.requires ||
|
||||
u.threshold > getTotalScore()
|
||||
);
|
||||
|
|
|
@ -8,11 +8,8 @@ export const noCreative: PerkId[] = [
|
|||
"extra_levels",
|
||||
"shunt",
|
||||
"one_more_choice",
|
||||
"instant_upgrade",
|
||||
];
|
||||
|
||||
// Those perks are excluded from the starting perks list
|
||||
export const notStartingPerk: PerkId[] = ["instant_upgrade"];
|
||||
|
||||
export const rawUpgrades = [
|
||||
{
|
||||
|
@ -423,16 +420,17 @@ export const rawUpgrades = [
|
|||
},
|
||||
{
|
||||
requires: "",
|
||||
|
||||
threshold: 55000,
|
||||
gift: false,
|
||||
|
||||
id: "instant_upgrade",
|
||||
max: 2,
|
||||
adventure: false,
|
||||
name: t("upgrades.instant_upgrade.name"),
|
||||
help: (lvl: number) => t("upgrades.instant_upgrade.tooltip", { lvl }),
|
||||
fullHelp: t("upgrades.instant_upgrade.verbose_description"),
|
||||
id: "double_or_nothing",
|
||||
max: 3,
|
||||
name: t("upgrades.double_or_nothing.name"),
|
||||
help: (lvl: number) =>
|
||||
t("upgrades.double_or_nothing.tooltip", {
|
||||
percent: lvl * 10,
|
||||
multiplier: 1 + lvl,
|
||||
}),
|
||||
fullHelp: t("upgrades.double_or_nothing.verbose_description"),
|
||||
},
|
||||
{
|
||||
requires: "",
|
||||
|
@ -447,19 +445,17 @@ export const rawUpgrades = [
|
|||
},
|
||||
{
|
||||
requires: "",
|
||||
|
||||
threshold: 65000,
|
||||
gift: false,
|
||||
|
||||
id: "helium",
|
||||
max: 1,
|
||||
max: 3,
|
||||
name: t("upgrades.helium.name"),
|
||||
help: (lvl: number) => t("upgrades.helium.tooltip"),
|
||||
fullHelp: t("upgrades.helium.verbose_description"),
|
||||
},
|
||||
{
|
||||
requires: "",
|
||||
|
||||
threshold: 70000,
|
||||
gift: true,
|
||||
|
||||
|
@ -862,20 +858,6 @@ export const rawUpgrades = [
|
|||
help: (lvl: number) => t("upgrades.sticky_coins.tooltip"),
|
||||
fullHelp: t("upgrades.sticky_coins.verbose_description"),
|
||||
},
|
||||
{
|
||||
requires: "",
|
||||
threshold: 235000,
|
||||
gift: false,
|
||||
id: "double_or_nothing",
|
||||
max: 3,
|
||||
name: t("upgrades.double_or_nothing.name"),
|
||||
help: (lvl: number) =>
|
||||
t("upgrades.double_or_nothing.tooltip", {
|
||||
percent: lvl * 10,
|
||||
multiplier: 1 + lvl,
|
||||
}),
|
||||
fullHelp: t("upgrades.double_or_nothing.verbose_description"),
|
||||
},
|
||||
{
|
||||
requires: "",
|
||||
threshold: 240000,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue