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

 Java Discussion :

Jeu de plateau


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2015
    Messages
    224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2015
    Messages : 224
    Par défaut Jeu de plateau
    Bonjour,
    je souhaiterais mettre en oeuvre un petit jeu de plateau, du stylo "la bonne paye" ou "Monopoly".
    Cependant je ne sais pas trop par où commencer, je n'ai jamais vraiment codé de "gros" programmes en java, ce serait mon premier.
    J'ai donc commencé par faire quelques diagrammes UML pour me mettre sur la piste, mais je ne sais pas si ça pourrait marcher.
    De plus je ne vois pas trop comment choisir entre une classe abstraite et une interface...

    Voici à quoi j'avais pensé :
    - Interface Plateau
    - Interface Case qui implémente Plateau
    - Tout un tas de classes concrètes qui implémentent Case, comme la Case Départ, ou Prison pour le Monopoly
    - Pour le Monopoly, j'ai fait une classe abstraite Propriété avec 3 classes qui étendent classe abstraite (Terrain, gare, Service Publique).

    Cependant je ne suis pas sûr de moi, car dans mon main je ne pourrais pas faire : Plateau plateau1 = new Plateau(); par exemple, comme Plateau est une interface ?
    Du coup peut être faudrait-il faire une classe plateau, qui contiendrait un arraylist de Case ?

    Bien sûr il faut gérer le joueur aussi, mais chaque chose en son temps
    Pour le moment, pas d'interface graphique, je voudrais déjà tester quelque chose qui marche en mode console.

    Pourriez-vous me donner votre avis, et m'aider s'il vous plait ?

    Merci, et bonne journée !

  2. #2
    Membre Expert
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 088
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 088
    Par défaut
    Bonjour,
    avec votre description, j'ai envie de dire que Plateau ne devrait pas être une interface, mais plutôt une clase qui implémente Case et une autre interface du genre modelePlateau qui embarquerait les méthodes abstraites acutellements définies dans Plateau.
    Ainsi, il ne resterait plus qu'à définir un constructeur pour la classe Plateau qui demanderait en paramètres le nombre de cases, et une collection de vos classes abstraite Terrain, Gare, etc.. pour "habiller" les cases. Les méthodes implémentées par l'interface modelePlateau auront pour rôle de définit l'action à mener lorsqu'un pion arrive sur la case.
    Enfin, c'est une idée.
    Il y doit y avoir u bon millier d'autre possibilités.
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

  3. #3
    Membre émérite
    Avatar de Cafeinoman
    Homme Profil pro
    Couteau suisse d'une PME
    Inscrit en
    Octobre 2012
    Messages
    628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Couteau suisse d'une PME

    Informations forums :
    Inscription : Octobre 2012
    Messages : 628
    Par défaut
    Salut.
    Mon opinion, pour ce qu'elle vaut :
    -une classe plateau, avec une Liste de Case. Une liste te permet de maintenir l'odre des cases, d'avoir un index,...
    -une classe Case, qui sais s'il y a un pion dessus, et qui implémente des ReglesCase.
    -des interfaces ReglesCases, qui definissent les actions possibles sur chaque cases.
    Tu fait un constructeur de plateau qui prend la liste en paramètre, des méthodes statiques avec des listes prédéfinies, et tu as tes règles. Reste a faire l'interface graphique.

  4. #4
    Membre Expert
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 088
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 088
    Par défaut
    Il est parti St-42-FCM-57 ?
    Dommage, ça semblait intéressant...
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

  5. #5
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2015
    Messages
    224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2015
    Messages : 224
    Par défaut
    Bonjour,

    Excusez-moi, je n'avais pas eu vos réponses.
    Comme je n'avais pas eu de réponses pendant un certain temps, je pensais ne plus en avoir... Du coup j'ai fait quelque chose, mais ce n'est pas exactement pareil que vous.
    J'ai donc une interface case, avec des classes qui viennent l'implémenter. Ensuite j'ai une classe plateau qui est, en fait, une liste de "case".
    Ce n'est peut-être pas la méthode la plus adéquate, mais je ne peux plus changer maintenant. Et puis ça fait ce que je demande...

    Vous pourriez peut-être m'aider, car je bloque sur un point : les cartes. Par exemple, au monopoly, il en existe 2 types : cartes chances et cartes caisse de communauté.

    Moi j'avais pensé à ce type d'architecture :
    - interface Carte
    - Classe abstraite CarteChance qui implémente Carte
    - Classe concrètes qui héritent de CarteChance, comme la carte AllerEnPrison par exemple.

    Seulement, dans mon main, pour piocher une carte, il va falloir que je fasse quelque chose du style "joueur.piocherCarteChance()". Et c'est là que je bloque. Je ne vois pas où déclarer une liste de cartesChance (qui représentera mon tas de cartes chance)...

    Bonne journée à vous, et merci pour l'aide déjà fournie !

  6. #6
    Membre Expert
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 088
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 088
    Par défaut
    En fait, il vous faudrait une liste de textes de cartes chances, et une liste de textes de cartes Caisse de communauté si toutefois il s'agissait du Monopoly. De toute manière, vous allez bien devoir stocker les textes de chaque carte quelque part. Soit sous forme d'enregistrements dans une base de données, soit sous forme de simple fichiers textes locaux. Dans la phase d'initialisation du jeu, il suffira de charger aléatoirement tous les textes des cartes chances dans une List<String> et faire de même avec les textes des autre cartes. A l'issu de cette initialisation vous aurez à votre disposition deux listes prêtes à l'emploi que vous pourrez manipuler comme on manipule le tas de carte sur le vrai plateau de jeu. Il suffira pour chaque tirage de supprimer le premier enregistrement de la liste lors de l'utilisation de la carte, et reformer cette liste une fois vide en procédant à nouveau aléatoirement. Ou tout simplement en remettant l'enregistrement en fin de liste selon le choix du mode de jeu sélectionné.
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

Discussions similaires

  1. CAYLUS - Jeu de plateau
    Par Blaede dans le forum Projets
    Réponses: 12
    Dernier message: 26/11/2008, 17h24
  2. Projet jeu de plateau, demande d'aide
    Par Fullmetal82 dans le forum Projets
    Réponses: 1
    Dernier message: 24/06/2007, 00h58
  3. [.NET 2.0] Jeu de plateau style démineur
    Par Aspic dans le forum Windows Forms
    Réponses: 10
    Dernier message: 13/02/2007, 12h57
  4. [GUI]jeu de plateau
    Par le Daoud dans le forum Interfaces Graphiques en Java
    Réponses: 11
    Dernier message: 31/08/2005, 13h38

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