Build 29071397

This commit is contained in:
Renan LE CARO 2025-04-10 13:17:38 +02:00
parent 5f33aad670
commit 16880533dd
19 changed files with 123 additions and 49 deletions

View file

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

File diff suppressed because one or more lines are too long

55
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. // The version of the cache.
const VERSION = "29070121"; const VERSION = "29071397";
// The name of the cache // The name of the cache
const CACHE_NAME = `breakout-71-${VERSION}`; const CACHE_NAME = `breakout-71-${VERSION}`;

View file

@ -1 +1 @@
"29070121" "29071397"

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "قد يؤدي إلى إبطاء بعض الهواتف.", "main_menu.sounds_help": "قد يؤدي إلى إبطاء بعض الهواتف.",
"main_menu.starting_perks": "امتيازات البداية", "main_menu.starting_perks": "امتيازات البداية",
"main_menu.starting_perks_checked": "عند بدء لعبة جديدة، ستُمنح إحدى هذه المزايا. انقر على أي ميزة لاستبعادها.", "main_menu.starting_perks_checked": "عند بدء لعبة جديدة، ستُمنح إحدى هذه المزايا. انقر على أي ميزة لاستبعادها.",
"main_menu.starting_perks_full_random": "لقد تم إزالة جميع المزايا، وسيكون الاختيار عشوائيًا.",
"main_menu.starting_perks_help": "اختر الترقيات الأولية الممكنة", "main_menu.starting_perks_help": "اختر الترقيات الأولية الممكنة",
"main_menu.starting_perks_unchecked": "لا يتم تقديم الامتيازات المذكورة أدناه كامتيازات ابتدائية، ولكن يمكنك النقر عليها لإضافتها إلى المجموعة.", "main_menu.starting_perks_unchecked": "لا يتم تقديم الامتيازات المذكورة أدناه كامتيازات ابتدائية، ولكن يمكنك النقر عليها لإضافتها إلى المجموعة.",
"main_menu.title": "الاختراق 71", "main_menu.title": "الاختراق 71",

View file

@ -5237,6 +5237,53 @@
</translation> </translation>
</translations> </translations>
</concept_node> </concept_node>
<concept_node>
<name>starting_perks_full_random</name>
<description/>
<comment/>
<translations>
<translation>
<language>ar-SA</language>
<approved>false</approved>
</translation>
<translation>
<language>de-DE</language>
<approved>false</approved>
</translation>
<translation>
<language>en-US</language>
<approved>false</approved>
</translation>
<translation>
<language>es-ES</language>
<approved>false</approved>
</translation>
<translation>
<language>fr-FR</language>
<approved>false</approved>
</translation>
<translation>
<language>ko-KR</language>
<approved>false</approved>
</translation>
<translation>
<language>ru-RU</language>
<approved>false</approved>
</translation>
<translation>
<language>ur-PK</language>
<approved>false</approved>
</translation>
<translation>
<language>uz-Latn-UZ</language>
<approved>false</approved>
</translation>
<translation>
<language>zh-CN</language>
<approved>false</approved>
</translation>
</translations>
</concept_node>
<concept_node> <concept_node>
<name>starting_perks_help</name> <name>starting_perks_help</name>
<description/> <description/>

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "Kann einige Telefone verlangsamen.", "main_menu.sounds_help": "Kann einige Telefone verlangsamen.",
"main_menu.starting_perks": "Startvorteile", "main_menu.starting_perks": "Startvorteile",
"main_menu.starting_perks_checked": "Wenn Sie ein neues Spiel beginnen, wird Ihnen eine dieser Vergünstigungen angeboten. Klicken Sie auf eine Vergünstigung, um sie auszuschließen.", "main_menu.starting_perks_checked": "Wenn Sie ein neues Spiel beginnen, wird Ihnen eine dieser Vergünstigungen angeboten. Klicken Sie auf eine Vergünstigung, um sie auszuschließen.",
"main_menu.starting_perks_full_random": "Alle Vorteile wurden entfernt, die Auswahl erfolgt nach dem Zufallsprinzip.",
"main_menu.starting_perks_help": "Wählen Sie mögliche Start-Upgrades", "main_menu.starting_perks_help": "Wählen Sie mögliche Start-Upgrades",
"main_menu.starting_perks_unchecked": "Die folgenden Vergünstigungen werden nicht als Startvergünstigungen angeboten, aber Sie können sie durch Anklicken zum Pool hinzufügen.", "main_menu.starting_perks_unchecked": "Die folgenden Vergünstigungen werden nicht als Startvergünstigungen angeboten, aber Sie können sie durch Anklicken zum Pool hinzufügen.",
"main_menu.title": "Breakout 71", "main_menu.title": "Breakout 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "Can slow down some phones.", "main_menu.sounds_help": "Can slow down some phones.",
"main_menu.starting_perks": "Starting perks", "main_menu.starting_perks": "Starting perks",
"main_menu.starting_perks_checked": "When you start a new game, one of those perks will be given to you. Click a perk to exclude it. ", "main_menu.starting_perks_checked": "When you start a new game, one of those perks will be given to you. Click a perk to exclude it. ",
"main_menu.starting_perks_full_random": "All benefits have been removed, the choice will be random.",
"main_menu.starting_perks_help": "Choose possible starting upgrades", "main_menu.starting_perks_help": "Choose possible starting upgrades",
"main_menu.starting_perks_unchecked": "The perks below are not offered as starting perks, but you can click to add them to the pool. ", "main_menu.starting_perks_unchecked": "The perks below are not offered as starting perks, but you can click to add them to the pool. ",
"main_menu.title": "Breakout 71", "main_menu.title": "Breakout 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "Ralentiza ciertos teléfonos.", "main_menu.sounds_help": "Ralentiza ciertos teléfonos.",
"main_menu.starting_perks": "Beneficios iniciales", "main_menu.starting_perks": "Beneficios iniciales",
"main_menu.starting_perks_checked": "Cuando inicies una nueva partida, se te asignará una de estas ventajas. Haz clic en una ventaja para excluirla.", "main_menu.starting_perks_checked": "Cuando inicies una nueva partida, se te asignará una de estas ventajas. Haz clic en una ventaja para excluirla.",
"main_menu.starting_perks_full_random": "Se han eliminado todos los beneficios, la elección será aleatoria.",
"main_menu.starting_perks_help": "Elija sus prestaciones iniciales", "main_menu.starting_perks_help": "Elija sus prestaciones iniciales",
"main_menu.starting_perks_unchecked": "Las prestaciones que figuran a continuación no se proponen como prestaciones iniciales, pero puede hacer clic en ellas para añadirlas a las posibles prestaciones iniciales.", "main_menu.starting_perks_unchecked": "Las prestaciones que figuran a continuación no se proponen como prestaciones iniciales, pero puede hacer clic en ellas para añadirlas a las posibles prestaciones iniciales.",
"main_menu.title": "Breakout 71", "main_menu.title": "Breakout 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "Ralentis certains téléphones.", "main_menu.sounds_help": "Ralentis certains téléphones.",
"main_menu.starting_perks": "Avantages de départ", "main_menu.starting_perks": "Avantages de départ",
"main_menu.starting_perks_checked": "Lorsque vous démarrez une nouvelle partie, l'un de ces avantages vous sera attribué. Cliquez sur un avantage pour l'exclure.", "main_menu.starting_perks_checked": "Lorsque vous démarrez une nouvelle partie, l'un de ces avantages vous sera attribué. Cliquez sur un avantage pour l'exclure.",
"main_menu.starting_perks_full_random": "Tous les avantages ont été retirés, le choix sera aléatoire.",
"main_menu.starting_perks_help": "Choisissez les avantages de départ", "main_menu.starting_perks_help": "Choisissez les avantages de départ",
"main_menu.starting_perks_unchecked": "Les avantages ci-dessous ne sont pas proposés comme avantages de départ, mais vous pouvez cliquer pour les ajouter aux avantages de départ possibles.", "main_menu.starting_perks_unchecked": "Les avantages ci-dessous ne sont pas proposés comme avantages de départ, mais vous pouvez cliquer pour les ajouter aux avantages de départ possibles.",
"main_menu.title": "Breakout 71", "main_menu.title": "Breakout 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "일부 휴대폰의 속도가 느려질 수 있습니다.", "main_menu.sounds_help": "일부 휴대폰의 속도가 느려질 수 있습니다.",
"main_menu.starting_perks": "시작 특전", "main_menu.starting_perks": "시작 특전",
"main_menu.starting_perks_checked": "새 게임을 시작하면 이러한 특전 중 하나가 주어집니다. 특전을 클릭하면 특전을 제외할 수 있습니다.", "main_menu.starting_perks_checked": "새 게임을 시작하면 이러한 특전 중 하나가 주어집니다. 특전을 클릭하면 특전을 제외할 수 있습니다.",
"main_menu.starting_perks_full_random": "모든 혜택이 제거되었으며, 선택은 무작위로 이루어집니다.",
"main_menu.starting_perks_help": "가능한 시작 업그레이드 선택", "main_menu.starting_perks_help": "가능한 시작 업그레이드 선택",
"main_menu.starting_perks_unchecked": "아래 특전은 시작 특전으로 제공되지는 않지만 클릭하여 풀에 추가할 수 있습니다.", "main_menu.starting_perks_unchecked": "아래 특전은 시작 특전으로 제공되지는 않지만 클릭하여 풀에 추가할 수 있습니다.",
"main_menu.title": "브레이크아웃 71", "main_menu.title": "브레이크아웃 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "Может замедлять работу некоторых телефонов.", "main_menu.sounds_help": "Может замедлять работу некоторых телефонов.",
"main_menu.starting_perks": "Стартовые привилегии", "main_menu.starting_perks": "Стартовые привилегии",
"main_menu.starting_perks_checked": "Когда вы начнете новую игру, вам будет дано одно из этих преимуществ. Щелкните по перку, чтобы исключить его.", "main_menu.starting_perks_checked": "Когда вы начнете новую игру, вам будет дано одно из этих преимуществ. Щелкните по перку, чтобы исключить его.",
"main_menu.starting_perks_full_random": "Все преимущества удалены, выбор будет случайным.",
"main_menu.starting_perks_help": "Выберите возможные стартовые апгрейды", "main_menu.starting_perks_help": "Выберите возможные стартовые апгрейды",
"main_menu.starting_perks_unchecked": "Приведенные ниже привилегии не предлагаются в качестве стартовых, но вы можете нажать на них, чтобы добавить в пул.", "main_menu.starting_perks_unchecked": "Приведенные ниже привилегии не предлагаются в качестве стартовых, но вы можете нажать на них, чтобы добавить в пул.",
"main_menu.title": "Прорыв 71", "main_menu.title": "Прорыв 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "کچھ فون سست کر سکتے ہیں۔", "main_menu.sounds_help": "کچھ فون سست کر سکتے ہیں۔",
"main_menu.starting_perks": "مراعات شروع ہو رہی ہیں۔", "main_menu.starting_perks": "مراعات شروع ہو رہی ہیں۔",
"main_menu.starting_perks_checked": "جب آپ کوئی نیا گیم شروع کرتے ہیں تو ان میں سے ایک پرکس آپ کو دیا جائے گا۔ اسے خارج کرنے کے لیے پرک پر کلک کریں۔ ", "main_menu.starting_perks_checked": "جب آپ کوئی نیا گیم شروع کرتے ہیں تو ان میں سے ایک پرکس آپ کو دیا جائے گا۔ اسے خارج کرنے کے لیے پرک پر کلک کریں۔ ",
"main_menu.starting_perks_full_random": "تمام فوائد کو ہٹا دیا گیا ہے، انتخاب بے ترتیب ہو جائے گا.",
"main_menu.starting_perks_help": "ممکنہ ابتدائی اپ گریڈز کا انتخاب کریں۔", "main_menu.starting_perks_help": "ممکنہ ابتدائی اپ گریڈز کا انتخاب کریں۔",
"main_menu.starting_perks_unchecked": "نیچے دیے گئے مراعات ابتدائی مراعات کے طور پر پیش نہیں کیے جاتے ہیں، لیکن آپ انہیں پول میں شامل کرنے کے لیے کلک کر سکتے ہیں۔ ", "main_menu.starting_perks_unchecked": "نیچے دیے گئے مراعات ابتدائی مراعات کے طور پر پیش نہیں کیے جاتے ہیں، لیکن آپ انہیں پول میں شامل کرنے کے لیے کلک کر سکتے ہیں۔ ",
"main_menu.title": "بریک آؤٹ 71", "main_menu.title": "بریک آؤٹ 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "Ba'zi telefonlarni sekinlashtirishi mumkin.", "main_menu.sounds_help": "Ba'zi telefonlarni sekinlashtirishi mumkin.",
"main_menu.starting_perks": "Boshlang'ich imtiyozlar", "main_menu.starting_perks": "Boshlang'ich imtiyozlar",
"main_menu.starting_perks_checked": "Yangi o'yinni boshlaganingizda, ushbu imtiyozlardan biri sizga beriladi. Imtiyozni istisno qilish uchun uni bosing. ", "main_menu.starting_perks_checked": "Yangi o'yinni boshlaganingizda, ushbu imtiyozlardan biri sizga beriladi. Imtiyozni istisno qilish uchun uni bosing. ",
"main_menu.starting_perks_full_random": "Barcha imtiyozlar olib tashlandi, tanlov tasodifiy bo'ladi.",
"main_menu.starting_perks_help": "Mumkin bo'lgan yangilanishlarni tanlang", "main_menu.starting_perks_help": "Mumkin bo'lgan yangilanishlarni tanlang",
"main_menu.starting_perks_unchecked": "Quyidagi imtiyozlar boshlangich imtiyozlar sifatida taqdim etilmaydi, lekin ularni hovuzga qoshish uchun bosing. ", "main_menu.starting_perks_unchecked": "Quyidagi imtiyozlar boshlangich imtiyozlar sifatida taqdim etilmaydi, lekin ularni hovuzga qoshish uchun bosing. ",
"main_menu.title": "Breakout 71", "main_menu.title": "Breakout 71",

View file

@ -109,6 +109,7 @@
"main_menu.sounds_help": "可能会降低某些手机的运行速度。", "main_menu.sounds_help": "可能会降低某些手机的运行速度。",
"main_menu.starting_perks": "起步福利", "main_menu.starting_perks": "起步福利",
"main_menu.starting_perks_checked": "当你开始一个新游戏时,你将获得其中一项福利。点击一项福利即可将其排除在外。", "main_menu.starting_perks_checked": "当你开始一个新游戏时,你将获得其中一项福利。点击一项福利即可将其排除在外。",
"main_menu.starting_perks_full_random": "所有福利均已取消,选择将是随机的。",
"main_menu.starting_perks_help": "选择可能的初始升级", "main_menu.starting_perks_help": "选择可能的初始升级",
"main_menu.starting_perks_unchecked": "以下福利不作为起始福利提供,但您可以点击将其添加到福利池中。", "main_menu.starting_perks_unchecked": "以下福利不作为起始福利提供,但您可以点击将其添加到福利池中。",
"main_menu.title": "突围 71", "main_menu.title": "突围 71",

View file

@ -13,7 +13,7 @@ import { dontOfferTooSoon, resetBalls } from "./gameStateMutators";
import { isOptionOn } from "./options"; import { isOptionOn } from "./options";
import { getHistory } from "./gameOver"; import { getHistory } from "./gameOver";
import { getSettingValue, getTotalScore } from "./settings"; import { getSettingValue, getTotalScore } from "./settings";
import { isStartingPerk } from "./startingPerks"; import { isBlackListedForStart, isStartingPerk } from "./startingPerks";
export function getRunLevels( export function getRunLevels(
params: RunParams, params: RunParams,
@ -52,9 +52,10 @@ export function newGameState(params: RunParams): GameState {
let randomGift: PerkId | undefined = undefined; let randomGift: PerkId | undefined = undefined;
if (!sumOfValues(perks)) { if (!sumOfValues(perks)) {
const giftable = upgrades.filter( let giftable = upgrades.filter((u) => isStartingPerk(u));
(u) => getTotalScore() >= u.threshold && isStartingPerk(u), if (!giftable.length) {
); giftable = upgrades.filter((u) => !isBlackListedForStart(u));
}
randomGift = randomGift =
(isOptionOn("easy") && "slow_down") || (isOptionOn("easy") && "slow_down") ||

View file

@ -16,41 +16,51 @@ export function startingPerkMenuButton() {
}, },
}; };
} }
export function isBlackListedForStart(u: Upgrade) {
return !!(
u.requires ||
["instant_upgrade"].includes(u.id) ||
u.threshold > getTotalScore()
);
}
export function isStartingPerk(u: Upgrade): boolean { export function isStartingPerk(u: Upgrade): boolean {
return getSettingValue("start_with_" + u.id, u.giftable); return (
!isBlackListedForStart(u) &&
getSettingValue("start_with_" + u.id, u.giftable)
);
} }
export async function openStartingPerksEditor() { export async function openStartingPerksEditor() {
const ts = getTotalScore(); const avaliable = upgrades.filter((u) => !isBlackListedForStart(u));
const avaliable = upgrades.filter(
(u) =>
!u.requires && !["instant_upgrade"].includes(u.id) && u.threshold <= ts,
);
const starting = avaliable.filter((u) => isStartingPerk(u));
const buttons = avaliable.map((u) => { const buttons = avaliable.map((u) => {
const checked = isStartingPerk(u); const checked = isStartingPerk(u);
return { return {
icon: u.icon, icon: u.icon,
text: u.name, text: u.name,
tooltip: u.help(1), tooltip: u.help(1),
value: u, value: [u],
disabled: checked && starting.length < 2,
checked, checked,
}; };
}); });
const checkedList = buttons.filter((b) => b.checked);
const perk: Upgrade | null | void = await asyncAlert({ const perks: Upgrade[] | null | void = await asyncAlert({
title: t("main_menu.starting_perks"), title: t("main_menu.starting_perks"),
className: "actionsAsGrid", className: "actionsAsGrid",
content: [ content: [
t("main_menu.starting_perks_checked"), checkedList.length
...buttons.filter((b) => b.checked), ? t("main_menu.starting_perks_checked")
: t("main_menu.starting_perks_full_random"),
...checkedList,
t("main_menu.starting_perks_unchecked"), t("main_menu.starting_perks_unchecked"),
...buttons.filter((b) => !b.checked), ...buttons.filter((b) => !b.checked),
], ],
}); });
if (perk) { if (perks) {
perks?.forEach((perk) => {
setSettingValue("start_with_" + perk.id, !isStartingPerk(perk)); setSettingValue("start_with_" + perk.id, !isStartingPerk(perk));
});
openStartingPerksEditor(); openStartingPerksEditor();
} }
} }

View file

@ -5,7 +5,6 @@ import { comboKeepingRate } from "./pure_functions";
export const rawUpgrades = [ export const rawUpgrades = [
{ {
requires: "", requires: "",
threshold: 0, threshold: 0,
giftable: false, giftable: false,
id: "extra_life", id: "extra_life",