Guest User

Untitled

a guest
Dec 11th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. /**
  2. * Fait apparaître une plante dans une case indiquée
  3. * @param plantClass La classe de la plante à faire spawn
  4. * @param ligne La colonne de la plante [1 ; 5]
  5. * @param colonne La ligne de la plante [1 ; 5]
  6. */
  7. public void spawnPlant(Class<?> plantClass, int ligne, int colonne) {
  8. if (colonne > 9 || ligne > 5 || colonne < 0 || ligne < 0) {
  9. System.out.println("Coordonnées de spawn de la plante incorrects");
  10. return;
  11. }
  12. // On va créer une plante à partir de la classe fournie
  13. Plant plant;
  14. try {
  15. // Instanciation de la plante
  16. plant = (Plant) plantClass.getConstructors()[0].newInstance(ligne, colonne);
  17. } catch (IllegalArgumentException e) {
  18. System.out.println("Constructeur mal renseigné");
  19. return;
  20. } catch (ClassCastException cce) {
  21. // Si la classe fournie n'est pas castable en Plant c'est que ce n'est pas une classe qui hérite de Plante
  22. System.out.println("La classe que vous avez fournie n'hérite pas de la classe Plante");
  23. return;
  24. } catch (Exception e) {
  25. e.printStackTrace();
  26. return;
  27. }
  28. // On affecte l'objet à une case du tableau.
  29. this.plantField[ligne-1][colonne-1] = plant;
  30. }
Add Comment
Please, Sign In to add comment