Giter VIP home page Giter VIP logo

battleship's People

Contributors

gclaudel avatar remi-p avatar tgourdel avatar

Watchers

 avatar  avatar

Forkers

mayuba

battleship's Issues

Nombre de bateaux pour chaque type

Il faudra mettre en place une vérification qu'il y ait le bon nombre de bateaux. Du coup ça passe par l'attribut size (pour qu'il y ait qlc comme 20% de place utilisée, de mémoire), mais aussi par la valeur du noeud de chaque navire.
Donc il faudra peut-être l'ajouter au HashMap.

Et après hop, test et levée d'exception !

CamelCase

Tous les noms de méthodes/attributs/... ne respectent pas la notation du projet.
Sachant qu'il y a une pénalité de trois points si on ne respecte pas toutes les contraintes du projet 😃

Étape 3 - Stratégies

Mémo ;

  • Finir les stratégies + implémentation dans le grid.xml
  • Expliquer brièvement le fonctionnement dans le Readme

set de l'attribut "size" dans la class Ship

L'attribut size n'est pas encore initialisé par le constructeur de la classe Ship, en effet size s'obtient dans le fichier grid.xml alors que ship n'ouvre que le fichier ships.xml pour l'instant. Je trouve cela embêtant de devoir ouvrir aussi grid.xml alors qu'on l'ouvre déjà à l'instanciation d'un objet Grid ...

setTypes non fonctionnel

Juste pour prévenir, dans la nouvelle classe Type, la méthode setTypes a un comportement étrange que je n'ai pas eu le temps de corriger (cf les commentaires).

IndexOutOfBounds - Lancement du jeu

Quelques fois lors du lancement du jeu on tombe sur l'erreur suivante :

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    at java.util.ArrayList.rangeCheck(ArrayList.java:653)
    at java.util.ArrayList.get(ArrayList.java:429)
    at fr.enseirb.battleship.Grid.random_shipname(Grid.java:174)
    at fr.enseirb.battleship.Grid.random_ships(Grid.java:135)
    at fr.enseirb.battleship.Grid.<init>(Grid.java:58)
    at fr.enseirb.battleship.IA.InitialisationGrid(IA.java:19)
    at fr.enseirb.battleship.IA.<init>(IA.java:14)
    at fr.enseirb.battleship.IA.<init>(IA.java:9)
    at fr.enseirb.battleship.App.main(App.java:21)

Command Exception

Camand exception qui ne prend pas en compte certaines erreurs :

exemple :

fire z z
fire 5 9*

Taille de la grille

Quand on change la taille de la grille (différent de 10 x 10), le positionnement des bateaux et l'affichage de la grille sont erronés. :)

Boucle infinie - Debug, stratégie PACK

Yop,

J'étais en train de vérifier que les différentes étapes fonctionnent toutes. J'ai pas touché au placement (PACK), ni au firing (FAR), mais il semble que certaines fois, on entre dans une boucle infinie et le programme n'arrive pas à placer les bateaux :

...
One or both of Star Destroyer coordinates are out of bounds
    x => 2
    y => 11
One or both of O'Neill coordinates are out of bounds
    x => 1
    y => 11
One or both of O'Neill coordinates are out of bounds
    x => 0
    y => 11
One or both of Destiny coordinates are out of bounds
    x => 2
    y => 11
One or both of USS Enterprise coordinates are out of bounds
    x => 1
    y => 11
One or both of Destiny coordinates are out of bounds
    x => 1
    y => 11
One or both of Galactica Battlestar coordinates are out of bounds
    x => 0
    y => 11
One or both of Galactica Battlestar coordinates are out of bounds
    x => 0
    y => 11
...

Enumerations

Coucou,
Remi, tu as supprimé l'enum Type pour créer une classe type. La classe je la trouve utilise, mais on aurait pu faire les deux. L'enum est pratique pour faire des switchs, car on peut faire des switch sur des enums. Je pense que pour la suite ça peut être pratique, peut-être ! :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.