hola.como estan. nesecito si alguien me puede ayudar con un juego, el mono no colisiona con las respuestas y en una parte donde define la respuesta si son verdaderas me salta un error. no puedo encontrar la falla. si alguin me ayuda se lo agradeceria mucho
import pilasengine
pilas = pilasengine.iniciar()
fondo = pilas.fondos.Fondo()
fondo.imagen = pilas.imagenes.cargar('ab.png')
puntaje = pilas.actores.Puntaje(color='blanco')
puntaje.x = -300
puntaje.y = 220
vuelta = pilas.actores.Puntaje(color="rojo")
vuelta.x = 300
vuelta.y = 220
def reiniciar():
# Obtiene todos los actores de la pantalla.
actores = pilas.actores.listar_actores()
# Elimina todos los actores excepto el fondo y el puntaje
for actor in actores:
if actor not in [fondo, puntaje, vuelta, pilas.escena.fondo]:
actor.eliminar()
# Genera una pregunta nueva
crear_una_nueva_pregunta()
def crear_una_nueva_pregunta():
#PREGUNTA
e = ("3x-2=1"), ("x2=-9"), ("2x-1=3x+3-x-4"), ("4+x=30"), ("5+10-x=8"), ("x+5=x-2"), ("x/2-x/3=x/6"), ("2x+3y=15"), ("x-3=2+x"), ("8+26-3+x=70"), ("x+y=55"), ("x2=-6"), ("5+20-x=-5"), ("2(x+1)=2x+2"), ("x/2=1-x+3x/2")
posicion = pilas.azar(0, len(e)-1)
o = e[posicion]
pregunta = pilas.actores.Texto(u"cuantas soluciones tiene: " + o ,y=180,magnitud=25)
#DEFINO LAS CAJAS
caja1 = pilas.actores.Actor(x = -200, y = -150)
caja1.imagen = "caja.png"
caja1.escala = 2
caja1.esverdadera = False
caja2 = pilas.actores.Actor(x = 0, y = -150)
caja2.imagen = "caja.png"
caja2.escala = 2
caja2.esverdadera = False
caja3 = pilas.actores.Actor(x = 200, y = -150)
caja3.imagen = "caja.png"
caja3.escala = 2
caja3.esverdadera = False
mono = pilas.actores.Mono()
mono.aprender("Arrastrable")
#DEFINO RESPUESTAS
rta_1 = pilas.actores.Texto("no tiene",x=-200, y=-150)
rta_2 = pilas.actores.Texto("una",x = 0, y =-150)
rta_3 = pilas.actores.Texto("infinitas",x = 200, y =-150)
lis =("una", "no tiene", "infinitas", "una", "una", "no tiene", "infinitas", "infinitas", "no tiene", "una", "infinitas", "no tiene", "una", "infinitas", "no tiene")
cajas_posibles = [caja1,caja2,caja3]
textos_posibles = [rta_1,rta_2,rta_3]
respuesta_verdadera = cajas_posibles[lis[posicion]]
respuesta_verdadera.esverdadera = True
texto_de_respuestaok = textos_posibles[indiceok]
texto_de_respuestaok.texto = lis[posicion]
#COLISIONES
cajas = [caja1,caja2,caja3]
pilas.colisiones.agregar(mono,cajas,respuesta)
def respuesta(mono, caja):
if caja.esverdadera:
mono.decir("MUY BIEN")
# Genera una estrella para mostrar que contesto
# bien
estrella = pilas.actores.Estrella()
estrella.x = caja.x
estrella.y = caja.y
estrella.escala = 0.2
estrella.escala = [2, 1] * 2
# aumenta el puntaje
puntaje.aumentar(5)
vuelta.aumentar()
# Reinicia el juego pasados los 2 segundos.
pilas.tareas.una_vez(2, reiniciar)
else:
mono.decir("INTENTA DE NUEVO")
pilas.camara.vibrar()
caja.eliminar()
puntaje.reducir(3)
crear_una_nueva_pregunta()
pilas.ejecutar()