IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation multimédia/Jeux Python Discussion :

Gestion des déplacements dans un jeu


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Gestion des déplacements dans un jeu
    Bonsoir à tous,

    Je cherche a réaliser un jeu grâce à ce fabuleux système qu'est Python. Mon jeu se présentera sous la forme d'une zone image et d'une zone de texte. Le joueur pourra donc se situer à tout moment dans le jeu. Je m'explique: S'il fait un pas en avant, l'image précédente disparait et une image (10-20 mètres plus loin) la remplace. S'il décide de faire marche-arrière, l'image disparait et sa vue se "retourne". Voici un schéma qui expliquera mieux et permettra d'être plus compréhensible.

    Image de départ Image0.jpg
    Image vue arrière de départ Image1.jpg
    Image vue de droite départ Image0droite.jpg (inversion si Image1.jpg)
    Image vue de gauche départ Image0gauche.jpg (idem)

    Avancer: image + 2 ou -2 suivant parité
    Vue arrière: image +1 ou -1 suivant parité


    ~~~~~~~~~ Vue arrière
    ~~~~~~~~~~~~ v
    ~~~~~~~~~~ -------
    Vue de droite-> [Image] <-Vue de gauche
    ~~~~~~~~~~ -------
    ~~~~~~~~~~~~^
    ~~~~~~~~ Vue de face

    J'ai utilisé une liste pour déterminer si le joueur pouvait aller tout droit, tourner à droite ou tourner à gauche.
    J'aimerai que l'on puisse avancer tout droit une fois que l'on a tourné, c'est-à-dire que l'axe X devienne l'axe Y et inversement.

    Voici mon code jusqu'à présent (J'utilise la librairie Pygame):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    import os, pygame
    from pygame.locals import *
     
    def main():
        pygame.init() #initialisation
        screen = pygame.display.set_mode((800, 600)) #Création de la fenêtre
        imgList = []
        droitePossible = [1,0,0,0,1,0]
        gauchePossible = [0,1,0,0,1,0]
        facePossible = [1,0,1,1,0,1]
        for i in range(0,6):#Indexage des images
            string = "Image" + chr(i+48) + ".jpg"
            img = pygame.image.load(string).convert()
            imgList.append(img)
     
        rectangle = pygame.Rect( 0 , 0 , 800 , 600 )#Création du rectangle
        screen.blit( imgList[0] , rectangle)
        pygame.display.flip()#Affichage
     
        clock = pygame.time.Clock()
        clock.tick(10)
     
        imgPos = 0
        imgCote = 0
        zone = imgList[imgPos]
        while 1:#Boucle infinie
            for e in pygame.event.get():
                if e.type == QUIT:
                    return
                if e.type == 2:#touche enfoncée
                        if(e.key == K_s):#touche S
                            if(imgPos%2 == 0):
                                imgPos = imgPos + 1
                            else: imgPos = imgPos - 1
                            zone = imgList[imgPos]
                        if((e.key == K_w) and (facePossible[imgPos] == 1)):#touche Z
                            if(imgPos%2 == 0):
                                imgPos = imgPos + 2
                            else: imgPos = imgPos -2
                            zone = imgList[imgPos]
                        if((e.key == K_a) and (gauchePossible[imgPos] == 1)):#touche Q
                            if(imgPos%2 == 0):
                                imgGauche = pygame.image.load("Image" + chr(imgPos + 48) + "droite.jpg").convert()      
                            else: imgGauche = pygame.image.load("Image" + chr(imgPos-1 + 48) + "gauche.jpg").convert()
                            zone = imgGauche
     
                        if((e.key == K_d) and (droitePossible[imgPos] == 1)):#touche D
                            if(imgPos%2 == 0):
                                imgDroite = pygame.image.load("Image" + chr(imgPos + 48) + "gauche.jpg").convert()
                            else: imgDroite = pygame.image.load("Image" + chr(imgPos-1 + 48) + "droite.jpg").convert()
                            zone = imgDroite
     
     
            screen.blit( zone, rectangle)
            pygame.display.flip()
     
    main()
    Merci d'avance à toute personne qui lira ce topic.

    Ps: Désoler de poster dans deux sections différentes, j'avais pas fais attention au début.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 049
    Points : 1 380
    Points
    1 380
    Par défaut
    5 mois plus tard ....
    je serai ravi de t'aider mais je ne sais pas si c'est encore d'actualité ... ?

Discussions similaires

  1. Gestion des sauvegardes dans un jeu en C++
    Par Invité dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 21/05/2012, 09h58
  2. [Référencement] Gestion des "includes" dans Google
    Par odelayen dans le forum Référencement
    Réponses: 5
    Dernier message: 20/04/2005, 17h07
  3. [Sécurité]Gestion des accès dans plusieurs bases
    Par vincentj dans le forum Débuter
    Réponses: 1
    Dernier message: 05/01/2005, 14h19
  4. Gestion des headers dans un Makefile
    Par Weren dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 09/11/2004, 10h44
  5. [VB6] Gestion des erreurs dans une dll
    Par zimba-tm dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 02/08/2004, 11h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo