Build 29088513

This commit is contained in:
Renan LE CARO 2025-04-22 10:33:25 +02:00
parent bf3dac8e8f
commit af65737011
10 changed files with 58 additions and 59 deletions

View file

@ -17,7 +17,9 @@ Break colourful bricks, catch bouncing coins and select powerful upgrades !
## Done
- included german corrections by Pock
- added particle effect for wrap
- removed grace period from passive income, updated icon
## 29087440

View file

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

File diff suppressed because one or more lines are too long

12
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 = "29087440";
const VERSION = "29088513";
// The name of the cache
const CACHE_NAME = `breakout-71-${VERSION}`;

View file

@ -817,8 +817,8 @@
},
{
"name": "icon:passive_income",
"size": 8,
"bricks": "__________tttt____tttt_______________W___________________rWWWr__",
"size": 7,
"bricks": "_ttttt__ttt_t______W____y____________y______ggg__",
"color": ""
},
{

View file

@ -1 +1 @@
"29087440"
"29088513"

View file

@ -1568,7 +1568,8 @@ export function gameStateTick(
if (
gameState.perks.wrap_left &&
gameState.perks.left_is_lava < 2 &&
Math.random()*frames > 0.1){
Math.random() * frames > 0.1
) {
makeParticle(
gameState,
gameState.offsetXRoundedDown,
@ -1584,7 +1585,8 @@ export function gameStateTick(
if (
gameState.perks.wrap_right &&
gameState.perks.right_is_lava < 2 &&
Math.random()*frames > 0.1){
Math.random() * frames > 0.1
) {
makeParticle(
gameState,
gameState.offsetXRoundedDown + gameState.gameZoneWidth,
@ -1598,7 +1600,6 @@ export function gameStateTick(
);
}
// Respawn what's needed, show particles
forEachLiveOne(gameState.respawns, (r, ri) => {
if (gameState.bricks[r.index]) {
@ -1748,8 +1749,7 @@ export function ballTick(gameState: GameState, ball: Ball, frames: number) {
ball.previousX < gameState.offsetX + gameState.gameZoneWidth / 2
) {
schedulGameSound(gameState, "plouf", ball.x, 1);
ball.x =
gameState.offsetX + gameState.gameZoneWidth - gameState.ballSize ;
ball.x = gameState.offsetX + gameState.gameZoneWidth - gameState.ballSize;
if (ball.vx > 0) {
ball.vx *= -1;
}
@ -1819,7 +1819,7 @@ export function ballTick(gameState: GameState, ball: Ball, frames: number) {
const ballIsUnderPuck =
Math.abs(ball.x - gameState.puckPosition) <
gameState.ballSize / 2 + gameState.puckWidth / 2 &&
!isMovingWhilePassiveIncome(gameState, 150);
!isMovingWhilePassiveIncome(gameState);
if (
ball.y > ylimit &&
ball.vy > 0 &&

View file

@ -276,15 +276,12 @@ export function shouldPierceByColor(
return true;
}
export function isMovingWhilePassiveIncome(
gameState: GameState,
gracePeriod = 0,
) {
export function isMovingWhilePassiveIncome(gameState: GameState) {
return !!(
gameState.lastPuckMove &&
gameState.perks.passive_income &&
gameState.lastPuckMove >
gameState.levelTime - 250 * gameState.perks.passive_income + gracePeriod
gameState.levelTime - 250 * gameState.perks.passive_income
);
}

View file

@ -151,14 +151,14 @@ migrate("clean_ls", () => {
}
});
migrate("set_user_id", () => {
// Useful to identify a player when uploading his save file multiple times to a web service
if(!localStorage.getItem('breakout_71_user_id')){
localStorage.setItem('breakout_71_user_id', JSON.stringify(self?.crypto?.randomUUID()||'user_'+Math.random()))
if (!localStorage.getItem("breakout_71_user_id")) {
localStorage.setItem(
"breakout_71_user_id",
JSON.stringify(self?.crypto?.randomUUID() || "user_" + Math.random()),
);
}
});
afterMigration();