Build 29074419

This commit is contained in:
Renan LE CARO 2025-04-12 15:39:32 +02:00
parent b15eb873b1
commit 48ac639901
14 changed files with 28 additions and 57 deletions

View file

@ -13,8 +13,9 @@ Break colourful bricks, catch bouncing coins and select powerful upgrades !
# Current priorities
The goal of this project is to make software used by many people. The game is already pretty fun. I'm now trying to
translate it to Arabic and Russian. Other translation are very welcome, contact me if you'd like to submit one.
The goal of this project is to make a game used by many people. The game is already pretty fun. I'm now trying to
translate it to (Lebanese) Arabic, Russian and (Chilean) Spanish. Other translation are very welcome, contact me
if you'd like to submit one.
While translations are being written, I'll try to avoid adding features that require new translations. That means only
bug fixes and optimisations, maybe adding levels. Once we have a nice stable release available in 4
@ -24,14 +25,14 @@ languages, I may add features again.
# Changelog
## To do
- game crashes when reaching level 12 (no level info in runLevels)
- auto-detect device performance at first startup and adjust settings accordingly
- fix game breaking issue
- balance existing perks
-
## Done
- game crashes when reaching level 12 (no level info in runLevels)
## 29074385
- added back some extra languages
- superhot: fixed particles durations and level duration
- bricks aattract coins : less powerfull

View file

@ -29,8 +29,8 @@ android {
applicationId = "me.lecaro.breakout"
minSdk = 21
targetSdk = 34
versionCode = 29074385
versionName = "29074385"
versionCode = 29074419
versionName = "29074419"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary = true

File diff suppressed because one or more lines are too long

16
dist/index.html vendored

File diff suppressed because one or more lines are too long

View file

@ -1,5 +1,5 @@
// The version of the cache.
const VERSION = "29074385";
const VERSION = "29074419";
// The name of the cache
const CACHE_NAME = `breakout-71-${VERSION}`;

View file

@ -1 +1 @@
"29074385"
"29074419"

View file

@ -651,7 +651,7 @@ export async function setLevel(gameState: GameState, l: number) {
}
gameState.currentLevel = l;
gameState.level = gameState.runLevels[l];
gameState.level = gameState.runLevels[l % gameState.runLevels.length];
gameState.levelTime = 0;
gameState.winAt = 0;

View file

@ -395,7 +395,6 @@
"upgrades.trickledown.name": "اقتصاد التسرب",
"upgrades.trickledown.tooltip": "تظهر العملات المعدنية في الجزء العلوي من الشاشة.",
"upgrades.trickledown.verbose_description": "قد يساعدك هذا على وضع بعض العملات المعدنية جانبًا. ",
"upgrades.unbounded.help_no_ceiling": "",
"upgrades.unbounded.name": "غير محدود",
"upgrades.unbounded.tooltip": "يضيف مساحة إلى يسار ويمين المستوى، ولكن مجدافك لا يمكنه الذهاب إلى هذا الحد.",
"upgrades.unbounded.verbose_description": "قد يساعدك ترقية أخرى على توسيع مدى مجدافك.",

View file

@ -11102,33 +11102,6 @@
<folder_node>
<name>unbounded</name>
<children>
<concept_node>
<name>help_no_ceiling</name>
<description/>
<comment/>
<translations>
<translation>
<language>ar-LB</language>
<approved>false</approved>
</translation>
<translation>
<language>en-US</language>
<approved>false</approved>
</translation>
<translation>
<language>es-CL</language>
<approved>false</approved>
</translation>
<translation>
<language>fr-FR</language>
<approved>false</approved>
</translation>
<translation>
<language>ru-RU</language>
<approved>false</approved>
</translation>
</translations>
</concept_node>
<concept_node>
<name>name</name>
<description/>

View file

@ -395,7 +395,6 @@
"upgrades.trickledown.name": "Trickle down economics",
"upgrades.trickledown.tooltip": "The coins appear at the top of the screen.",
"upgrades.trickledown.verbose_description": "It might help you put some coins aside.",
"upgrades.unbounded.help_no_ceiling": "",
"upgrades.unbounded.name": "Padding",
"upgrades.unbounded.tooltip": "Adds space left and right of the level, but your paddle can't go that far. ",
"upgrades.unbounded.verbose_description": "Another upgrade might help you extends the reach of your paddle. ",

View file

@ -285,7 +285,7 @@
"upgrades.implosions.tooltip": "Las explosiones absorben las piezas en lugar de hacerlas estallar.",
"upgrades.implosions.verbose_description": "La fuerza de la explosión se aplica en sentido contrario. El nivel 2+ aumenta la potencia de la implosión.",
"upgrades.instant_upgrade.name": "Más vale pájaro en mano que ciento volando",
"upgrades.instant_upgrade.tooltip": "-1 mejora ahora, pero una elección de meses hasta el final del juego.",
"upgrades.instant_upgrade.tooltip": "+2 de mejora ahora, -1 de elección hasta el final del juego.",
"upgrades.instant_upgrade.verbose_description": "Elige inmediatamente dos mejoras para conseguir una gratis y otra para pagar la que usaste para conseguir esta ventaja. Cada vez que elijas mejoras del siguiente menú, tendrás menos opciones.",
"upgrades.left_is_lava.name": "Evitar el lado izquierdo",
"upgrades.left_is_lava.tooltip": "+{{lvl}} combo por ladrillo, se pierde al tocar el borde izquierdo",
@ -395,7 +395,6 @@
"upgrades.trickledown.name": "Escorrentía",
"upgrades.trickledown.tooltip": "Las monedas aparecen en la parte superior de la pantalla.",
"upgrades.trickledown.verbose_description": "Podría ayudarte a ahorrar algunas monedas. ",
"upgrades.unbounded.help_no_ceiling": "+{{lvl}} combo por ladrillo, más lados o techo",
"upgrades.unbounded.name": "Liberado, entregado",
"upgrades.unbounded.tooltip": "+{{lvl}} combo por ladrillo, más lados para mantener la pelota en juego, peligro",
"upgrades.unbounded.verbose_description": "Espero que hayas encontrado la forma de mantener tu bola en la pantalla. En el nivel 2+, el techo también desaparecerá. Se trata de una ventaja avanzada.",

View file

@ -395,7 +395,6 @@
"upgrades.trickledown.name": "Ruissellement",
"upgrades.trickledown.tooltip": "Les pièces apparaissent en haut de l'écran.",
"upgrades.trickledown.verbose_description": "Ça pourrait vous aider à mettre des pièces de coté. ",
"upgrades.unbounded.help_no_ceiling": "",
"upgrades.unbounded.name": "Besoin d'espace",
"upgrades.unbounded.tooltip": "Plus d'espace autour des briques, mais la raquette ne peut pas aller aussi loin.",
"upgrades.unbounded.verbose_description": "Une autre amélioration pourrait vous permettre d'étendre la portée de votre raquette.",

View file

@ -395,7 +395,6 @@
"upgrades.trickledown.name": "Экономика по принципу \"копеечной монеты",
"upgrades.trickledown.tooltip": "Монеты появляются в верхней части экрана.",
"upgrades.trickledown.verbose_description": "Это может помочь вам отложить несколько монет.",
"upgrades.unbounded.help_no_ceiling": "",
"upgrades.unbounded.name": "Набивка",
"upgrades.unbounded.tooltip": "Добавляет пространство слева и справа от уровня, но ваше весло не может пройти так далеко.",
"upgrades.unbounded.verbose_description": "Еще одна модернизация может помочь вам увеличить радиус действия весла.",

View file

@ -37,9 +37,11 @@ export function getRunLevels(
.filter((l) => l.name !== params?.levelToAvoid)
.sort(() => Math.random() - 0.5);
return firstLevel.concat(
return firstLevel
.concat(
restInRandomOrder.slice(0, 7 + 3).sort((a, b) => a.sortKey - b.sortKey),
);
)
.concat(restInRandomOrder.slice(7 + 3));
}
export function newGameState(params: RunParams): GameState {