[question] Programation Lua (debutant)


Messages recommandés

Posté(e)

salut tout le monde, depuis longtemps je suis en admiration devant ces programmeur qui nous sorte de merveilleux jeux sur psp, alors j'ai decidé de commencé la programmation en lua.

j'aimerai creer un jeux de voiture, jai deja codé un peux mais j'ai differente question a vous poser

tout dabord voici le code source de mon jeux

-- couleur

vert = Color.new(0, 255, 0)

-- texte

titre = "le jeu de bagnole qui dechire!"

--image

voiture = Image.load("voiture1.png")

route = Image.load("route.png")

-- position de depart

positionY = 150

positionX = 100

--boucle principal

while true do

screen:clear()

screen:print(10,10, titre, vert)

screen:blit(0, 0, route, false)

pad = Controls.read()

if pad:up() then

positionY=positionY-10

screen:blit(positionX, positionY, voiture)

end

if pad:down() then

positionY=positionY+10

screen:blit(positionX, positionY, voiture)

end

if pad:left() then

positionX=positionX-10

screen:blit(positionX, positionY, voiture)

end

if pad:right() then

positionX=positionX+10

screen:blit(positionX, positionY, voiture)

end

screen.waitVblankStart()

screen.flip()

end

donc voila, j'ai mon ecran, quand je pousse sur les fleche la voiture bouge mais quand j'arrete d'appuyer sur les touche, la voiture disparais.

j'aimerai aussi savoir comment faire pour que le decor avance vers la droite et que la voiture ne puise sortire du decor en haut en bas et a gauche.

j'espere avoire que vous pourrez m'aider car je suis vraiment motiver :):)

salut

benja32

Posté(e)

Enlève tous les "screen:blit(positionX, positionY, voiture)" et mets en un unique avant le "screen.waitVblankStart()", la voiture ne disparaitra plus.

Pour que la voiture ne sorte pas de l'écran c simple je te donne l'exemple :

if pad:up() and positionY>10 then

positionY=positionY-10

end

Si on appuie sur haut et que la voiture n'est pas trop haute, alors elle remontera.

Posté(e) (modifié)

Enlève tous les "screen:blit(positionX, positionY, voiture)" et mets en un unique avant le "screen.waitVblankStart()", la voiture ne disparaitra plus.

Pour que la voiture ne sorte pas de l'écran c simple je te donne l'exemple :

if pad:up() and positionY>10 then

positionY=positionY-10

end

Si on appuie sur haut et que la voiture n'est pas trop haute, alors elle remontera.

merci mais quand je me ta ligne de code, la voiture quand elle sors disparai carement :wacko:

et pour que la voiture ne disparais pas, je ne saurai pas rassemblé en un car j'ai changer le code pour les image, regarde:

--screenshot

sccnt=0

--image

voitureup = Image.load("images/voitureup.png")

voituredown = Image.load("images/voituredown.png")

voitureleft = Image.load("images/voitureleft.png")

voitureright = Image.load("images/voitureright.png")

route = Image.load("images/route.png")

-- position de depart

positionY = 150

positionX = 100

--boucle principal

while true do

screen:clear()

screen:blit(0, 0, route, false)

pad = Controls.read()

if pad:up() then

positionY=positionY-5

screen:blit(positionX, positionY, voitureup)

end

if pad:down() then

positionY=positionY+5

screen:blit(positionX, positionY, voituredown)

end

if pad:left()then

positionX=positionX-5

screen:blit(positionX, positionY, voitureleft)

end

if pad:right() then

positionX=positionX+5

screen:blit(positionX, positionY, voitureright)

end

if pad:select() then

screen:save("screenshot/screen"..sccnt..".png")

sccnt=sccnt+1

end

screen.waitVblankStart()

screen.flip()

end

voila, j'aimerai faire avancer la route car la la voiture elle bouge deja mais elle peux sortir de l'ecran, j'aimerai faire que la voiture quand elle arrive a droite, la route continue avec la meme image de la route qui se "copie"

- j'ai toujours ce probleme de voiture qui apparait seulement quand elle bouge

merci d'avance

merci

ciao

benja32

Modifié par benja32

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant