benja32 Posté(e) le 12 juillet 2006 Partager Posté(e) le 12 juillet 2006 salut, je me lance dans la programmation en lua mais j'ai quelque question, voici la source de mon jeux de voiture -- couleur vert = Color.new(0, 255, 0) -- texte titre = "le jeu de bagnole qui dechire!" sccnt=0 --image voitureup = Image.load("voitureup.png"[img=https://preprod.metagames.fr/forums/images/smilies/clin.gif] voituredown = Image.load("voituredown.png"[img=https://preprod.metagames.fr/forums/images/smilies/clin.gif] voitureleft = Image.load("voitureleft.png"[img=https://preprod.metagames.fr/forums/images/smilies/clin.gif] voitureright = Image.load("voitureright.png"[img=https://preprod.metagames.fr/forums/images/smilies/clin.gif] route = Image.load("route.png"[img=https://preprod.metagames.fr/forums/images/smilies/clin.gif] -- position de depart positionY = 150 positionX = 100 --boucle principal while true do if positionX > 10 and positionX < 470 and positionY > 10 and positionY < 260 then screen:blit(positionX, positionY, voitureright) end screen:clear() screen:print(10,10, titre, vert) 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"[img=https://preprod.metagames.fr/forums/images/smilies/clin.gif] sccnt=sccnt+1 end screen.waitVblankStart() screen.flip() end j'aimerai faire avance la voiture vers la droite esque quelqu'un saurai m'aider ? j'aimerai aussi que la voiture ne sorte plus en haut en bas et a gauche de l'ecran. merci d'avance Lien vers le commentaire Partager sur d’autres sites More sharing options...
PhYn Posté(e) le 12 juillet 2006 Partager Posté(e) le 12 juillet 2006 Humm je ne connais pas trop ce langage, tout ce que je peut te dire c'est une des procédure possible dans d'autres langages, par ex pour faire avancer le serpent dans un snake. En gros, tu fais une boucle qui va détecter à chaque tour si une touche est pressée ou non. Chaque touche correspond à un code que l'on obtient avec la fonction getkey, (enfin en tout cas en basic c'est dans ce genre là) que tu assignes à une variable et sur laquelle tu fais un test booleen: key = getkey(); if key = ... then .... if key = ... then .... suivant la valeur de key et donc la touche pressée, la voiture ira dans telle ou telle direction et tel ou tel image de la voiture apparaîtra. Mais bon, cela te permettra juste de faire avancer la voiture dans un des sens cardinal. Pas de diagonales... après, tout dépend de la façon dont tu veut que ta voiture se déplace. C'est surement plus dur de pouvoir la faire tourner degré par degré par exemple. Bref, suffit de réfléchir et tu pourra trouver la solution, moi je ne la connais pas mais bon courage !! Lien vers le commentaire Partager sur d’autres sites More sharing options...
PhYn Posté(e) le 12 juillet 2006 Partager Posté(e) le 12 juillet 2006 Désolé pour le doublon impossible d'éditer et j'avais pas lu la deucxième question pour l'empêcher de sortir tu rajoute une clause dans chaque tour de boucle qui dit que si la position de la voiture est sur l'un des bords de l'écran, alors rien ne se passe. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant