Hi, so I'm trying to make a game where you basically control a ship. For now, I' m able to make the ship rotate with key event, but now I want to make it goes in the direction it is pointing and I can't figure out how.
Here's my code for now, thanks you:
import pyglet
fenetre = pyglet.window.Window(700, 700, 'Lost')
fusee_img = pyglet.image.load('player1-ConvertImage.jpg')
fusee_img.anchor_x = fusee_img.width
fusee_img.anchor_y = fusee_img.height
fusee = pyglet.sprite.Sprite(fusee_img, x=100, y=100)
keys = pyglet.window.key.KeyStateHandler()
def update(dt):
fenetre.push_handlers(keys)
left = keys[pyglet.window.key.LEFT]
right = keys[pyglet.window.key.RIGHT]
up = keys[pyglet.window.key.UP]
down = keys[pyglet.window.key.DOWN]
if up and down:
None
elif up:
fusee.y += (dt * 100)
elif down:
fusee.y -= dt * 100
if right and left:
None
elif right:
fusee.rotation += dt * 300
elif left:
fusee.rotation -= dt * 300
pyglet.clock.schedule_interval(update, 1 / 120.0)
@fenetre.event
def on_draw():
fenetre.clear()
fusee.draw()
pyglet.app.run()
Here's my code for now, thanks you:
import pyglet
fenetre = pyglet.window.Window(700, 700, 'Lost')
fusee_img = pyglet.image.load('player1-ConvertImage.jpg')
fusee_img.anchor_x = fusee_img.width
fusee_img.anchor_y = fusee_img.height
fusee = pyglet.sprite.Sprite(fusee_img, x=100, y=100)
def update(dt):
fenetre.push_handlers(keys)
left = keys[pyglet.window.key.LEFT]
right = keys[pyglet.window.key.RIGHT]
up = keys[pyglet.window.key.UP]
down = keys[pyglet.window.key.DOWN]
if up and down:
None
elif up:
fusee.y += (dt * 100)
elif down:
fusee.y -= dt * 100
if right and left:
None
elif right:
fusee.rotation += dt * 300
elif left:
fusee.rotation -= dt * 300
pyglet.clock.schedule_interval(update, 1 / 120.0)
@fenetre.event
def on_draw():
fenetre.clear()
fusee.draw()
pyglet.app.run()
[python][/python]