From 498bff2d95cb3af1095616857d60e4268950f907 Mon Sep 17 00:00:00 2001 From: Nulo Date: Wed, 30 Jun 2021 16:15:53 +0000 Subject: [PATCH] Hacer variables de velocidad dinamicas y mejorar fisicas de las semillas --- src/jugando.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/jugando.ts b/src/jugando.ts index 7800ebf..f873aee 100644 --- a/src/jugando.ts +++ b/src/jugando.ts @@ -3,9 +3,6 @@ import { Juego } from './main' import { boxCollision } from './utils' const ENEMIES_NUM = 20 -const ENEMY_SPEED = 40 -const PLAYER_SPEED = 200 -const SEED_SPEED = 1000 const SEED_COOLDOWN = 300 const MAP_MIN = 1000 const MAP_MAX = 5000 @@ -36,13 +33,15 @@ export function createJugandoState(): State { } export function update(juego: Juego, dt: number) { + const playerSpeed = juego.canvas.width * 0.15 + const enemySpeed = juego.canvas.width * 0.05 if (juego.keyboard.keys.d || juego.keyboard.keys.ArrowRight) { juego.state.side = "right" - juego.state.pos.x += (dt / 1000) * PLAYER_SPEED + juego.state.pos.x += (dt / 1000) * playerSpeed } if (juego.keyboard.keys.a || juego.keyboard.keys.ArrowLeft) { juego.state.side = "left" - juego.state.pos.x -= (dt / 1000) * PLAYER_SPEED + juego.state.pos.x -= (dt / 1000) * playerSpeed } if (juego.state.pos.x < MAP_MIN) juego.state.pos.x = MAP_MIN @@ -50,15 +49,16 @@ export function update(juego: Juego, dt: number) { juego.state.seedCooldown -= dt if (juego.keyboard.keys[' '] && juego.state.seedCooldown < 0) { + const seedSpeed = juego.canvas.width * 0.7 juego.state.seeds.push({ x: juego.state.pos.x, - velocity: { x: juego.state.side === "left" ? -SEED_SPEED : SEED_SPEED }, + velocity: { x: juego.state.side === "left" ? -seedSpeed : seedSpeed }, }) juego.state.seedCooldown = SEED_COOLDOWN } for (const seed of juego.state.seeds) { seed.x += (dt / 1000) * seed.velocity.x - seed.velocity.x *= 0.9 + seed.velocity.x *= 0.97 for (const enemy of juego.state.enemies) { if (boxCollision({ x: seed.x, @@ -90,9 +90,9 @@ export function update(juego: Juego, dt: number) { for (const enemy of juego.state.enemies) { const distance = enemy.x - juego.state.pos.x if (distance < 0) { - enemy.x += (dt / 1000) * ENEMY_SPEED + enemy.x += (dt / 1000) * enemySpeed } else { - enemy.x -= (dt / 1000) * ENEMY_SPEED + enemy.x -= (dt / 1000) * enemySpeed } }