Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Fait apparaître une plante dans une case indiquée
- * @param plantClass La classe de la plante à faire spawn
- * @param ligne La colonne de la plante [1 ; 5]
- * @param colonne La ligne de la plante [1 ; 5]
- */
- public void spawnPlant(Class<?> plantClass, int ligne, int colonne) {
- if (colonne > 9 || ligne > 5 || colonne < 0 || ligne < 0) {
- System.out.println("Coordonnées de spawn de la plante incorrects");
- return;
- }
- // On va créer une plante à partir de la classe fournie
- Plant plant;
- try {
- // Instanciation de la plante
- plant = (Plant) plantClass.getConstructors()[0].newInstance(ligne, colonne);
- } catch (IllegalArgumentException e) {
- System.out.println("Constructeur mal renseigné");
- return;
- } catch (ClassCastException cce) {
- // Si la classe fournie n'est pas castable en Plant c'est que ce n'est pas une classe qui hérite de Plante
- System.out.println("La classe que vous avez fournie n'hérite pas de la classe Plante");
- return;
- } catch (Exception e) {
- e.printStackTrace();
- return;
- }
- // On affecte l'objet à une case du tableau.
- this.plantField[ligne-1][colonne-1] = plant;
- }
Add Comment
Please, Sign In to add comment