Problem mit Rangliste bei Hangman

Status
Nicht offen für weitere Antworten.

moe_joe

Aktives Mitglied
Hi, bin momentan dabei Hangman zu programmieren. Das Spiel selbst läuft bei mir auch soweit, allerdings hab ich da noch ein paar kleine Probleme. Ich habe jetzt probiert eine Highscore Funktion ein zu bauen.... allerdings funktioniert das ganze nicht so wirklich. Ich hätte es gerne so, das nach dem Ende des Spiels ein Dialog aufgeht in dem die Highscore Liste steht und man seinen namen eingeben kann, der dann mit der erreichten Punktzahl in die Highscoreliste geschrieben wird. das klappt bei mir noch nicht so ganz... hat jemand ne idee woran es liegen könnte und kann mir vielleicht weiterhelfen?

Code:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.AbstractAction;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.WindowConstants;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Arrays;

public class Hangman extends JPanel implements ActionListener {

	private static final long serialVersionUID = 1L;
	// Globale Variablen
	final static int WND_B = 425, WND_H = 360;
	final static int EXIT_ON_CLOSE = 0;
	final int SX = 50, SY = 50;
	RandomAccessFile file;
	String myword = null; // das zu erratene wort
	char xyword[]; // das ungelöste Wort
	char probed[];
	char notprobed[];
	char alphab[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',
			'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',
			'Y', 'Z', 'Ä', 'Ö', 'Ü', 'ß' };

	int mistakes = 0; // Anzahl der Fehler
	int tries = 0; // Anzahl der Versuche
	KL control;
	char c;


	public Hangman() // Hauptroutine
	{
		String stmp = new String();
		
		try {
			int wordcount = 0; // neuer Integer für Wörterzahl
			int wordseek = 0; // ~ für Zielwort-Position
			RandomAccessFile f = new RandomAccessFile("hangman.dat", "r");
			while ((stmp = f.readLine()) != null) {
				wordcount++;
			}
			if (wordcount == 0) {
				System.out
						.println("ACHTUNG! In der Datendatei sind keine gültigen Wörter zu finden.");
				System.exit(0);
			}
			System.out.println("Woerter in Datendatei: " + wordcount); // Statusbericht
			while (wordseek == 0) // Solange wordseek noch 0 ist, tue ...
			{
				wordseek = (int) (Math.random() * wordcount) + 1; // hol' Dir
				// einen
				// Integer-Wert
			}
			System.out.print("Ausgewaehltes Wort: #" + wordseek); // Statusbericht
			f.seek(0); // Position auf Dateianfang setzen
			wordcount = 0; // Wieder auf NULL

			while ((stmp = f.readLine()) != null) // und das ganze von vorne
			{
				if (stmp.charAt(0) != '#') {
					wordcount++;
					if (wordcount == wordseek) // wenn an der Position, die wir
					// suchen ...
					{
						myword = stmp; // setze myword auf gerade gelesenen
						// String
						break;
					}
				}
			}
			f.close(); // Datei wieder schließen
		}// Ende von try

		catch (IOException ioe) // Falls ein Fehler auftreten sollte
		// Fehlermeldung ausgeben
		{
			System.out.println("IOException: " + ioe.toString()); // Fehlermeldung
			System.out
					.println("\n\nFehler beim Bearbeiten der Datendatei. Stellen Sie sicher," +
							" daß die Datei HANGMAN.DAT auch existiert und lesbar ist.");
			System.exit(0);// Beenden
		}

		KeyListener control = new KL(); // neuer KeyListener: CONTROL
		addKeyListener(control); // hinzufügen
		xyword = new char[myword.length()]; // array erstellen
		for (int i = 0; i < myword.length(); i++) {
			xyword[i] = '_';
		}
		probed = new char[alphab.length]; // array erstellen
		notprobed = new char[alphab.length];
		for (int i = 0; i < alphab.length; i++) {
			probed[i] = '-';
			notprobed[i] = alphab[i];
		}
	}// Ende Public Hangman () Hauptroutine

	public void update(Graphics g) {
		paint(g);
	}

	public void paint(Graphics g) // die Grafiken
	{
		Toolkit tk = Toolkit.getDefaultToolkit();
		g.setColor(Color.black); // Setzt Farbe auf Schwarz
		g.fillRect(0, 0, WND_B, WND_H);
		g.drawImage(tk.getImage("images/bg.gif"), 1, 1, this);
		g.drawString("Wort: " + new String(xyword), 40, 215);
		if (mistakes != -1) {
			g.drawString("Buchstaben: ", 40, 260);

			for (int i = 0; i < alphab.length; i++) {
				g.drawChars(probed, i, 1, 118 + i * 8, 260);
				g.drawChars(notprobed, i, 1, 118 + i * 8, 275);
			}

			g.drawString("Fehler: " + mistakes, 40, 230);
		}
		updatehangman(g); // Hangman updaten
	}// Ende pain(Graphics g)
	
	public static void highscore() {
		File highscorefile = new File("highscore.txt");
		FileReader highscorefilereader = new FileReader(highscorefile);
		JDialog highscoredialog = new JDialog(); 	
		JTextField highscoretextfield = new JTextField();
		JTextArea highscoretextarea = new JTextArea();
		JButton hsbutton = new JButton("Hinzufügen");
		char[] highscore = new char[(int) highscorefile.length()];
		highscorefilereader.read(highscore);
		String hss =highscoretextarea.getText();
		highscoredialog.add(hsbutton);
		highscoredialog.setDefaultCloseOperation
		(
                WindowConstants.DISPOSE_ON_CLOSE
        );
		highscoredialog.add(highscoretextfield);
		highscoredialog.add(highscoretextarea);
		highscoretextarea.setEditable(false);
		highscoretextarea.setSize(300, 400);
		String (highscore)= highscoretextarea.getText();
		highscoredialog.setTitle(".:Hangman:. - Highscore");
		highscoredialog.setSize( 300, 450 ); 
		highscoredialog.setResizable(false);
		highscoredialog.setLocation (450, 0);
		highscoredialog.setBackground(Color.black); // Hintergrund schwarz
		hsbutton.setLocation (450, 0);
		highscoretextfield.setLocation (450, 0);
		highscoretextfield.setVisible(true);
		highscoretextarea.setVisible(true);
		highscoredialog.setVisible(true);
		ActionListener hsb = new ActionListener() {
		      public void actionPerformed( ActionEvent e ) {
		        System.exit( 0 );
		      }
		 };
		hsbutton.addActionListener(hsb);

		
	}
	
	

	public void updatehangman(Graphics g) {
		Toolkit tk = Toolkit.getDefaultToolkit(); // Toolkit für grafikdateien

		switch (mistakes) // Verschiedenen Fälle für Fehlermeldungen
		{
		case 6:
			g.drawImage(tk.getImage("images/hm6.gif"), SX, SY, this);
			g.setColor(Color.red);
			g.drawString(">>> VERLOREN <<<", WND_B / 2 - 70, WND_H / 2 + 10);
			g.setColor(Color.white);
			g.drawString("Das gesuchte Wort war '" + myword + "'!",
					WND_B / 4 - 100, WND_H / 2 - 10);
			removeKeyListener(control);
			break;
		case 5:
			g.drawImage(tk.getImage("images/hm5.gif"), SX, SY, this);
			break;
		case 4:
			g.drawImage(tk.getImage("images/hm4.gif"), SX, SY, this);
			break;
		case 3:
			g.drawImage(tk.getImage("images/hm3.gif"), SX, SY, this);
			break;
		case 2:
			g.drawImage(tk.getImage("images/hm2.gif"), SX, SY, this);
			break;
		case 1:
			g.drawImage(tk.getImage("images/hm1.gif"), SX, SY, this);
			break;
		case 0:
			g.drawImage(tk.getImage("images/hm0.gif"), SX, SY, this);
			break;
		case -1:
			g.drawImage(tk.getImage("images/hm.gif"), SX, SY, this);
			g.setColor(Color.green);
			g.drawString(">>> GEWONNEN <<<", WND_B / 2 - 70, WND_H / 2 + 10);
			removeKeyListener(control);
			break;
		}// Ende Switch
	}// Ende UpdateHangMan (Graphics g)

	class KL implements KeyListener {

		public void keyPressed(KeyEvent e) {

		}

		public void keyReleased(KeyEvent e) {

		}

		public void keyTyped(KeyEvent e) {
			c = e.getKeyChar(); // Taste holen
			c = Character.toUpperCase(c);
			int i;
			boolean status = false;
			boolean check = false;

			for (i = 0; i < alphab.length; i++) {
				if (c == alphab[i]) {
					if (probed[i] != c)
						probed[i] = c;
					else
						check = true;
					if (notprobed[i] == c)
						notprobed[i] = '-';
				}
			}

			int underscores = 0; // Integer für Anzahl der "_" im bisherigen
			// Wort

			for (i = 0; i < myword.length(); i++) // "Verschlüsseln" des
			// Ratewortes
			{
				if (c == Character.toUpperCase(myword.charAt(i))) {
					xyword[i] = myword.charAt(i);
					status = true;
				}

				if (xyword[i] == '_')
					underscores++;
			}

			if (!status && !check)// wenn der Buchstabe Falsch ist und nicht
				// schon einmal
				mistakes++; // Getippt wurde Fehler +1

			if (!check)
				tries++;

			if (underscores == 0 || mistakes >= 6) {
				System.out.println(" (" + myword + ")");
				System.out.println("Anzahl Versuche: " + tries
						+ "    davon falsch: " + mistakes);
				System.out
						.println("Getippte Buchstaben: " + new String(probed));
				System.out.println("Anzahl versch. Buchstaben im Wort: "
						+ (tries - mistakes));
				System.out.println("Trefferquote: "
						+ (((tries - mistakes) * 100) / tries) + "%");
			}

			if (underscores == 0) // wenn keine fehlenden Zeichen im
				// Lösungswort sind
				mistakes = -1;

			if (mistakes >= 6)// wenn mehr als 5 Fehler gemacht wurden
				mistakes = 6;

			repaint(); // Grafikfenster neuzeichnen
		}
	}// Ende class KL
	
	public class sortArray {

	    //In Objekten dieser inneren Klasse werden die einzelnen
	    //Highscore-einträge abgelegt
	    private class HighscoreEintrag implements Comparable {

	        //Speichert den Namen
	        private String name;

	        //Speichert die Punkte
	        private double punkte;

	        //Erzeugt einen neuen HighscoreEintrag
	        public HighscoreEintrag(String name, double punkte) {
	            this.name = name;
	            this.punkte = punkte;
	        }

	        //Vergleichsfunktio
	        public int compareTo(Object o) {
	            HighscoreEintrag hE = (HighscoreEintrag) o;
	            if (this.punkte > hE.getPunkte()) {
	                return 1;
	            } else if (this.punkte < hE.getPunkte()) {
	                return -1;
	            }
	            return 0;
	        }

	        //Es folgen drei Funktionen, um die Werte auszulesen
	        public String getName() { 
	        	String eingabe = highscoretextfield.getText(); 
	            return name;
	        }

	        public double getPunkte() {
	        	String trefferquote = "Trefferquote: "
	        	+ (((tries - mistakes) * 100) / tries) + "%";
	            return punkte;
	        }

	        public String toString() {
	            return this.name + ": " + this.punkte;
	        }
	    }//Ende der inneren Klasse

	    //Der Konstruktor
	    public sortArray() {
	        //Ein Array mit 10 einträgen vom Type HighScoreEintrag wird erstellt
	        //In diesem Array werden die einzenen Paare aus Spieler und Punktestand
	        //gespeichert
	        HighscoreEintrag[] highscore = new HighscoreEintrag[10];

	        //Ein neue "Dateiverbindung" erstellen
	        File f = new File("highscore.txt");

	        //prüfen, ob die Datei existiert
	        if (f.exists()) {
	            try {
	                //Wenn sie existiert werden wir sie mit dem FileReader auslesen
	                FileReader fR = new FileReader(f);

	                //FileReader liest ein array of char und keinen String
	                char[] c = new char[(int) f.length()];

	                //und in das erstellte char-array einlesen
	                fR.read(c);

	                //aus dem char-array einen string erzeugen, der dann den
	                //Dateinhalt enthält
	                String s = new String(c);

	                //Den String bei Zeilenumbruch teilen und die einzelnen
	                //Teile (=Zeilen) in ein array of string schreiben
	                String[] entrys = s.split("\n");

	                ////jede Zeile der Datei abarbeiten
	                for (int i = 0; i < entrys.length; i++) {
	                    //Jede einzelene Zeile bei : trennen
	                    //dieser wurde als Trennzeichen zwischen Spieler und
	                    //Punktestand gewählt
	                    if (i < 10) {
	                        String[] entry = entrys[i].split(":");

	                        //einen neuen Highscoreeintrag mit den eingelesenen
	                        //Erzeugen, an der entsprechenden stelle im oben
	                        //defineirten Array
	                        highscore[i] = new HighscoreEintrag(entry[0], Double
	                                .parseDouble(entry[1]));
	                    }
	                }
	                //den FileReader wieder schließen
	                fR.close();
	            } catch (FileNotFoundException e) { //falls Fehler beim
	                e.printStackTrace(); //Einlesen auftreten,
	            } catch (IOException e) { //diese ausgeben
	                e.printStackTrace();
	            }
	        } else 
	        {
	            //Wenn die Datei nicht existiert werden Beispieleinträge angelegt
	            highscore[0] = new HighscoreEintrag("a", 10);
	            highscore[1] = new HighscoreEintrag("b", 90);
	            highscore[2] = new HighscoreEintrag("c", 55);
	            highscore[3] = new HighscoreEintrag("d", 5);
	            highscore[4] = new HighscoreEintrag("e", 20);
	            highscore[5] = new HighscoreEintrag("f", 50);
	            highscore[6] = new HighscoreEintrag("g", 40);
	            highscore[7] = new HighscoreEintrag("h", 80);
	            highscore[8] = new HighscoreEintrag("i", 30);
	            highscore[9] = new HighscoreEintrag("j", 70);
	        }

	        //Das Array wird sortiert!
	        //Dabei wird die in dem HighscoreEintrag implementierte
	        //Vergleichsfunktion verwendet
	        Arrays.sort(highscore);

	        //Ausgabe der Liste
	        for (int i = 0; i < highscore.length; i++) 
	        {
	        	highscoretextarea.append(highscore[i].toString());
	        }

	        //Der FileWriter ist analog zum FileReader
	        try {
	            FileWriter fW = new FileWriter(f);
	            for (int i = 0; i < highscore.length; i++) {
	                if (i < highscore.length - 1) {
	                    fW.write(highscore[i].toString() + "\n");
	                } else {
	                    fW.write(highscore[i].toString());
	                }
	            }
	            fW.close();
	        } catch (FileNotFoundException e) {
	            e.printStackTrace();
	        } catch (IOException e) {
	            e.printStackTrace();
	        }

	    }
	}
	

	public static void main(String[] args) // Main
	{
		Hangman Jpanel = new Hangman(); 						// Neuer Panel
		final JFrame frame = new JFrame("JFrame");		 	   // Frame vereinbaren
		Jpanel.setFocusable(true);
		Jpanel.requestFocusInWindow(); 							// Focus in Panel setzen
		frame.setTitle(".:Hangman:."); 							// Titel setzen
		frame.add(Jpanel, BorderLayout.CENTER); 				// Frame den Panel zuweisen
		frame.setSize(425, 360); 								// Größe setzen
		frame.setResizable(false);
		frame.setBackground(Color.white); 						// Hintergrund schwarz
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);	// Beim Klicken
		JMenuBar menuBar = new JMenuBar();						// Menübar erstellen
		frame.setJMenuBar(menuBar);								// Menü dem Frame zuweisen
		JMenu datei = new JMenu("Datei");						// Menüpunkt "Datei" Vereinbaren
		menuBar.add(datei);										// Menüpunkt "Datei" der Menübar hinzufügen
		JMenu hilfe = new JMenu("Hilfe");						// Menüpunkt "Hilfe" vereinbaren
		menuBar.add(hilfe);										// Menüpunkt "Hilfe" der Menübar hinzufügen
		datei.add(new AbstractAction("Nochmal") {
			public void actionPerformed(ActionEvent arg0) {
				System.out.print("Nochmal...");
				frame.dispose();
                initializeNewWindow();
			}

			private void initializeNewWindow() {
				// TODO Auto-generated method stub
				
			}
		});

		datei.add(new AbstractAction("Beenden") {
			public void actionPerformed(ActionEvent e) {
				System.out.println("Beenden...");
				System.exit(0);
			}
		});
		hilfe.add(new AbstractAction("Spielregeln") {
			public void actionPerformed(ActionEvent e){
				System.out.println("Spielregeln...");
				JDialog d = new JDialog(); 
				JTextArea ta = new JTextArea();
				ta.setEditable(false);
				ta.setLineWrap(true);
				ta.setBackground(Color.black);
				ta.setWrapStyleWord(true);
				ta.setForeground(Color.white);
				ta.setText("                          .:Hangman:. Spielregeln" +
						"                            " +
						"Wenn das spiel startet erscheint eine Kette von Strichen, " +
						"die so viele Elemente enthält wie das zu erratene Wort lang ist. " +
						"Nun geben Sie einen beliebigen Buchstaben des Alphabets ein (A-Z, ü, ä, ö, ß). " +
						"Falls der Buchstabe vorkommt, wird er über jeden Strich geschrieben, " +
						"der an einer Position steht, an der der Buchstabe im Wort verwendet wird. " +
						"Falls der Buchstabe nicht vorkommt, wird ein Galgen mit einem Strichmännchen " +
						"um ein weiteres von insgesamt 6 Elementen vervollständigt. Im unteren teil " +
						"des Fensters sehen Sie die von ihnen schon getippten Buchstaben. Wurde das " +
						"Wort erraten, bevor der Galgen komplett gezeichnet werden konnte, ist das S" +
						"piel gewonnen. Andernfalls ist das spiel beendet und der Computer hat Gewonnen." +
						"                 Viel Spaß!");
				d.add(ta);
				d.setTitle(".:Hangman:. - Spielregeln");
				d.setSize( 300, 450 ); 
				d.setResizable(false);
				d.setLocation (450, 0);
				d.setVisible( true );
			}});
			
			hilfe.add(new AbstractAction("Highscore") {
				public void actionPerformed(ActionEvent e){
					System.out.println("Highscore...");
					highscore();
				}});

	frame.setVisible(true);// Frame sichtbar machen	
	}// Ende Main
	
	
	

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub

	}
}// Ende public class Hangman

mfg moe_joe
 

Quaxli

Top Contributor
Mal schauen, ob sich jemand findet, der über 500 Zeilen Code durchackern will. Ich jedenfalls nicht :(

1. Beschreibe Dein Problem genauer
2. Schreibe ein kleines Beispielprogramm und gehe das Problem Stück für Stück an.

So kannst Du konkrete Fragen stellen und dann wird Dir auch geholfen. Aussagen wie "...klappt noch nicht so ganz" und dazu 500 Zeile Code hinschmeißen, kommen nicht so gut.
 
G

Gast

Gast
Es ist praktisch wenn man alles in einer Klasse hat. Es ist dann halt nur eine Datei um die man sich kümmern muß. Man kann allerdings auch jars packen, dann hat man auch nur eine Datei, ist aber einfacher zu entwickeln.

Wie wäre es HighScoreEintrag eine richtige Datei zu spendieren. Dann kannst du dort sogar eine "Main-Methode", bzw. einen Unittest erstellen, mit der du HighScoreEinträge erstellen und überprüfen kannst.

Da sortArray auch eine Innere Klasse sein solll, so empfehle ich die Namenskonvention die besagt das Klassennamen mit einem Großbuchstaben anfangen. Auch diese Klasse würde ich in von einer inneren zu einer öffentlichen Klasse befördern. Naja, mehrnoch würde ich die static methode highscore entfernen und eine Klasse HighScore erstellen. Diese besäße dann ein Array von HighscoreEinträgen, eine Methode zum Hinzufügen von Highscoreeinträgen und eine zum Anzeigen der Highscores.

Ich schätze dann sieht der Code gleich ganz anders aus und manch ein Problem erübrigt sich von selbst.
 
G

Gast

Gast
Ach ja ein weiterer Vorteil ist natürlich wenn du die Highscoregeschichte von deiner anwendung trennst, dafür sind die Schritte mit den eigenen Klassen gedacht, kannst du diesen Teil in einem anderen Spiel wiederverwenden.
 

moe_joe

Aktives Mitglied
ja sorry, lange nich hier reingeguckt^^. Hab meine klassen usw mittlerweile alles ausgelagert und den ganzen quellcode ein bischen übersichtlicher geschrieben usw.. poste den aktuellen code mal nachher hab dne grad nich hier
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A [HILFE] - Minecraft-Problem! Spiele- und Multimedia-Programmierung 1
C Plugin Problem Spiele- und Multimedia-Programmierung 2
J JLayer Problem Spiele- und Multimedia-Programmierung 1
Meeresgott LWJGL 3 Problem mit einer Texture Spiele- und Multimedia-Programmierung 4
G Low Poly 3D LWJGL Shader Problem Spiele- und Multimedia-Programmierung 4
O Problem beim Aufrufen des Spiels von einem Menü Spiele- und Multimedia-Programmierung 7
G LIBGDX Texturen Problem Spiele- und Multimedia-Programmierung 1
G LIBGDX Problem beim resizen des Frames Spiele- und Multimedia-Programmierung 3
C AutoClicker Problem Spiele- und Multimedia-Programmierung 2
S OOP Logik Problem Spiele- und Multimedia-Programmierung 5
G LIBGDX Viewport Problem Spiele- und Multimedia-Programmierung 3
J Problem mit Game Of Life Spiele- und Multimedia-Programmierung 3
N Problem mit 2D Spiel Spiele- und Multimedia-Programmierung 17
C Minecraft Minecraft Plugin Problem Spiele- und Multimedia-Programmierung 17
R Pong Spiel Problem Spiele- und Multimedia-Programmierung 1
V Problem mit BufferStrategy Spiele- und Multimedia-Programmierung 2
Streeber Problem mit Transparenz/TextDrawing in LWJGL/Slick2d (OpenGL) Spiele- und Multimedia-Programmierung 1
E A-Stern Algorithmus Problem und Implementierung einer Map Spiele- und Multimedia-Programmierung 6
T LWJGL 2.9.2: Seltsamer Effekt beim Rendern (VertexShader Problem?) Spiele- und Multimedia-Programmierung 3
W Generelles Problem: Entscheidungsfindung Spiele- und Multimedia-Programmierung 4
T Problem bei Kollisionsabfrage Spiele- und Multimedia-Programmierung 4
C Vier Gewinnt Problem mit Ordnerstruktur Spiele- und Multimedia-Programmierung 2
T Problem mit Eclipse (java)-(minecraft) Spiele- und Multimedia-Programmierung 3
I Textbasiertes Spiel - Umsetzungsfrage & Schleifen Problem Spiele- und Multimedia-Programmierung 26
M Sound Problem Spiele- und Multimedia-Programmierung 3
T Problem beim Aufbau des Spielfelds Spiele- und Multimedia-Programmierung 18
M Sound Engin Problem 2 Spiele- und Multimedia-Programmierung 2
J Problem bei der GUI - Zu viele Spielbretter Spiele- und Multimedia-Programmierung 2
D LWJGL gluLookAt "Umschauen" Problem Spiele- und Multimedia-Programmierung 0
D Problem mit Würfelanimierung in LWJGL Spiele- und Multimedia-Programmierung 7
C Zeldaklon Problem mit Wand-Kollision Spiele- und Multimedia-Programmierung 8
0 Boxen übereinander stapelt Problem Spiele- und Multimedia-Programmierung 5
D Textfield im Game ,Problem: while-Schleife Spiele- und Multimedia-Programmierung 3
R 2D platformer - enemy damage -> TIMER PROBLEM Spiele- und Multimedia-Programmierung 3
S LWJGL Kamera Problem - Alles verzerrt Spiele- und Multimedia-Programmierung 4
B LWJGL StackOverFlow Problem nach 30sekunden. (Pong) Spiele- und Multimedia-Programmierung 2
Seikuassi LWJGL-Problem Spiele- und Multimedia-Programmierung 2
L Minecraft Minecraft Plugin programmieren (Craftbukkit 1.7.2) Problem Spiele- und Multimedia-Programmierung 4
B Minecraft mehr Ram zuweißen Problem Spiele- und Multimedia-Programmierung 0
K Bukkit Plugin Problem Spiele- und Multimedia-Programmierung 3
Y Problem mit repaint() in run() Spiele- und Multimedia-Programmierung 2
X Kleines Problem mit Java Reflections und einem eigenen Eventhandler Spiele- und Multimedia-Programmierung 1
T Problem mit Kollisionsabfrage der NPC Spiele- und Multimedia-Programmierung 1
J Minecraft Problem mit dem JRE - Minecraft Spiele- und Multimedia-Programmierung 3
TheSorm Problem mit 2 classen NullPointerException Spiele- und Multimedia-Programmierung 1
S Problem mit 4 gewinnt(MinMax Algorithmus) Spiele- und Multimedia-Programmierung 2
N Problem in der Main.class Spiele- und Multimedia-Programmierung 1
J Blöcke, Hitboxen, Koolisionsabfrage - Problem Spiele- und Multimedia-Programmierung 8
S Problem mit 3d-Polygon Spiele- und Multimedia-Programmierung 2
A Problem mit Sound Spiele- und Multimedia-Programmierung 5
C Nxt Duell Problem Spiele- und Multimedia-Programmierung 4
F LWJGL Problem mit Erstellen eines Objekts und der Kamera Spiele- und Multimedia-Programmierung 5
ruerob Problem bei Fade-Out von Sounds Spiele- und Multimedia-Programmierung 3
L [Slick2D] Problem bei Speicherfreigabe Spiele- und Multimedia-Programmierung 2
M Bukkit Plugin Problem Spiele- und Multimedia-Programmierung 22
T Java3D Rendering Problem Spiele- und Multimedia-Programmierung 7
J Problem bei pixelgenauer Kollisionsabfrage Spiele- und Multimedia-Programmierung 10
F Problem mit dem Abspielen von byte[] (Audioprogrammierung) Spiele- und Multimedia-Programmierung 2
C Problem mit Abspielen von Audio-Dateien Spiele- und Multimedia-Programmierung 3
R Problem bei Farbe ändern/4Gewinnt Spiele- und Multimedia-Programmierung 5
R StringIndexOutOfBoundsException - Problem Spiele- und Multimedia-Programmierung 2
S Problem mit Sichtfeld/Licht in einem Raster Spiele- und Multimedia-Programmierung 5
G Acht-Damen-Problem HILFE! Spiele- und Multimedia-Programmierung 11
A TileMap KeyListener - Problem Spiele- und Multimedia-Programmierung 2
J Problem mit Threads Spiele- und Multimedia-Programmierung 8
N Problem mit Kollisionsabfrage beim Fallen Jump & Run Spiele- und Multimedia-Programmierung 5
S Problem mit Zeitsteuerung der Game Loop Spiele- und Multimedia-Programmierung 4
Fu3L Problem mit 3D Noise Spiele- und Multimedia-Programmierung 4
L Problem beim Rätsellöser Spiele- und Multimedia-Programmierung 3
D Problem beim bewegen einer Figur Spiele- und Multimedia-Programmierung 2
T Problem bei LinkedList / JPanel Spiele- und Multimedia-Programmierung 4
T Problem mit ClassLoader und LWJGL Spiele- und Multimedia-Programmierung 5
M Scrolling Repaint Problem Spiele- und Multimedia-Programmierung 2
Samake03 [Problem] layeredPane bzw. Viewport Spiele- und Multimedia-Programmierung 3
Helgon glTexParameter / glTexImage2D Problem Spiele- und Multimedia-Programmierung 11
T Jmonkey opengl problem Spiele- und Multimedia-Programmierung 13
M Problem mit Kamera (glMultMatrix (OpenGL/ LWJGL)/ Quaternionen) Spiele- und Multimedia-Programmierung 5
M Problem mit Gameserver / Datensynchronisation Spiele- und Multimedia-Programmierung 10
G Mein erstes minigame -> problem mit Methode Spiele- und Multimedia-Programmierung 3
X Geometry Wars Clone Problem Spiele- und Multimedia-Programmierung 4
H Problem mit JMonkeyEngine3 und OgreXML Spiele- und Multimedia-Programmierung 3
D [JOGL 2.0] Kleines Problem mit freier Flugsteuerung Spiele- und Multimedia-Programmierung 3
A JAVA3D TransformGroup <--> Group Problem Spiele- und Multimedia-Programmierung 3
U [JOGL 1.1.1a]Kleines Problem mit Text Overlays: Spiele- und Multimedia-Programmierung 19
T Problem mit JnR-Steuerung / KeyListener Spiele- und Multimedia-Programmierung 6
D Problem Mit Miensweeper Clone & rekursive Methode Spiele- und Multimedia-Programmierung 4
M Performance Problem bei BufferedImage Spiele- und Multimedia-Programmierung 7
T Problem mit Speicherverbrauch Spiele- und Multimedia-Programmierung 5
S Programmstruktur Problem! Spiele- und Multimedia-Programmierung 8
BattleMaster246 Problem mit Jogl Spiele- und Multimedia-Programmierung 14
C MP3 Handler-Problem Spiele- und Multimedia-Programmierung 13
C [gelöst] MP3-Codec-Problem Spiele- und Multimedia-Programmierung 2
K Schiebepuzzle Array Zufallszahlen Problem Spiele- und Multimedia-Programmierung 8
J Java 3D Problem Spiele- und Multimedia-Programmierung 2
G Eclipse Problem mit Java3d Spiele- und Multimedia-Programmierung 3
H Repaint-Problem mit Quaxlis Tutorial Spiele- und Multimedia-Programmierung 2
C Java Sound API Clip.Close() Problem Spiele- und Multimedia-Programmierung 1
K Problem beim Anzeigen von Bildern Spiele- und Multimedia-Programmierung 5
D Problem mit Überprüfung beim Lottospiel Spiele- und Multimedia-Programmierung 6
D Problem beim Öffnen einer PHP für eine Highscore Spiele- und Multimedia-Programmierung 5

Ähnliche Java Themen

Neue Themen


Oben