public void sauvegarderEnvironnement(String nomDeSauvegarde) { File environnements = new File(System.getProperty("user.dir") + "/bin/civilisation/ressources/environnements"); if (!environnements.isDirectory()) environnements.mkdir(); PrintWriter out; try { out = new PrintWriter( new FileWriter( System.getProperty("user.dir") + "/bin/civilisation/ressources/environnements/" + nomDeSauvegarde + Configuration.getExtension())); out.println("Nom : " + nomDeSauvegarde); out.println("Largeur : " + largeur); out.println("Hauteur : " + hauteur); for (int i = 0; i < Configuration.civilisations.size(); i++) { if (gCarte.getStartingPositions().containsKey(Configuration.civilisations.get(i))) { out.println( "Civilisation : " + Configuration.civilisations.get(i).getNom() + "," + gCarte.getStartingPositions().get(Configuration.civilisations.get(i)).getX() + "," + gCarte.getStartingPositions().get(Configuration.civilisations.get(i)).getY()); } } out.println(); for (int i = 0; i < Configuration.terrains.size(); i++) { out.println("Terrain : " + Configuration.terrains.get(i).getNom()); } for (int i = 0; i < this.getCarte().size(); i++) { out.print("Rang : "); for (int j = 0; j < this.getCarte().get(i).size(); j++) { Terrain t = this.getCarte().get(i).get(j).getTerrain(); int k = 0; while (!t.equals(Configuration.terrains.get(k))) { k++; } out.print(k); if (j != this.getCarte().get(i).size() - 1) { out.print(","); } } out.println(); } out.close(); } catch (IOException ex) { // TODO Auto-generated catch block ex.printStackTrace(); } }
public PanelEnvironnement(PanelModificationSimulation panel) { this.setLayout(null); panelPrincipal = panel; carte = new ArrayList<ArrayList<PseudoPatch>>(); redimensionner(); gCarte = new GCarte(this, espacementHorizontalCarte, espacementVerticalCarte, this); gCarte.setLocation(40, 40); this.add(gCarte); }
public void generationEnvironnementViaImage(BufferedImage img) { largeur = img.getWidth(); hauteur = img.getHeight(); redimensionner(); for (int i = 0; i < hauteur; i++) { System.out.println(i / (double) hauteur * 100. + "%"); for (int j = 0; j < largeur; j++) { carte.get(i).get(j).setTerrain(getTerrainSemblable(new Color(img.getRGB(j, i)))); } } gCarte.actualiser(); }
public void zoom(int z) { taillePseudoPatch += z; gCarte.actualiser(); this.revalidate(); }