Hola, primero queria pedir disculpas por preguntar tantas cosas,es que no se casi nada de python y eso pues, ahora lo de la pregunta.
Yo estoy haciendo un minijuego es muy basico un personaje tipo RPG que se mueve por el mapa, mas nada, pero no se como guardar las ultimas coordenadas donde estuvo la primera imagen para luego en la posicion donde quedo la primera imagen se cambien por la segunda, no se si se eniende.
Lo que quiero es esto:
Cuando el personaje se mueva por ejemplo abajo ok, pero quiero que cuando el personaje se mueva a la ejemplo derecha, la imagen de el personaje yendo hacia abajo se cambie por la que esta viendo hacia la derecha. algo asi.
Ni idea de como hacerlo .
:-\ :-\
ya llevo casi dos días con lo mismo.
mi codigo esta en pastebin:
https://pastebin.com/sEXizRtR (https://pastebin.com/sEXizRtR)
varias cosas:
1) esto debería ir en scriting(por algo es python),sería bueno que algún moderador lo mueva.
2) para lo que querés hacer hay librerías mejores, pygame por ejemplo
3)no entiendo la lógica de tu script, pero en fin, para hacerlo medianamente funcional uso basicamente lo que hiciste
4)seguis usando pack() y ya te dije que es más funcional place(), pero el código es tuyo.
5)está funcional el que hice solo para up y down, el resto te toca a vos.
from tkinter import *
tk= Tk()
tk.title("Juego RPG")
c= Canvas(tk, width=400, height=400)
tk.geometry(newGeometry="400x400")
fondo = PhotoImage(file='fondo.gif')
c.create_image(0,0,anchor=NW, image=fondo)
posx=120
posy=120
c.place(x=0,y=0)
arriba = PhotoImage(file='arriba.gif')
abajo = PhotoImage(file='abajo.gif')
img_arr= c.create_image(posx,posy,image=arriba)
cuantas= 0
def moverPersonaje(event):
global posx
global posy
global img_arr
global img_aba
global cuantas
if event.keysym == 'Up':
posx=posx
posy-=5
if cuantas !=0:
c.delete(img_aba)
c.delete(img_arr)
img_arr= c.create_image(posx,posy,image=arriba)
elif event.keysym == 'Down':
posx = posx
posy += 5
if cuantas == 0:
c.delete(img_arr)
img_aba=c.create_image(posx,posy,image=abajo)
cuantas+=1
else:
c.delete(img_arr)
c.delete(img_aba)
img_aba=c.create_image(posx,posy,image=abajo)
c.update()
c.bind_all('<Up>',moverPersonaje)
c.bind_all('<Down>',moverPersonaje)
c.bind_all('<Left>',moverPersonaje)
c.bind_all('<Right>',moverPersonaje)
tk.mainloop()
gracias muchas gracias, ya iba para 3 dias :xD, pero no entiendo el
if cuantas != 0:
canvas.delete(img_aba)
:-\
no entiendo lo que hace la variable cuantantas :-\ :-X
no se si se refiere a las variables de imagenes o no ni idea de lo que hace esa variable
lo de el script es un minijuego que estoy haciendo , y sobre lo de pygame yo tengo enmi escritorio en archivo .whl pero cuando lo voy a instalar por cmd me dice
Invalid sintax for wheel
y no se que hacer, y ademas antes de usar frameworks tengo que saber lo que esta pasando por debajo de el programa no se si me explico :)
y por cierto como sabes tanto de python, donde lo aprendiste?
deberías ser un profesor de algún curso de python