/// <summary> /// Paramètre les positions du bateau passé en paramètre dans la liste des positions de bateau /// </summary> /// <param name="joueur">Joueur associé au bateau à placer</param> /// <param name="type">Type de bateau à placer</param> /// <param name="x">Position x du premier point de la droite associée au bateau à placer</param> /// <param name="y">Position y du premier point de la droite associée au bateau à placer</param> /// <param name="alignement">Alignement du bateau à placer</param> public static void PlacerBateau(int joueur, Bateau.TYPES type, int x, int y, Bateau.ALIGNEMENT alignement) { int[,] positionBateaux = Bateau.ObtenirPositionBateauxJoueur(joueur); int[] vieBateaux = Bateau.ObtenirVieBateauxJoueur(joueur); int x1; int y1; if (alignement == ALIGNEMENT.LIGNE) { x1 = x + Bateau.LongueurBateaux[(int)type] - 1; y1 = y; } else { y1 = y + Bateau.LongueurBateaux[(int)type] - 1; x1 = x; } if (x < 0 || y < 0 || x1 >= Grille.LargeurGrille || y1 >= Grille.LargeurGrille) { throw new Exception("Impossible de placer le bateau. Il se trouve en dehors de la grille."); } vieBateaux[(int)type] = Bateau.LongueurBateaux[(int)type]; positionBateaux[(int)type, 0] = x; positionBateaux[(int)type, 1] = y; positionBateaux[(int)type, 2] = x1; positionBateaux[(int)type, 3] = y1; Grille.mettreaJourGrilleUnBateau(Grille.ObtenirGrilleJoueur(joueur), x, y, x1, y1); }
/// <summary> /// Met à jour la grille à partir de la position de plusieurs bateaux /// </summary> /// <param name="grille">Grille à mettre à jour</param> /// <param name="positionbateaux">Tableau en 2 dimensions contenant les positions de plusieurs bateaux</param> public static void mettreaJourGrillePlusieursBateaux(int[,] grille, int [,] positionbateaux) { for (int j = 0; j < (Bateau.NombreTypesBateaux); j++) { int x1 = positionbateaux[j, 0]; int y1 = positionbateaux[j, 1]; int x2 = positionbateaux[j, 2]; int y2 = positionbateaux[j, 3]; Grille.mettreaJourGrilleUnBateau(grille, x1, y1, x2, y2); } }