Update Spielerverwaltung
This commit is contained in:
@@ -1,15 +0,0 @@
|
|||||||
Seb;245
|
|
||||||
Elmo;240
|
|
||||||
Moritz;220
|
|
||||||
Alaa-Aldin;217
|
|
||||||
Fabian;215
|
|
||||||
Thomas;1233
|
|
||||||
Emil;-21331
|
|
||||||
Heinz;312
|
|
||||||
Gert;234
|
|
||||||
Kasper;24
|
|
||||||
Jens;234
|
|
||||||
Paul;234
|
|
||||||
Till;553
|
|
||||||
Reiner;462
|
|
||||||
Achim;2344
|
|
29
src/de/jaujau/UnitTests/TEST_Spielerverwaltung.java
Executable file
29
src/de/jaujau/UnitTests/TEST_Spielerverwaltung.java
Executable file
@@ -0,0 +1,29 @@
|
|||||||
|
package de.jaujau.UnitTests;
|
||||||
|
|
||||||
|
//import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import de.jaujau.daten.Spielerverwaltung;
|
||||||
|
|
||||||
|
class TEST_Spielerverwaltung {
|
||||||
|
|
||||||
|
private Spielerverwaltung verwaltung;
|
||||||
|
|
||||||
|
@BeforeEach
|
||||||
|
void setUp() throws Exception {
|
||||||
|
verwaltung = new Spielerverwaltung("highscore.csv");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void test() {
|
||||||
|
verwaltung.lesenDatei();
|
||||||
|
verwaltung.setSpieler("Weihnachtsmann");
|
||||||
|
System.out.println("Spieler " + verwaltung.getSpieler());
|
||||||
|
System.out.println("Level " + verwaltung.getLevel());
|
||||||
|
verwaltung.erhoehePunkte(1);
|
||||||
|
verwaltung.schreibeDatei();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -6,46 +6,30 @@
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
package de.jaujau.daten;
|
package de.jaujau.daten;
|
||||||
//import de.jaujau.spiellogik.Spiel;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class Spieler
|
* Klasse Spielerdaten
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class Spielerdaten {
|
public class Spielerdaten {
|
||||||
|
|
||||||
private int punktestand; // Punktestand des Spielers
|
private int punktestand;
|
||||||
private String name /* = Spieler.getSpieler() */; // Name des Spielers
|
private String name;
|
||||||
|
|
||||||
public Spielerdaten (String name, int punkte) { //Arraylist
|
public Spielerdaten (String name, int punkte) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.punktestand = punkte;
|
this.punktestand = punkte;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the value of punktestand
|
|
||||||
*
|
|
||||||
* @return the value of punktestand
|
|
||||||
*/
|
|
||||||
|
|
||||||
public int getPunktestand() { //Zur<75>ckgeben der gesammelten Punkte
|
public int getPunktestand() {
|
||||||
return punktestand;
|
return punktestand;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setPunktestand(int punkte) { //Einsetzen des Punktestands
|
public void setPunktestand(int punkte) {
|
||||||
punktestand = punkte;
|
punktestand = punkte;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* Get the value of name
|
|
||||||
*
|
|
||||||
* @return the value of name
|
|
||||||
*/
|
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setName(String Name) { //Einsetzen des Namen des Spielers
|
|
||||||
name = Name;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
337
src/de/jaujau/daten/Spielerverwaltung.java
Normal file → Executable file
337
src/de/jaujau/daten/Spielerverwaltung.java
Normal file → Executable file
@@ -1,195 +1,188 @@
|
|||||||
/**
|
|
||||||
|
|
||||||
* @author Alaa Aldin
|
|
||||||
|
|
||||||
* @version 1.0
|
|
||||||
|
|
||||||
*/
|
|
||||||
package de.jaujau.daten;
|
package de.jaujau.daten;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.BufferedWriter;
|
import java.io.BufferedWriter;
|
||||||
|
import java.io.File;
|
||||||
import java.io.FileReader;
|
import java.io.FileReader;
|
||||||
import java.io.FileWriter;
|
import java.io.FileWriter;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class Spielerverwaltung {
|
public class Spielerverwaltung {
|
||||||
private int local;
|
|
||||||
private int level;
|
|
||||||
private Spielerdaten spieler;
|
|
||||||
private Spielerdaten aktuellerSpieler;
|
|
||||||
private ArrayList <Spielerdaten> daten = new ArrayList<Spielerdaten>();
|
|
||||||
private String [][] transdaten;
|
|
||||||
public void addSpieler(String name) { //Neue Spieler hinzuf<75>gen
|
|
||||||
//leseDaten();
|
|
||||||
daten.add(new Spielerdaten(name, 0));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setaktuellerSpieler(String name) {
|
|
||||||
aktuellerSpieler = sucheSpieler(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public Spielerdaten sucheSpieler(String name) {
|
|
||||||
for (int i = 0; i < daten.size(); i++) {
|
|
||||||
if (daten.get(i).getName().equals(name)) {
|
|
||||||
System.out.println("SPIELERVERWALTUNG: Spieler gefunden");
|
|
||||||
return daten.get(i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
addSpieler(name);
|
|
||||||
System.out.println("SPIELERVERWALTUNG: Neuer Spieler erstellt");
|
|
||||||
return daten.get(daten.size()-1);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public Spielerdaten getaktuellerSpieler() {
|
|
||||||
return aktuellerSpieler;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Set the value of level
|
|
||||||
*
|
|
||||||
* @param newlevel the new value of level
|
|
||||||
*/
|
|
||||||
|
|
||||||
public void setLevel(int newlevel) {
|
|
||||||
level = newlevel;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the value of level
|
|
||||||
*
|
|
||||||
* @return the value of level
|
|
||||||
*/
|
|
||||||
|
|
||||||
public int getLevel() {
|
|
||||||
return level;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String [][] toArray (ArrayList <Spielerdaten> a){ //Arraylist in Array umwandeln
|
|
||||||
String [][]neuerArray = new String [a.size()][2];
|
|
||||||
System.out.println("TOARRAY: " + daten.size());
|
|
||||||
for (int j = 0 ; j< a.size(); j++) {
|
|
||||||
neuerArray[j][0] = a.get(j).getName();
|
|
||||||
neuerArray[j][1] = Integer.toString(a.get(j).getPunktestand());
|
|
||||||
}
|
|
||||||
return neuerArray;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set the value of spieler arraylist von Spieler
|
|
||||||
*
|
|
||||||
* @param newSpieler the new value of spieler
|
|
||||||
*/
|
|
||||||
|
|
||||||
public void setSpieler(String a) { //setze einen Spieler ein.
|
|
||||||
leseDaten();
|
|
||||||
transdaten = toArray(getDaten());
|
|
||||||
System.out.println(transdaten.length);
|
|
||||||
for (int i = 0; i < transdaten.length; i++) {
|
|
||||||
if (transdaten[i][0].matches(a)) {
|
|
||||||
setPlace(i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public void editName (String alt, String neu) { //Editieren des Namen des Spielers
|
|
||||||
setSpieler(alt);
|
|
||||||
int place = getPlace();
|
|
||||||
transdaten[place][0] = neu;
|
|
||||||
daten.get(place).setName(neu);
|
|
||||||
speichernDaten();
|
|
||||||
}
|
|
||||||
public void erhoehePunkte (String a) { //erhoeht die Punkten des Spielers um 1
|
|
||||||
setSpieler(a);
|
|
||||||
int place = getPlace();
|
|
||||||
int neuerWert = Integer.parseInt(transdaten[place][1])+1;
|
|
||||||
transdaten[place][1] = Integer.toString(neuerWert);
|
|
||||||
daten.get(place).setPunktestand(neuerWert);
|
|
||||||
speichernDaten();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void setPlace(int loc) { //setzt der Ort der Daten im Array
|
private File datei;
|
||||||
local = loc;
|
private ArrayList <Spielerdaten> spielerliste = new ArrayList<Spielerdaten>();
|
||||||
}
|
private String aktuellerSpielerName;
|
||||||
|
private int aktuellerSpielerNr;
|
||||||
public int getPlace() { //Ort der Daten im Array
|
private boolean debug;
|
||||||
return local;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Get the value of spieler arraylist von Spieler
|
|
||||||
*
|
|
||||||
* @return the value of spieler
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
public ArrayList<Spielerdaten> getDaten() { // Zur<75>ckgeben der gelesenen Daten aus der Textdatei
|
/**
|
||||||
return daten;
|
*
|
||||||
|
* @param Datei
|
||||||
|
*/
|
||||||
|
public Spielerverwaltung(String Datei) {
|
||||||
|
datei = new File(Datei);
|
||||||
|
spielerliste = new ArrayList<Spielerdaten>();
|
||||||
|
aktuellerSpielerName = "";
|
||||||
|
aktuellerSpielerNr = -1;
|
||||||
|
debug = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void umsetzeDaten( String [][] neueDaten) {//Arraylist aus Array
|
|
||||||
for (int i = 0 ; i < neueDaten.length; i++) {
|
|
||||||
daten.add(new Spielerdaten (neueDaten[i][0], Integer.parseInt(neueDaten[i][1])));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
*/
|
|
||||||
public void leseDaten() { //lese Daten aus der Textdatei und speichere die in die Arraylist
|
|
||||||
umsetzeDaten(gethighscoreTabelle());
|
|
||||||
/* for (Spielerdaten a : daten) { // M<>ll
|
|
||||||
System.out.println(a.getName() + " " +a.getPunktestand());
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
|
|
||||||
public void speichernDaten() { //Speichere die bearbeiteten Daten in die Textdatei (Aus der Arraylist)
|
/**
|
||||||
ArrayList <Spielerdaten> newDaten = getDaten();
|
*
|
||||||
String [][] umwandelteDaten = new String [newDaten.size()][2];
|
*/
|
||||||
int i = 0;
|
public void lesenDatei() {
|
||||||
if (! newDaten.isEmpty()) {
|
if(datei.exists() || datei.canRead()) {
|
||||||
for (Spielerdaten inhalt : newDaten ) {
|
BufferedReader reader;
|
||||||
umwandelteDaten [i][0] = inhalt.getName();
|
try {
|
||||||
umwandelteDaten [i][1] = Integer.toString(inhalt.getPunktestand());
|
reader = new BufferedReader(new FileReader(datei));
|
||||||
i++;
|
String line = reader.readLine();
|
||||||
}
|
while (line != null) {
|
||||||
try {
|
String [] newline = line.split(";");
|
||||||
BufferedWriter writer = new BufferedWriter(new FileWriter("highscore.txt")); //Erzeugen eines effizienten Writers f<>r Textdateien
|
|
||||||
for (int j = 0; j < umwandelteDaten.length; j++) {
|
//Nur einlesen wenn 2 Objekte vorhanden sind
|
||||||
writer.write(umwandelteDaten [j][0] +";"+umwandelteDaten [j][1]);
|
if(newline.length == 2) {
|
||||||
writer.newLine();
|
String name = newline[0];
|
||||||
}
|
int score = Integer.parseInt(newline[1]);
|
||||||
writer.close();
|
spielerliste.add(new Spielerdaten (name,score));
|
||||||
|
}
|
||||||
|
line = reader.readLine();
|
||||||
|
}
|
||||||
|
reader.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch(IOException ioe) {
|
if(debug)System.out.println("SPIELERVERWALTUN: " + spielerliste.size() + " Enträge gelesen");
|
||||||
System.err.println(ioe);
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public void schreibeDatei() {
|
||||||
|
if(spielerliste.size() > 0) {
|
||||||
|
//Spielerliste ist nicht leer
|
||||||
|
try {
|
||||||
|
BufferedWriter writer = new BufferedWriter(new FileWriter(datei)); //Erzeugen eines effizienten Writers für Textdateien
|
||||||
|
for (int i = 0; i < spielerliste.size(); i++) {
|
||||||
|
writer.write(spielerliste.get(i).getName() + ";" + Integer.toString(spielerliste.get(i).getPunktestand()));
|
||||||
|
writer.newLine();
|
||||||
|
}
|
||||||
|
writer.close();
|
||||||
|
}
|
||||||
|
catch(IOException ioe) {
|
||||||
|
System.err.println(ioe);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
System.err.println("Es gibt keine Dateien zum Speichern!");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void dateiEinlesen() {
|
|
||||||
BufferedReader reader;
|
|
||||||
try {
|
|
||||||
reader = new BufferedReader(new FileReader("highscore.txt"));
|
|
||||||
String line = reader.readLine();
|
|
||||||
while (line != null) {
|
|
||||||
String [] newline = line.split(";");
|
|
||||||
String name = newline[0];
|
|
||||||
int score = Integer.parseInt(newline[1]);
|
|
||||||
daten.add(new Spielerdaten (name,score));
|
|
||||||
line = reader.readLine();
|
|
||||||
}
|
|
||||||
reader.close();
|
|
||||||
} catch (IOException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
/**
|
||||||
|
*
|
||||||
|
* @param spielername
|
||||||
|
*/
|
||||||
|
public void setSpieler(String spielername) {
|
||||||
|
if(spielerVorhanden(spielername)) {
|
||||||
|
aktuellerSpielerName = spielername;
|
||||||
|
aktuellerSpielerNr = getSpielerNr(spielername);
|
||||||
|
if(debug)System.out.println("SPIELERVERWALTUN: Spieler " + spielername + " gesetzt");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
spielerliste.add(new Spielerdaten(spielername,0));
|
||||||
|
aktuellerSpielerNr = getSpielerNr(spielername);
|
||||||
|
if(debug)System.out.println("SPIELERVERWALTUN: Spieler " + spielername + " hinzugefügt");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// die Daten als zweidimensionales Array
|
|
||||||
// zurueckgegeben
|
|
||||||
public String[][] gethighscoreTabelle() {
|
/**
|
||||||
System.out.println(daten.size());
|
*
|
||||||
return toArray(daten);
|
* @return
|
||||||
}
|
*/
|
||||||
|
public String getSpieler() {
|
||||||
|
return aktuellerSpielerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String[][] getHighscoreTabelle() {
|
||||||
|
String [][] highscore = new String[spielerliste.size()][2];
|
||||||
|
for(int i = 0; i < spielerliste.size(); i++) {
|
||||||
|
highscore[i][0] = spielerliste.get(i).getName();
|
||||||
|
highscore[i][1] = Integer.toString(spielerliste.get(i).getPunktestand());
|
||||||
|
}
|
||||||
|
|
||||||
|
return highscore;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public int getLevel() {
|
||||||
|
if(spielerliste.get(aktuellerSpielerNr).getPunktestand() > 0) {
|
||||||
|
return (int) Math.log(spielerliste.get(aktuellerSpielerNr).getPunktestand());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param punkte
|
||||||
|
*/
|
||||||
|
public void erhoehePunkte(int punkte) {
|
||||||
|
int punkteNeu = spielerliste.get(aktuellerSpielerNr).getPunktestand() + punkte;
|
||||||
|
if(punkteNeu >= 0) {
|
||||||
|
spielerliste.get(aktuellerSpielerNr).setPunktestand(punkteNeu);
|
||||||
|
if(debug)System.out.println("SPIELERVERWALTUN: Punkte Neu: " + punkteNeu);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if(debug)System.out.println("SPIELERVERWALTUN: Punkte Neu: 0");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param name
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private boolean spielerVorhanden(String name) {
|
||||||
|
for(int i = 0; i < spielerliste.size(); i++) {
|
||||||
|
if(spielerliste.get(i).getName().equals(name)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param spielername
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private int getSpielerNr(String spielername) {
|
||||||
|
for(int i = 0; i < spielerliste.size(); i++) {
|
||||||
|
if(spielerliste.get(i).getName().equals(spielername)) {
|
||||||
|
return i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
195
src/de/jaujau/daten/SpielerverwaltungOLD.java
Normal file
195
src/de/jaujau/daten/SpielerverwaltungOLD.java
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
* @author Alaa Aldin
|
||||||
|
|
||||||
|
* @version 1.0
|
||||||
|
|
||||||
|
*/
|
||||||
|
package de.jaujau.daten;
|
||||||
|
|
||||||
|
import java.io.BufferedReader;
|
||||||
|
import java.io.BufferedWriter;
|
||||||
|
import java.io.FileReader;
|
||||||
|
import java.io.FileWriter;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
public class SpielerverwaltungOLD {
|
||||||
|
private int local;
|
||||||
|
private int level;
|
||||||
|
private Spielerdaten spieler;
|
||||||
|
private Spielerdaten aktuellerSpieler;
|
||||||
|
private ArrayList <Spielerdaten> daten = new ArrayList<Spielerdaten>();
|
||||||
|
private String [][] transdaten;
|
||||||
|
public void addSpieler(String name) { //Neue Spieler hinzuf<75>gen
|
||||||
|
//leseDaten();
|
||||||
|
daten.add(new Spielerdaten(name, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setaktuellerSpieler(String name) {
|
||||||
|
aktuellerSpieler = sucheSpieler(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Spielerdaten sucheSpieler(String name) {
|
||||||
|
for (int i = 0; i < daten.size(); i++) {
|
||||||
|
if (daten.get(i).getName().equals(name)) {
|
||||||
|
System.out.println("SPIELERVERWALTUNG: Spieler gefunden");
|
||||||
|
return daten.get(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
addSpieler(name);
|
||||||
|
System.out.println("SPIELERVERWALTUNG: Neuer Spieler erstellt");
|
||||||
|
return daten.get(daten.size()-1);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public Spielerdaten getaktuellerSpieler() {
|
||||||
|
return aktuellerSpieler;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Set the value of level
|
||||||
|
*
|
||||||
|
* @param newlevel the new value of level
|
||||||
|
*/
|
||||||
|
|
||||||
|
public void setLevel(int newlevel) {
|
||||||
|
level = newlevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the value of level
|
||||||
|
*
|
||||||
|
* @return the value of level
|
||||||
|
*/
|
||||||
|
|
||||||
|
public int getLevel() {
|
||||||
|
return level;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String [][] toArray (ArrayList <Spielerdaten> a){ //Arraylist in Array umwandeln
|
||||||
|
String [][]neuerArray = new String [a.size()][2];
|
||||||
|
System.out.println("TOARRAY: " + daten.size());
|
||||||
|
for (int j = 0 ; j< a.size(); j++) {
|
||||||
|
neuerArray[j][0] = a.get(j).getName();
|
||||||
|
neuerArray[j][1] = Integer.toString(a.get(j).getPunktestand());
|
||||||
|
}
|
||||||
|
return neuerArray;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the value of spieler arraylist von Spieler
|
||||||
|
*
|
||||||
|
* @param newSpieler the new value of spieler
|
||||||
|
*/
|
||||||
|
|
||||||
|
public void setSpieler(String a) { //setze einen Spieler ein.
|
||||||
|
leseDaten();
|
||||||
|
transdaten = toArray(getDaten());
|
||||||
|
System.out.println(transdaten.length);
|
||||||
|
for (int i = 0; i < transdaten.length; i++) {
|
||||||
|
if (transdaten[i][0].matches(a)) {
|
||||||
|
setPlace(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public void editName (String alt, String neu) { //Editieren des Namen des Spielers
|
||||||
|
setSpieler(alt);
|
||||||
|
int place = getPlace();
|
||||||
|
transdaten[place][0] = neu;
|
||||||
|
//daten.get(place).setName(neu);
|
||||||
|
speichernDaten();
|
||||||
|
}
|
||||||
|
public void erhoehePunkte (String a) { //erhoeht die Punkten des Spielers um 1
|
||||||
|
setSpieler(a);
|
||||||
|
int place = getPlace();
|
||||||
|
int neuerWert = Integer.parseInt(transdaten[place][1])+1;
|
||||||
|
transdaten[place][1] = Integer.toString(neuerWert);
|
||||||
|
daten.get(place).setPunktestand(neuerWert);
|
||||||
|
speichernDaten();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void setPlace(int loc) { //setzt der Ort der Daten im Array
|
||||||
|
local = loc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getPlace() { //Ort der Daten im Array
|
||||||
|
return local;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Get the value of spieler arraylist von Spieler
|
||||||
|
*
|
||||||
|
* @return the value of spieler
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
public ArrayList<Spielerdaten> getDaten() { // Zur<75>ckgeben der gelesenen Daten aus der Textdatei
|
||||||
|
return daten;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void umsetzeDaten( String [][] neueDaten) {//Arraylist aus Array
|
||||||
|
for (int i = 0 ; i < neueDaten.length; i++) {
|
||||||
|
daten.add(new Spielerdaten (neueDaten[i][0], Integer.parseInt(neueDaten[i][1])));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
*/
|
||||||
|
public void leseDaten() { //lese Daten aus der Textdatei und speichere die in die Arraylist
|
||||||
|
umsetzeDaten(gethighscoreTabelle());
|
||||||
|
/* for (Spielerdaten a : daten) { // M<>ll
|
||||||
|
System.out.println(a.getName() + " " +a.getPunktestand());
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
|
||||||
|
public void speichernDaten() { //Speichere die bearbeiteten Daten in die Textdatei (Aus der Arraylist)
|
||||||
|
ArrayList <Spielerdaten> newDaten = getDaten();
|
||||||
|
String [][] umwandelteDaten = new String [newDaten.size()][2];
|
||||||
|
int i = 0;
|
||||||
|
if (! newDaten.isEmpty()) {
|
||||||
|
for (Spielerdaten inhalt : newDaten ) {
|
||||||
|
umwandelteDaten [i][0] = inhalt.getName();
|
||||||
|
umwandelteDaten [i][1] = Integer.toString(inhalt.getPunktestand());
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
BufferedWriter writer = new BufferedWriter(new FileWriter("highscore.txt")); //Erzeugen eines effizienten Writers f<>r Textdateien
|
||||||
|
for (int j = 0; j < umwandelteDaten.length; j++) {
|
||||||
|
writer.write(umwandelteDaten [j][0] +";"+umwandelteDaten [j][1]);
|
||||||
|
writer.newLine();
|
||||||
|
}
|
||||||
|
writer.close();
|
||||||
|
}
|
||||||
|
catch(IOException ioe) {
|
||||||
|
System.err.println(ioe);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
System.err.println("Es gibt keine Dateien zum Speichern!");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void dateiEinlesen() {
|
||||||
|
BufferedReader reader;
|
||||||
|
try {
|
||||||
|
reader = new BufferedReader(new FileReader("highscore.txt"));
|
||||||
|
String line = reader.readLine();
|
||||||
|
while (line != null) {
|
||||||
|
String [] newline = line.split(";");
|
||||||
|
String name = newline[0];
|
||||||
|
int score = Integer.parseInt(newline[1]);
|
||||||
|
daten.add(new Spielerdaten (name,score));
|
||||||
|
line = reader.readLine();
|
||||||
|
}
|
||||||
|
reader.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// die Daten als zweidimensionales Array
|
||||||
|
// zurueckgegeben
|
||||||
|
public String[][] gethighscoreTabelle() {
|
||||||
|
System.out.println(daten.size());
|
||||||
|
return toArray(daten);
|
||||||
|
}
|
||||||
|
}
|
@@ -265,7 +265,7 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
getname.addMouseListener(new MouseAdapter() {
|
getname.addMouseListener(new MouseAdapter() {
|
||||||
@Override
|
@Override
|
||||||
public void mouseClicked(MouseEvent e) {
|
public void mouseClicked(MouseEvent e) {
|
||||||
speicherung.setaktuellerSpieler(getspielername());
|
speicherung.setSpieler(getspielername());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
panel_1.setBackground(new Color(51, 51, 153));
|
panel_1.setBackground(new Color(51, 51, 153));
|
||||||
@@ -345,8 +345,8 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
|
|
||||||
private void renderStart(){
|
private void renderStart(){
|
||||||
spielername.removeAllItems();
|
spielername.removeAllItems();
|
||||||
for(int i = 0; i<spielerverwaltung.gethighscoreTabelle().length; i++) {
|
for(int i = 0; i<spielerverwaltung.getHighscoreTabelle().length; i++) {
|
||||||
spielername.addItem(spielerverwaltung.gethighscoreTabelle()[i][0]);
|
spielername.addItem(spielerverwaltung.getHighscoreTabelle()[i][0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -359,7 +359,7 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
highscore.revalidate();
|
highscore.revalidate();
|
||||||
}
|
}
|
||||||
|
|
||||||
String[][] rowData = spielerverwaltung.gethighscoreTabelle(); //Bsp. Datensatz muss noch entfernt werden.
|
String[][] rowData = spielerverwaltung.getHighscoreTabelle(); //Bsp. Datensatz muss noch entfernt werden.
|
||||||
|
|
||||||
String[] columnNames = {"Name", "Punkte"};
|
String[] columnNames = {"Name", "Punkte"};
|
||||||
|
|
||||||
|
@@ -133,14 +133,11 @@ public class texturenauswaehlen_GUI extends JFrame{
|
|||||||
* Speichert die Auswahl des akutellen Paketes
|
* Speichert die Auswahl des akutellen Paketes
|
||||||
*/
|
*/
|
||||||
private void speichern() {
|
private void speichern() {
|
||||||
// Austauschen sobalt Spielerverwaltung fertig
|
if(spielerverwaltung.getLevel() >= pakete.getLevel(comboBox.getSelectedIndex())) {
|
||||||
// if(spieler.getLevel() >= pakete.getLevel(comboBox.getSelectedIndex())) {
|
pakete.setAktivesPaket(comboBox.getSelectedIndex());
|
||||||
// pakete.setAktivesPaket(comboBox.getSelectedIndex());
|
aktualisiereBild();
|
||||||
// aktualisiereBild();
|
|
||||||
//
|
}
|
||||||
// }
|
|
||||||
pakete.setAktivesPaket(comboBox.getSelectedIndex());
|
|
||||||
aktualisiereBild();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -7,13 +7,12 @@
|
|||||||
*/
|
*/
|
||||||
package de.jaujau.spiellogik;
|
package de.jaujau.spiellogik;
|
||||||
|
|
||||||
import javax.swing.ImageIcon;
|
|
||||||
|
|
||||||
import de.jaujau.daten.Spielerverwaltung;
|
import de.jaujau.daten.Spielerverwaltung;
|
||||||
import de.jaujau.daten.Texturenpakete;
|
import de.jaujau.daten.Texturenpakete;
|
||||||
import de.jaujau.gui.GUI;
|
import de.jaujau.gui.GUI;
|
||||||
//import de.jaujau.gui.Menue_GUI;
|
|
||||||
//import de.jaujau.gui.Spiel_GUI;
|
|
||||||
|
|
||||||
public class Anwendung {
|
public class Anwendung {
|
||||||
|
|
||||||
@@ -25,8 +24,8 @@ public class Anwendung {
|
|||||||
// Constructors
|
// Constructors
|
||||||
//
|
//
|
||||||
public Anwendung() {
|
public Anwendung() {
|
||||||
speicherung = new Spielerverwaltung();
|
speicherung = new Spielerverwaltung("highscore.csv");
|
||||||
speicherung.dateiEinlesen();
|
speicherung.lesenDatei();
|
||||||
texturenpakete = new Texturenpakete();
|
texturenpakete = new Texturenpakete();
|
||||||
view = new GUI(texturenpakete, speicherung);
|
view = new GUI(texturenpakete, speicherung);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user