All pastes #986420 Raw Edit

Klasse Spieler

public text v1 · immutable
·published 2008-04-15 20:02 UTC
rendered paste body
package dominospiel;

import java.util.ArrayList;
import java.util.Iterator;

public abstract class Spieler {

	protected ArrayList<Dominostein> steineSpieler = new ArrayList<Dominostein>();
	protected ArrayList<Dominostein> anlegbareSteine = new ArrayList<Dominostein>();
	
	
		//gibt dem Spieler einen Stein
	public void zieheStein(Dominostein dominostein){
		steineSpieler.add(dominostein);
	}
		
		//zeigt dem Spieler die Steine
	public ArrayList<Dominostein> deckeSteineAuf(){
		return steineSpieler;
	}
	
		//abstracte Mehtode muss in Mensch und Computer implementiert werden
	abstract int waehleAnlegeSeite(Dominostein stein);

	
	public void legeRechtsAn(){	//TODO: prüfen ob die wegkann
		
	}
	
		//diese Methode entscheidet, welcher Stein wie angelegt werden kann
	public Dominostein waehleStein(Dominostein spielfeld){
		Iterator<Dominostein> einStein = steineSpieler.iterator();
		Dominostein aktuellerStein;
		
		while (einStein.hasNext()) {
			aktuellerStein = einStein.next();
			
			if ((aktuellerStein.getLinkesAuge() == spielfeld.getRechtesAuge()) || (aktuellerStein.getRechtesAuge() == spielfeld.getLinkesAuge()) ) {
				aktuellerStein.setIstRechtsAnlegbar(true);	
				aktuellerStein.setIstLinksAnlegbar(true);
			}
			else if (aktuellerStein.getLinkesAuge() == spielfeld.getRechtesAuge()) {
				aktuellerStein.setIstRechtsAnlegbar(true);	
			} else if (aktuellerStein.getRechtesAuge() == spielfeld.getLinkesAuge()) {
				aktuellerStein.setIstRechtsAnlegbar(false);
			} else {
				aktuellerStein.setIstRechtsAnlegbar(false);
				aktuellerStein.setIstLinksAnlegbar(false);
			}
		}
		
		return null;
	}
}