def __init__(self, posicion, mundoFisico): self.__posicion = posicion self.__cuerpoChoque = None self.__velocidad = Vector.Vector(0, 0) self.__aceleracion = Vector.Vector(0, 0) self.__focalizarMovimiento = True # REFERENCIA AL MUNDO FISICO self.__mundoFisico = mundoFisico
def __init__(self): self.__manejaScroll = False self.__imagen = None self.__ventana = None self.__estadoCamara = "pausada" self.__limitesCamara = None self.__origenVentana = Vector.Vector(0, 0) self.__velocidadCamara = Vector.Vector(1, 1)
def __init__(self, posicion, mundoFisico): self.__posicion = posicion self.__cuerpoChoque = None self.__velocidad = Vector.Vector(0, 0) self.__aceleracion = Vector.Vector(0, 0) self.__focalizarMovimiento = True # REFERENCIA AL MUNDO FISICO self.__mundoFisico = mundoFisico # ENTIDADES CON LAS QUE SE ESTA COLISIONANDO AHORA self.__colisionesActuales = [] # ENTIDADES CON LAS QUE SE COLISIONARA EN EL SIGUIENTE MOVIMIENTO self.__entidadesCercanas = []
def blit(self, screen, ajustePosicion=None): # AJUSTE DE POSICION SEGUN POSICION DE PANTALLA if ajustePosicion == None: ajustePosicion = Vector.Vector(0, 0) posicionReal = self.mFisica.posicion.getCopy() posicionReal.susVector(ajustePosicion) self.mAnimaciones.blit(screen, posicionReal)
def __init__(self, imagen, mundoFisico): self.__posicion = Vector.Vector(0, 0) self.__cuerpoChoqueDefecto = Rect.Rect(0, 0, 0, 0) self.__activo = True # MANEJADOR FISICA self.__mFisica = M_Fisica.M_Fisica(self.__posicion, mundoFisico) self.__mFisica.cuerpoChoque = self.cuerpoChoqueDefecto # MANEJADOR ANIMACIONES self.__mAnimaciones = M_Animaciones.M_Animaciones(imagen)
def actualizarCamara(self): nuevaPosicionVentana = self.objetivo.posicion.getCopy() nuevaPosicionVentana.addVector(self.ajusteCamara) #xPosible, yPosible = self.esPosicionValida(nuevaPosicionVentana) desplazamientoCamara = Vector.Vector(0, 0) # EJE X if self.ventana.x < nuevaPosicionVentana.x: desplazamientoCamara.x = self.velocidadCamara.x elif self.ventana.x > nuevaPosicionVentana.x: desplazamientoCamara.x = self.velocidadCamara.x * -1 # EJE Y if self.ventana.y < nuevaPosicionVentana.y: desplazamientoCamara.y = self.velocidadCamara.y elif self.ventana.y > nuevaPosicionVentana.y: desplazamientoCamara.y = self.velocidadCamara.x * -1 # SI LA CAMARA PUEDE MOVERSE, ACTUALIZO nuevaPosicionVentana.x = self.ventana.x + desplazamientoCamara.x nuevaPosicionVentana.y = self.ventana.y + desplazamientoCamara.y xPosible, yPosible = self.esPosicionValida(nuevaPosicionVentana) if xPosible: self.ventana.addVector(Vector.Vector(desplazamientoCamara.x, 0)) if yPosible: self.ventana.addVector(Vector.Vector(0, desplazamientoCamara.y))
def crearMundo(self): # SETEO LIMITES DENTRO DE LOS CUALES SE PUEDE MOVER EL PERSONAJE self.mundoFisico.limites.setRect(0, 0, 800, 600) # CARGO IMAGENES img_fondo = self.cargarImagen("dangerousData", "bg_1.png") self.img_tile = self.cargarImagen("dangerousData", "tile_hero.png", -1) # MAPA Util.cargarMapa("dangerousData/mapa_0.map", self.ubicarEntidadMapa) # ESCENARIO self.mEscenarios.set(img_fondo, Rect.Rect(0, 0, 640, 480)) # NUESTRO HEROE COMO OBJETIVO DE LA CAMARA self.mEscenarios.objetivo = self.hero self.mEscenarios.ajusteCamara = Vector.Vector(-320, -240) self.mEscenarios.limitesCamara = Rect.Rect(0, 0, 800, 600) self.mEscenarios.velocidadCamara.set(1, 1) self.mEscenarios.activarCamara()
def __init__(self, imagen, mundoFisico): self.__posicion = Vector.Vector(0, 0) self.__cuerpoChoqueDefecto = Rect.Rect(0, 0, 0, 0) self.__activo = True # MANEJADOR FISICA self.__mFisica = M_Fisica.M_Fisica(self.__posicion, mundoFisico) self.__mFisica.cuerpoChoque = self.cuerpoChoqueDefecto # MANEJADOR ANIMACIONES self.__mAnimaciones = M_Animaciones.M_Animaciones(imagen) # ACCIONES FUERA ESCENA self.__logicaFueraEscena = True self.__animarFueraEscena = False self.__aplicarFisicaFueraEscena = True self.__graficarFueraEscena = False # SI EL JUEGO MANEJA CAPAZ, EL ID DE LA CAPA A LA QUE PERTENEC LA ENTIDAD self.__idCapa = -1
def crearMundo(self): # SETEO LIMITES DENTRO DE LOS CUALES SE PUEDE MOVER EL PERSONAJE self.mundoFisico.limites.setRect(30, 140, 400, 60) # CARGO MUSICA DE FONDO #self.cargarMusicaFondo("Data", "MusicaFondo1.mp3") #self.tocarMusicaFondo() # CARGAR SONIDO PARA GOLPES self.sonidoGolpe = self.cargarAudio("Data", "Golpe.ogg") # CARGO IMAGENES img_fondo = self.cargarImagen("Data", "FondoFF2.gif") img_guy = self.cargarImagen("Data", "Guy.gif", -1) # ESCENARIO self.mEscenarios.set(img_fondo, Rect.Rect(0, 0, 10, 10)) # GUY guy = Guy.Guy(img_guy, self.mundoFisico, self.controladorEventos) Util.cargarAnimacionEntidad("Data/Guy.xml", guy) guy.crearAnimaciones() guy.registrarEventos(K_RIGHT, K_LEFT, K_UP, K_DOWN, K_p) guy.id = "GUY_1" self.addEntidad(guy) self.mundoFisico.addObjetoFisico(guy) self.mundoFisico.addEventoChoque(guy, self.choqueGuy) # GUY 2 self.guy_2 = Guy.Guy(img_guy, self.mundoFisico, self.controladorEventos) Util.cargarAnimacionEntidad("Data/Guy.xml", self.guy_2) self.guy_2.crearAnimaciones() self.guy_2.registrarEventos(K_d, K_a, K_w, K_s, K_o) self.guy_2.id = "GUY_2" self.addEntidad(self.guy_2) self.mundoFisico.addObjetoFisico(self.guy_2) self.mundoFisico.addEventoChoque(self.guy_2, self.choqueGuy) # GUY 3 guy_3 = Guy.Guy(img_guy, self.mundoFisico, self.controladorEventos) Util.cargarAnimacionEntidad("Data/Guy.xml", guy_3) guy_3.crearAnimaciones() guy_3.registrarEventos(K_h, K_f, K_t, K_g, K_i) guy_3.id = "GUY_3" self.addEntidad(guy_3) self.mundoFisico.addObjetoFisico(guy_3) self.mundoFisico.addEventoChoque(guy_3, self.choqueGuy) # GUY COMO OBJETIVO DE LA CAMARA self.mEscenarios.objetivo = guy self.mEscenarios.ajusteCamara = Vector.Vector(-200, -120) self.mEscenarios.limitesCamara = Rect.Rect(0, 0, 900, 200) self.mEscenarios.velocidadCamara.set(1, 1) self.mEscenarios.activarCamara()
def crearMundo(self): # SETEO LIMITES DENTRO DE LOS CUALES SE PUEDE MOVER EL PERSONAJE self.mundoFisico.limites.setRect(30, 140, 400, 60) # CARGO IMAGENES img_fondo = self.cargarImagen("../Data", "FondoFF2.gif") img_guy = self.cargarImagen("../Data", "Guy.gif", -1) # ESCENARIO self.mEscenarios.set(img_fondo, Rect.Rect(0, 0, 10, 10)) # GUY guy = Guy.Guy(img_guy, self.mundoFisico, self.controladorEventos) self.addEntidad(guy) # GUY COMO OBJETIVO DE LA CAMARA self.mEscenarios.objetivo = guy; self.mEscenarios.ajusteCamara = Vector.Vector(-200, -100) self.mEscenarios.limitesCamara = Rect.Rect(0, 0, 900, 200) self.mEscenarios.velocidadCamara.set(.5, .5) self.mEscenarios.activarCamara()
def getCentro(self): centro = Vector.Vector((self.x + (self.ancho/2)), (self.y + (self.alto/2))) return centro
def logicaCamara(self): if self.estadoCamara == "activa": self.actualizarCamara() return Vector.Vector(self.ventana.x, self.ventana.y)