/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package garten.model; import garten.view.Fenster; import garten.view.FlaecheBeet; import garten.view.FlaechePflanzen; import garten.view.FlaecheWeg; import java.util.ArrayList; /** * * @author Jan */ public class Gaertner { private Garten meinGarten; private Fenster fenster; private FlaecheBeet flbeet; private FlaecheWeg flweg; private FlaechePflanzen flpfl; private ArrayList pflanzen; private ArrayList beete; Pflanze1 pfl; Pflanze1 pfl2; int height; int width; int[] randomwertex; int[] randomwertey; public Gaertner(Fenster fenster, FlaecheBeet flbeet, FlaecheWeg flweg,FlaechePflanzen flpfl) { meinGarten = new Garten(flbeet,flweg,flpfl); this.fenster = fenster; //Zur späteren Steuerung Pop up usw. this.flpfl = flpfl; pflanzen = new ArrayList<>(); beete = new ArrayList<>(); //Initialisierung der Wege/Beete height = fenster.getHeight(); width = fenster.getWidth(); randomwertex = new int[4]; randomwertey = new int[4]; randomwertex[0] = 10; randomwertey[0] = 10; randomwertex[3] = width - 50; randomwertey[3] = height - 50; for (int i = 1; i < 3; i++) //erstelle Random Punkte für Wege + Beete { int wegendex = (int) (Math.random() * (170*i) + (200*i)); int wegendey = (int) (Math.random() * (170*i) + (200*i)); randomwertex[i] = wegendex; randomwertey[i] = wegendey; } for (int i = 0; i < randomwertex.length; i++) //Garten Wege hinzufügen { meinGarten.hinzufuegenWeg(randomwertex[i], randomwertey[0], randomwertex[i], randomwertey[3]); meinGarten.hinzufuegenWeg(randomwertex[0], randomwertey[i], randomwertex[3], randomwertey[i]); } for (int i = 0; i < randomwertex.length - 1; i++) //Garten Beete hinzufügen { for (int j = 0; j < randomwertey.length - 1; j++) { meinGarten.hinzufuegenBeet(randomwertex[i] + 10, randomwertey[j] + 10, randomwertex[i + 1]-randomwertex[i]-20,randomwertey[j+1] - randomwertey[j]-20); } } meinGarten.zeichneWeg(); meinGarten.zeichneBeete(); beete = meinGarten.getBeete(); for(Beet b : beete) { Boolean bepflanzung = true; Boolean versetzt = true; int[] temp = b.getKoordinaten(); int tempx = temp[0]+20; int tempy = temp[1]+40; int tempxrand = temp [2]; int tempyrand = temp [3]; do { System.out.println("Test"); pfl = new Pflanze1(tempx,tempy,3); meinGarten.hinzufuegenPflanze(pfl); tempx = tempx +50; if(tempx > tempxrand -10) { if(versetzt) { tempx = temp[0]+40; versetzt = false; } else { tempx = temp[0]+20; versetzt = true; } tempy = tempy+60; } if(tempy > tempyrand -10) { bepflanzung = false; } } while (bepflanzung); break; //Da bei gesamten zu viel Rechenaufwand :( müssen die wirklich einzelen auswählen // gibt noch Verbesserungen beim zeichnen aber mach ich später ;) } meinGarten.zeichnePflanzen(); } /* public Pflanze getPflanze(int x,int y) { return meinGarten.naechstePflanze(x,y); }*/ }