Skip to content

Commit

Permalink
Agrego bordes de la cancha para jugadores
Browse files Browse the repository at this point in the history
  • Loading branch information
IsiAliEmir committed Nov 13, 2024
1 parent 006b588 commit ed97b0a
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 27 deletions.
7 changes: 4 additions & 3 deletions ProximosPasos.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
A realizar
- [X] Arreglar mecánica para llevar la pelota.
- [X] Agregar mecánica para patear la pelota en una dirección.
- [ ] Agregar mecánica para colisiones con borde de la cancha.
- [casi] Agregar mecánica de goles: sonido, contador y reinicio posiciones.
- [X] Agregar mecánica para colisiones con borde de la cancha: jugadores.
- [ ] Agregar mecánica para colisiones con borde de la cancha: pelota.
- [X] Agregar mecánica para goles (que la pelota entre al arco y reinicie su posición).
- [ ] Completar mecánica de goles: sonido, contador independiente y reinicio posiciones jugadores.
- [ ] Agregar mecánica para fin de partida: que imprima un cartelito y envíe al menú principal.
- [ ] Agregar menú principal.
- [ ] Agregar sonidos colisiones.
Expand All @@ -11,7 +13,6 @@ A realizar
- [ ] Extra opcional: agregar banana maestra que invoque un montón de bananas.

Observaciones
- Tal vez la evaluacion de si alguien está cerca de algo podría delegarse en el programa en vez de tenerla en 800 ifs...
- El mute del sonido funciona una sola vez. Las siguientes dan evaluation error.
- Los cuadros de diálogo no siempre se muestran, refrescar la página.

51 changes: 27 additions & 24 deletions objects.wlk
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
class Jugador {
const property image
var property x = 105
var property y = 50
var property x = -100
var property y = -100
var property position = game.at(x, y)
var property ultimaDireccion = "ninguna"
var property energia = 100
Expand All @@ -28,36 +28,39 @@ class Jugador {
else if (energia > 0) return 0.2* cantidad
else return 0
}
method moverseArriba(cantCeldas) {
position.goUp(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "arriba"
method moverseArriba(cantCeldas) {
if (self.position().y() + self.ajustarPorEnergia(cantCeldas) <= 98) { // no pasa de yBordeSup
position.goUp(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "arriba"
}
}
method moverseAbajo(cantCeldas) {
position.goDown(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "abajo"
method moverseAbajo(cantCeldas) {
if (self.position().y() - self.ajustarPorEnergia(cantCeldas) >= 1) { // no pasa de yBordeInf
position.goDown(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "abajo"
}
}
method moverseDerecha(cantCeldas) {
position.goRight(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "derecha"
if (self.position().x() + self.ajustarPorEnergia(cantCeldas) <= 209) { // no pasa de xBordeDer
position.goRight(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "derecha"
}
}
method moverseIzquierda(cantCeldas) {
position.goLeft(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "izquierda"
method moverseIzquierda(cantCeldas) {
if (self.position().x() - self.ajustarPorEnergia(cantCeldas) >= 10) { // no pasa de xBordeIzq
position.goLeft(self.ajustarPorEnergia(cantCeldas))
self.perderEnergia(2)
ultimaDireccion = "izquierda"
}
}
method seMueveDerecha() = ultimaDireccion == "derecha"
method seMueveIzquierda() = ultimaDireccion == "izquierda"
method seMueveArriba() = ultimaDireccion == "arriba"
method seMueveAbajo() = ultimaDireccion == "abajo"
/*
method moverse(xNueva, yNueva) {
x = xNueva
y = yNueva
}
*/

method estaCercaDe(algo) =
(self.position().x() - algo.position().x()).abs() < rangoProximidad and
(self.position().y() - algo.position().y()).abs() < rangoProximidad
Expand Down Expand Up @@ -122,7 +125,7 @@ class Jugador {
class Item {
const property image
var property position = game.at(-100, -100)

method moverse(xf, yf) {
position = game.at(xf, yf)
}
Expand Down

0 comments on commit ed97b0a

Please sign in to comment.