Boas!
Eu precisava de uma ajudinha aqui com um codigo de programacao.
Tenho de fazer um jogo de Ludo, nao sei se conhecem,
http://www.youtube.com/watch?v=22amEq9K-qg .
Nesta fase do trabalho muitas regras ficaram de fora mas ainda assim estou com alguns problemas.
Estou a usar o eclipse e tenho 3 classes:
Main, classe de comando
DiceGenerator, que cria um valor para o dado
Pawn, que faz o peao andar.
Main:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int op;
Scanner s = new Scanner (System.in);
Pawn p = new Pawn ();
Dice d = new Dice();
op = 0;
while (op != 2) {
System.out.println (" Choose an Option ");
writeMenu();
op = s.nextInt ();
processOp (op, s, p, d);
}
}
private static void writeMenu() {
System.out.println (" 1 - Roll Dice and Move Pawn ");
System.out.println (" 2 - Exit ");
}
private static void processOp(int op, Scanner s, Pawn p, Dice d) {
switch (op) {
case 1:
p.MovePawn();
break;
case 2:
System.out.println (" Program Terminated! ");
default: System.out.println("Invalid Option") ;
}
}
}
DiceGenerator:
import java.util.Random;
public class Dice {
public static final int INTERVALMIN = 1;
public static final int INTERVALMAX = 6;
public int DiceGenerator(){
int dist = INTERVALMAX - INTERVALMIN + 1;
Random d = new Random();
return d.nextInt(dist) + INTERVALMIN;
}
}
Pawn:
public class Pawn {
private int Color;
private int GreenPawn;
private int YellowPawn;
private int RedPawn;
private int BluePawn;
public Pawn(){
GreenPawn = 57;
YellowPawn = 57;
RedPawn = 57;
BluePawn = 57;
}
public String MovePawn () {
Dice l = new Dice ();
Color = 0;
while(GreenPawn > 0 && YellowPawn > 0 && RedPawn > 0 && BluePawn > 0)
if (Color == 0){
GreenPawn = GreenPawn - l.DiceGenerator();
Color++;
return "Player Green, Dice" + l.DiceGenerator() + " Left " + GreenPawn;
} else if (Color == 1) {
YellowPawn = YellowPawn - l.DiceGenerator();
Color ++;
return "Player Yellow, Dice" + l.DiceGenerator() + "Left " +YellowPawn;
} else if (Color == 2) {
RedPawn = RedPawn - l.DiceGenerator();
Color ++;
return "Player Red, Dice" + l.DiceGenerator() + "Left " + RedPawn;
} else if (Color == 3) {
BluePawn = BluePawn - l.DiceGenerator();
Color = 0;
return "Player Blue, Dice" + l.DiceGenerator() + "Left " + BluePawn;
} else ;
return "Game Over";
}
}
Apesar de nao existirem erros o programa nao corre.... Ajuda por favor!