Skip to content

Commit

Permalink
algunos retoques
Browse files Browse the repository at this point in the history
  • Loading branch information
Brisa Aylen Brussa committed Nov 9, 2024
1 parent 7783589 commit aa93ac7
Show file tree
Hide file tree
Showing 9 changed files with 97 additions and 127 deletions.
35 changes: 3 additions & 32 deletions enemigos.wlk
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import miscelaneos.*
import muros.*

class Enemigo1 inherits ObjetoVisible{
//var lado = 0
var property vida
var property position = game.center()
var property velocidad = 700
var property velocidad = 300
var property apariencia = "piopio.png"
method image() = apariencia
override method esEnemigo() = true
Expand Down Expand Up @@ -54,7 +55,6 @@ class Enemigo1 inherits ObjetoVisible{
method limpiarEnemigos(){
game.removeVisual(self)
}

}

object lineaEnemiga{
Expand All @@ -66,33 +66,4 @@ object lineaEnemiga{
method activar(){
enemigo.activar_enemigo()
}
}

/*
import movimiento.*
class Enemigos inherits FiguraConMovimiento(position = game.at(1,2)){
//var property position = game.at(4,16)
const tiempo
var lado = 0
method image() = "piopio.png"
method moverseH(){
game.onTick(tiempo, self, {self.position(game.at(self.position().x().randomUpTo(self.position().x()+1), self.position().y().randomUpTo(self.position().y()+1)))})
}
method limpiarEnemigos(){
game.removeVisual(self)
}
}
object lineaEnemiga{
var property enemigo1 = new Enemigos(tiempo = 500)
method activar(){
game.addVisual(enemigo1)
enemigo1.moverseH()
}
}
*/
}
52 changes: 52 additions & 0 deletions juego.wlk
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import musica.*
import jugador.*
import muros.*
import enemigos.*
import puntos.*
import miscelaneos.*

object juego{
//DIBUJO DE LOS ELEMENTOS DEL MUNDO
method jugar(){
points.reset()
//dibujar fondo
game.addVisual(fondoJuego)
//dibujar lateral superior
escenarioNivel.generarLateralSuperior()
//dibujar muros
escenarioNivel.generarEscenario()
//dibujar enemigo
lineaEnemiga.activar()
//dibujar jugador
jugador.posicionate()
game.showAttributes(jugador)
//dibujar frutas
spawn.dibujarPuntos(1)
//dibujar puntos
game.addVisual(points)
//dibujar superior
escenarioNivel.generarBloquesSuperiores()
//reproducir la musica correspondiente
musicaDeFondo.play()
}

//BORRAR ELEMENTOS DEL JUEGO
method limpiar(){
game.removeVisual(jugador)
lineaEnemiga.enemigo().limpiarEnemigos()
game.removeVisual(fondoJuego)
game.removeVisual(points)
escenarioNivel.limpiarEscenario()
musicaDeFondo.stop()
}

method cargarVisuales(posicion){
jugador.valor(coleccion.personaje(posicion))
lineaEnemiga.imagen(coleccion.enemigo(posicion))
fondoJuego.valor(coleccion.fondo(posicion))
visual.valor(coleccion.bloque_i(posicion))
visualSuperior.valor(coleccion.bloque_s(posicion))
spawn.puntos(coleccion.puntos(posicion))
musicaDeFondo.sonido(game.sound(coleccion.musica(posicion)))
}
}
7 changes: 2 additions & 5 deletions jugador.wlk
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
import muros.*

import menus.menuPerdiste

import movimiento.*

import miscelaneos.*

object jugador inherits FiguraConMovimiento(position = game.at(1, 1)) {
Expand All @@ -25,7 +22,7 @@ object jugador inherits FiguraConMovimiento(position = game.at(1, 1)) {
}
}

object points inherits ObjetoVisible{
object points{
var puntosObtenidos = 0
method sumarPuntos(){
puntosObtenidos += 1
Expand All @@ -40,7 +37,7 @@ object points inherits ObjetoVisible{
method image() = "barra.png"
}

object modificadorMapa inherits ObjetoVisible{
object modificadorMapa{

var property position = jugador.position()

Expand Down
96 changes: 25 additions & 71 deletions menus.wlk
Original file line number Diff line number Diff line change
@@ -1,16 +1,11 @@
import musica.*
import mainExample.*
import wollok.game.*
import jugador.*
import muros.*
import enemigos.*
import puntos.*
import miscelaneos.*
import juego.*

class Menus{
const add_1
const add_2
const moverA
const cantidadDeIncrementoParaPosiciones
const equisMax
const equisMin
Expand All @@ -22,72 +17,62 @@ class Menus{
game.addVisual(add_1)
game.addVisual(add_2)
if(sincronizadorDePantallas.pantallaActual() == tipoDeMenu){
keyboard.w().onPressDo({if(moverA.position().y() < yeMax) moverA.position(game.at(moverA.position().x(), moverA.position().y() + cantidadDeIncrementoParaPosiciones))})
keyboard.a().onPressDo({if(moverA.position().x() > equisMin) moverA.position(game.at(moverA.position().x() - cantidadDeIncrementoParaPosiciones, moverA.position().y()))})
keyboard.s().onPressDo({if(moverA.position().y() > yeMin) moverA.position(game.at(moverA.position().x(), moverA.position().y() - cantidadDeIncrementoParaPosiciones))})
keyboard.d().onPressDo({if(moverA.position().x() < equisMax) moverA.position(game.at(moverA.position().x() + cantidadDeIncrementoParaPosiciones, moverA.position().y()))})}
keyboard.w().onPressDo({if(add_2.position().y() < yeMax) add_2.position(game.at(add_2.position().x(), add_2.position().y() + cantidadDeIncrementoParaPosiciones))})
keyboard.a().onPressDo({if(add_2.position().x() > equisMin) add_2.position(game.at(add_2.position().x() - cantidadDeIncrementoParaPosiciones, add_2.position().y()))})
keyboard.s().onPressDo({if(add_2.position().y() > yeMin) add_2.position(game.at(add_2.position().x(), add_2.position().y() - cantidadDeIncrementoParaPosiciones))})
keyboard.d().onPressDo({if(add_2.position().x() < equisMax) add_2.position(game.at(add_2.position().x() + cantidadDeIncrementoParaPosiciones, add_2.position().y()))})}
//keyboard.enter().onPressDo({})
}

method limpiarPantalla(){
game.removeVisual(add_1)
game.removeVisual(add_2)
}
}


object menuPersonaje inherits Menus(add_1 = menuPersonajes, add_2 = marcoDeSeleccion, moverA = marcoDeSeleccion, cantidadDeIncrementoParaPosiciones = 5, equisMax = 12, equisMin = 2, yeMax = 5, yeMin = 5, tipoDeMenu = "personajes"){
object menuPersonaje inherits Menus(add_1 = menuPersonajes, add_2 = marcoDeSeleccion, cantidadDeIncrementoParaPosiciones = 5, equisMax = 12, equisMin = 2, yeMax = 5, yeMin = 5, tipoDeMenu = "personajes"){
override method cargar(){
super()
keyboard.enter().onPressDo({
if(sincronizadorDePantallas.pantallaActual() == tipoDeMenu){
sincronizadorDePantallas.cambiarPantalla("niveles")
//valores visuales
const posicion = (marcoDeSeleccion.position().x()-2)/5
jugador.valor(coleccion.personaje(posicion))
lineaEnemiga.imagen(coleccion.enemigo(posicion))
fondoJuego.valor(coleccion.fondo(posicion))
visual.valor(coleccion.bloque_i(posicion))
visualSuperior.valor(coleccion.bloque_s(posicion))
spawn.puntos(coleccion.puntos(posicion))
musicaDeFondo.sonido(game.sound(coleccion.musica(posicion)))
juego.cargarVisuales(posicion)
//remove
game.removeVisual(menuPersonajes)
game.removeVisual(marcoDeSeleccion)
self.limpiarPantalla()
menuNivel.cargar()
}
})
}
}

object menuNivel inherits Menus(add_1 = menuNiveles, add_2 = seleccionNivel, moverA = seleccionNivel, cantidadDeIncrementoParaPosiciones = 2, equisMax = 14, equisMin = 1, yeMax = 11, yeMin = 3, tipoDeMenu = "niveles"){
object menuNivel inherits Menus(add_1 = menuNiveles, add_2 = seleccionNivel, cantidadDeIncrementoParaPosiciones = 2, equisMax = 3, equisMin = 1, yeMax = 11, yeMin = 11, tipoDeMenu = "niveles"){
override method cargar(){
super()
keyboard.enter().onPressDo({
if(sincronizadorDePantallas.pantallaActual() == tipoDeMenu){
sincronizadorDePantallas.cambiarPantalla("jugar")
if(seleccionNivel.position() == game.at(1,11)){ //Seleccionado nivel 1
escenario.nivel(1)
escenarioNivel.nivel(1)
} else if(seleccionNivel.position() == game.at(3,11)){ //Seleccionado nivel 2
escenario.nivel(2)
escenarioNivel.nivel(2)
}
game.removeVisual(menuNiveles)
game.removeVisual(seleccionNivel)
points.reset()
self.limpiarPantalla()
juego.jugar()
}
})
}
}

object menuGanaste inherits Menus(add_1 = ganaste, add_2 = seleccionGanaste, moverA = seleccionGanaste, cantidadDeIncrementoParaPosiciones = 4, equisMax = 10, equisMin = 6, yeMax = 5, yeMin = 5, tipoDeMenu = "ganador"){
object menuGanaste inherits Menus(add_1 = ganaste, add_2 = seleccionGanaste, cantidadDeIncrementoParaPosiciones = 4, equisMax = 10, equisMin = 6, yeMax = 5, yeMin = 5, tipoDeMenu = "ganador"){
override method cargar(){
super()
game.removeVisual(jugador)
lineaEnemiga.enemigo().limpiarEnemigos()
game.removeVisual(fondoJuego)
game.removeVisual(points)
escenario.limpiarEscenario()
musicaDeFondo.stop()
juego.limpiar()
keyboard.enter().onPressDo({
if(sincronizadorDePantallas.pantallaActual() == tipoDeMenu){
game.removeVisual(seleccionGanaste)
game.removeVisual(ganaste)
self.limpiarPantalla()
if (seleccionGanaste.position() == game.at(6, 5)) {
sincronizadorDePantallas.cambiarPantalla("niveles")
menuNivel.cargar()
Expand All @@ -100,24 +85,18 @@ object menuGanaste inherits Menus(add_1 = ganaste, add_2 = seleccionGanaste, mov
})
}
}
object menuPerdiste inherits Menus(add_1 = perdiste, add_2 = seleccionPerdiste, moverA = seleccionGanaste, cantidadDeIncrementoParaPosiciones = 2, equisMax = 5, equisMin = 5, yeMax = 10, yeMin = 5, tipoDeMenu = "perdedor"){
object menuPerdiste inherits Menus(add_1 = perdiste, add_2 = seleccionPerdiste, cantidadDeIncrementoParaPosiciones = 2, equisMax = 5, equisMin = 5, yeMax = 10, yeMin = 5, tipoDeMenu = "perdedor"){
override method cargar(){
super()
game.removeVisual(jugador)
lineaEnemiga.enemigo().limpiarEnemigos()
game.removeVisual(fondoJuego)
game.removeVisual(points)
escenario.limpiarEscenario()
musicaDeFondo.stop()
juego.limpiar()
keyboard.enter().onPressDo({
if(sincronizadorDePantallas.pantallaActual() == tipoDeMenu){
game.removeVisual(seleccionGanaste)
game.removeVisual(perdiste)
if (seleccionGanaste.position() == game.at(5, 7)) {
self.limpiarPantalla()
if (seleccionPerdiste.position() == game.at(5, 7)) {
sincronizadorDePantallas.cambiarPantalla("jugar")
juego.jugar()
}
if (seleccionGanaste.position() == game.at(5, 5)){
if (seleccionPerdiste.position() == game.at(5, 5)){
game.addVisual(finDelJuego)
game.stop()
}
Expand All @@ -126,31 +105,6 @@ object menuPerdiste inherits Menus(add_1 = perdiste, add_2 = seleccionPerdiste,
}
}

object juego{

method jugar(){ //DIBUJO DE LOS ELEMENTOS DEL MUNDO
//dibujar fondo
game.addVisual(fondoJuego)
//dibujar lateral superior
escenario.generarLateralSuperior()
//dibujar muros
escenario.generarEscenario()
//dibujar enemigo
lineaEnemiga.activar()
//dibujar jugador
jugador.posicionate()
game.showAttributes(jugador)
//dibujar frutas
spawn.dibujarPuntos(1)
//dibujar puntos
game.addVisual(points)
//dibujar superior
escenario.generarBloquesSuperiores()
//reproducir la musica correspondiente
musicaDeFondo.play()
}
}

object sincronizadorDePantallas{
var pantalla = "personajes"
method cambiarPantalla(nuevaPantalla){
Expand Down
2 changes: 1 addition & 1 deletion miscelaneos.wlk
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ object coleccion{
const c_bloques = ["b_fiesta_i.png","b_pio_i.png","b_pasto_i.png"]
const c_bloques_sup = ["b_fiesta_sup.png","b_pio_sup.png","b_pasto_sup.png"]
const c_fondos = ["f_slime.png","f_pio.png","f_pasto.png"]
const c_puntos = [["pu_bananas.png","pu_uva.png","pu_sandias.png"],
const c_puntos = [["pu_bananas.png","pu_uva.png","pu_sandia.png"],
["pu_archaic coin.png","pu_circus coin.png","pu_lunaver coin.png"],
["pu_semilla.png","pu_capsula.png","pu_comida.png"]]
const c_musica = ["BadIceCreamMusicaDeFondo.mp3", "BadIceCreamMusicaDeFondo.mp3", "musicaDragonBallZ.mp3"]
Expand Down
13 changes: 4 additions & 9 deletions movimiento.wlk
Original file line number Diff line number Diff line change
@@ -1,18 +1,13 @@
import muros.*
import miscelaneos.*



class FiguraConMovimiento inherits ObjetoVisible{
var position
method position() = position

method equisCorrecta(equis) = equis >= 1 && equis <= (game.width()-2)

method yeCorrecta(ye) = ye >= 1 && ye <= (game.height()-2)

method position(posicion){
if(self.equisCorrecta(posicion.x()) && self.yeCorrecta(posicion.y()) && !escenario.mismaPosicion(posicion)){
method equisCorrecta(equis) = equis >= 1 && equis <= (game.width()-2)
method yeCorrecta(ye) = ye >= 1 && ye <= (game.height()-2)
method position(posicion){
if(self.equisCorrecta(posicion.x()) && self.yeCorrecta(posicion.y()) && !escenarioNivel.mismaPosicion(posicion)){
position = game.at(posicion.x(), posicion.y())
}
}
Expand Down
10 changes: 5 additions & 5 deletions muros.wlk
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class Bloque inherits ObjetoVisible{
method ubicarYDibujar(x,y){
self.position(game.at(x,y))
game.addVisual(self)
escenario.enlistarBloque(self)
escenarioNivel.enlistarBloque(self)
}
method quitarBloque() = game.removeVisual(self)

Expand All @@ -32,7 +32,7 @@ object visualSuperior{
var property valor = "b_fiesta_sup.png"
}

object escenario{
object escenarioNivel{
const property listaPosiciones = []
const property listaPuntos = []
const property listaBloques = []
Expand All @@ -55,14 +55,14 @@ object escenario{
}

method limpiarBloques() = listaBloques.forEach({block => block.quitarBloque() listaBloques.remove(block)})
method limpiarFrutas() = listaPuntos.forEach({fruta => listaPuntos.remove(fruta)})
method limpiarPuntos() = listaPuntos.forEach({punto => listaPuntos.remove(punto)})
method limpiarEscenario() {
self.limpiarBloques()
self.limpiarFrutas()
self.limpiarPuntos()
}

method mismaPosicion(posiblePosicion) = listaPosiciones.any({posicion => posicion == posiblePosicion})
method mismaPosicionFruta(posiblePosicion) = listaPuntos.any({posicion => posicion == posiblePosicion})
method mismaPosicionPunto(posiblePosicion) = listaPuntos.any({posicion => posicion == posiblePosicion})

method enlistarObjeto(cosa) = listaPuntos.add(cosa)
method enlistarBloque(block) = listaBloques.add(block)
Expand Down
3 changes: 2 additions & 1 deletion niveles.wlk
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,13 @@ object niveles{
object b {
method decodificar(x,y)
{
escenario.listaPosiciones().add(game.at(x,y))
escenarioNivel.listaPosiciones().add(game.at(x,y))
new Bloque().ubicarYDibujar(x,y)
}
method decodificarSuperior(x,y) = new BloqueSuperior().ubicarYDibujar(x, y)
}

object n {
method decodificar(x,y) {}
method decodificarSuperior(x,y){}
}
Loading

0 comments on commit aa93ac7

Please sign in to comment.