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 :

Problème sans doute simple, jeu console


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Lycéen
    Inscrit en
    Mai 2012
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2012
    Messages : 68
    Points : 47
    Points
    47
    Par défaut Problème sans doute simple, jeu console
    Bonjour,

    Aujourd'hui je me suis lancé dans un projet de jeu en mode console, j'ai donc créé trois classes, Map, Joueur et Game (instancié dans Main), je génère ma map de cette façon;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public Map()
            {
                for (int i= 1; i!=30; i++)
                {
                    for (int j = 1; j != 90; j++)
                    {
                        this.plateau[i,j] = 0; // map vide
                    }
                }
                this.plateau[10, 10] = 1; // emplacement initial du joueur 
            }
    puis, j'affiche la map dans la console de cette façon:

    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
            void RefreshMap()
            {
                int cursorPos = 0;
                int[,] plateau = new int[30, 90];
                plateau = map.getMap();
                for (int i = 1; i != 30; i++)
                {
                    for (int j = 1; j != 90; j++)
                    {
                        Console.Write(plateau[i, j]);
                        Thread.Sleep(10);
                    }
                    cursorPos++;
                    Console.SetCursorPosition(0, cursorPos);
     
                }
            }
    Mais ma console m'affiche par la suite:
    Nom : aIskp3Rtu.png
Affichages : 330
Taille : 18,6 Ko

    J'imagine que c'est une erreur bête, mais pour le moment j'ai pas la solution, quelqu'un à une idée ?
    Merci.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    peut-etre la largeur de la console qui par defaut doit faire 80 de large sur 24 de haut (sinon, ca va scroller)
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  3. #3
    Membre expérimenté Avatar de SkyZoThreaD
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2013
    Messages
    583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 583
    Points : 1 615
    Points
    1 615
    Par défaut
    Tu as testé avec la fenêtre en plein écran?
    Un façon d'éviter ça est peut-être d'appeler SetCursorPos à chaque case...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            void RefreshMap()
            {
                int[,] plateau = new int[30, 90];
                plateau = map.getMap();
                for (int i = 0; i != 30; i++) 
                {
                    for (int j = 0; j != 90; j++) 
                    {
                        Console.SetCursorPosition(i, j);
                        Console.Write(plateau[i, j]);
                    }
                }
            }
    La liberté est à la sociologie ce que l'instant présent est à la physique relativiste.

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

Discussions similaires

  1. [Wamp] problème avec sendmail. Sans doute renseignement d'un .ini deffectueux
    Par HLsoft dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 02/06/2016, 18h12
  2. [MySQL] Problème de tableau (sans doute!)
    Par Deexit dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 02/07/2010, 18h41
  3. Problème avec XML::Simple
    Par ViRouF dans le forum Modules
    Réponses: 7
    Dernier message: 10/04/2006, 18h17
  4. Réponses: 4
    Dernier message: 19/02/2006, 19h18
  5. Problème de Paramétrage en mode console
    Par MrPink dans le forum Installation
    Réponses: 1
    Dernier message: 15/11/2005, 20h39

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