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

C++ Discussion :

Jeu du Snake


Sujet :

C++

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2012
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Jeu du Snake
    Bonjour,
    je suis débutante en informatique avec le langage C++ et le logiciel Visual Studio 2008. Dans le cadre de mes études j'ai un jeu du snake à réaliser en C++ avec interface graphique en utilisant les MFC.
    J'ai à peu près compris comment organiser ma programmation, mais je me suis heurtée à un problème qui me bloque totalement le démarrage de mon projet.
    En effet je dois afficher mon plateau de jeu dans la vue. Etant donné que je dois avoir plusieur niveau différent je veux afficher mon plateau de jeu en le comparant à un tableau statique 2D. Voici le code que j'ai commencé a taper et en fait je voudrais savoir comment faire pour afficher mon terrain de jeu avec la fonction CRectangle.
    J'ai vraiment besoin qu'on m'explique où est le problème de l'affichage.

    En gros je ne sais pas comment faire dessiner des rectangles en liens avec les i et j du tableau

    Merci de votre aide.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 178
    Points : 12 306
    Points
    12 306
    Par défaut
    Je ne vois pas trop le rapport avec les MFC.

    Faut juste faire varier les coordonnées données à FillSolidRect en fonction de i et j

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pDC->FillSolidRect(x1+((x2-x1)*i),y1+((y2-y1)*j),x2+((x2-x1)*i),y2+((y2-y1)*j),(tableau1.m_Tab[i][j]==1)?RGB(255,0,0):RGB(0,0,255));
    Comme je trouve le carré de départ un peu grand, moi je changerais x2 et y2 pour faire de plus petites casses.

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2012
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci pour ta réponse,
    Le rapport avec les MFC, c'est que je dois faire ce projet avec les MFC tout simplement.

    Je viens de tester mon programme avec ton code mais ça ne me trace qu'une ligne droite de carré alors que je voudrais le contour du plateau en rouge et l’intérieur en noir. Peux tu m'aider à démarrer cette partie la.
    Dans mon test je regarde si je trouve des 0 dans mon tableau je trace des carrés rouge sinon je trace des carrés noirs.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 178
    Points : 12 306
    Points
    12 306
    Par défaut
    Désolé, le code n'a pas été testé et j'ai mal interprété les paramètres 3 et 4 de FillSolidRect (les MFC sont pas super cohérente sur ce domaine).

    Après réflexion, le mieux, c'est de découpler l'affichage de la logique du jeu.

    Affichez directement un rectangle avec CDC::Rectangle
    http://msdn.microsoft.com/en-us/library/8w4fzfxf.aspx

    Le bord et l'intérieur seront affichés en un coup.

    La gestion du changement de taille de la fenêtre sera beaucoup plus simple.

  5. #5
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2012
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup pour ton aide Bacelar,
    j'ai reussi à faire ce que je voulais grace à ton petit bout de code, j'ai seulement changé les paramètres 3 et 4 comme tu l'a dis et j'ai pu tracer mes rectangles !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Jeu du snake en python
    Par pythonovice dans le forum Général Python
    Réponses: 1
    Dernier message: 24/04/2015, 10h46
  2. Un jeu de snake en 2D et tile mapping
    Par Wanabee dans le forum Qt
    Réponses: 38
    Dernier message: 20/03/2012, 15h13
  3. Jeu du snake en C
    Par deWeb dans le forum C
    Réponses: 4
    Dernier message: 01/01/2011, 03h18
  4. Aide pour pouvoir ammeliorer mon jeu (Snake)
    Par kump_ dans le forum Projets
    Réponses: 24
    Dernier message: 13/08/2008, 02h26
  5. [ancien jeu] Snake deux joueur en ligne?
    Par Extra-Nitro dans le forum Web
    Réponses: 7
    Dernier message: 28/02/2007, 18h59

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