?? createdialog.java
字號:
temp.setInUse(false);
else
temp.setInUse(true);
}
ite = y.iterator();
while(ite.hasNext()){
temp = (Pieces)ite.next();
if(temp.getScore() > 4)
temp.setInUse(false);
else
temp.setInUse(true);
}
ite = r.iterator();
while(ite.hasNext()){
temp = (Pieces)ite.next();
if(temp.getScore() > 4)
temp.setInUse(false);
else
temp.setInUse(true);
}
ite = g.iterator();
while(ite.hasNext()){
temp = (Pieces)ite.next();
if(temp.getScore() > 4)
temp.setInUse(false);
else
temp.setInUse(true);
}
}/*else{
LinkedList b = game.getBluePieces().getImagePieces();
LinkedList y = game.getYellowPieces().getImagePieces();
LinkedList r = game.getRedPieces().getImagePieces();
LinkedList g = game.getGreenPieces().getImagePieces();
Iterator ite = b.iterator();
Pieces temp;
while(ite.hasNext()){
temp = (Pieces)ite.next();
temp.setInUse(true);
}
ite = y.iterator();
while(ite.hasNext()){
temp = (Pieces)ite.next();
temp.setInUse(true);
}
ite = r.iterator();
while(ite.hasNext()){
temp = (Pieces)ite.next();
temp.setInUse(true);
}
ite = g.iterator();
while(ite.hasNext()){
temp = (Pieces)ite.next();
temp.setInUse(true);
}
}*/
}
}
//創建結束對話框
private void creatEnd(){
JPanel panel = new JPanel();
int t = p.getGameType();
switch(t){
case 0:{
panel.setLayout(new GridLayout(2,1));
int play1 = 0;
for(int i = 0; i < 20; i ++)
for(int j = 0; j < 20; j ++)
if(game.getBoardGrid()[i][j] != 0)
play1 += 1;
String s = "Your Score: " + play1;
JLabel label = new JLabel();
JLabel newStart = new JLabel();
newStart.setText("Play again?(Yes/NO)");
label.setText(s);
panel.add(label);
panel.add(newStart);
}
break;
case 1:{
int a = 0, b = 0, c = 0, d = 0;
int play1 = 0;
int play2 = 0;
String playC1 = "", playC2 = "";
panel.setLayout(new GridLayout(4,1));
if(p.getBlueC() == false && p.getRedC() == false){
a = 1;
b = 2;
c = 3;
d = 4;
playC1 = "(Blue and Red)";
playC2 = "(Yellow ane Green)";
}else if(p.getYellowC() == false && p.getGreenC() == false){
a = 2;
b = 3;
c = 4;
d = 1;
playC1 = "(Blue and Red)";
playC2 = "(Yellow ane Green)";
}
for(int i = 0; i < 20; i ++)
for(int j = 0; j < 20; j ++)
if(game.getBoardGrid()[i][j] == a ||
game.getBoardGrid()[i][j] == c)
play1 += 1;
else if(game.getBoardGrid()[i][j] == b ||
game.getBoardGrid()[i][j] == d)
play2 += 1;
String s1 = "Your Score: " + play1 + playC1;
String s2 = "Computer Score: " + play2 + playC2;
JLabel label1 = new JLabel();
JLabel label2 = new JLabel();
JLabel label3 = new JLabel();
JLabel newStart = new JLabel();
newStart.setText("Play again?(Yes/NO)");
label1.setText(s1);
label2.setText(s2);
if(play1 > play2)
label3.setText("(: YOU WIN :)");
else if(play1 < play2)
label3.setText("): YOU LOSE :(");
else
label3.setText("~~ DRAW GAME ~~");
panel.add(label1);
panel.add(label2);
panel.add(label3);
panel.add(newStart);
}
break;
case 2:{
panel.setLayout(new GridLayout(6,1));
int ia = 0, ib = 0, ic = 0, id = 0;
int play1 = 0, play2 = 0, play3 = 0, play4 = 0;
String playC1 = "", playC2 = "", playC3 = "", playC4 = "";
if(p.getBlueC() == false){
ia = 1;
ib = 2;
ic = 3;
id = 4;
playC1 = "(Blue)";
playC2 = "(Yellow)";
playC3 = "(Red)";
playC4 = "(Green)";
}else if(p.getYellowC() == false){
ia = 2;
ib = 3;
ic = 4;
id = 1;
playC4 = "(Blue)";
playC1 = "(Yellow)";
playC2 = "(Red)";
playC3 = "(Green)";
}else if(p.getRedC() == false){
ia = 3;
ib = 4;
ic = 1;
id = 2;
playC3 = "(Blue)";
playC4 = "(Yellow)";
playC1 = "(Red)";
playC2 = "(Green)";
}else if(p.getRedC() == false){
ia = 4;
ib = 1;
ic = 2;
id = 3;
playC2 = "(Blue)";
playC3 = "(Yellow)";
playC4 = "(Red)";
playC1 = "(Green)";
}
for(int i = 0; i < 20; i ++)
for(int j = 0; j < 20; j ++)
if(game.getBoardGrid()[i][j] == ia)
play1 += 1;
else if(game.getBoardGrid()[i][j] == ib)
play2 += 1;
else if(game.getBoardGrid()[i][j] == ic)
play3 += 1;
else if(game.getBoardGrid()[i][j] == id)
play4 += 1;
String s1 = "Your Score: " + play1 + playC1;
String s2 = "Computer1 Score: " + play2 + playC2;
String s3 = "Computer2 Score: " + play3 + playC3;
String s4 = "Computer3 Score: " + play4 + playC4;
JLabel label1 = new JLabel();
JLabel label2 = new JLabel();
JLabel label3 = new JLabel();
JLabel label4 = new JLabel();
JLabel label5 = new JLabel();
JLabel newStart = new JLabel();
newStart.setText("Play again?(Yes/NO)");
label1.setText(s1);
label1.setText(s2);
label1.setText(s3);
label1.setText(s4);
if(play1 > play2 && play1 > play2 && play1 > play3 && play1 > play4)
label5.setText("(: YOU WIN :)");
else if(play1 == play2 && play1 == play2
&& play1 == play3 && play1 == play4)
label5.setText("~~ DRAW GAME ~~");
else
label5.setText("): YOU LOSE :(");
panel.add(label1);
panel.add(label2);
panel.add(label3);
panel.add(label4);
panel.add(label5);
panel.add(newStart);
}
break;
case 3:{
panel.setLayout(new GridLayout(2,1));
int play1 = 0;
for(int i = 0; i < 20; i ++)
for(int j = 0; j < 20; j ++)
if(game.getBoardGrid()[i][j] != 0)
play1 += 1;
String s = "Computer Score: " + play1;
JLabel label = new JLabel();
JLabel newStart = new JLabel();
newStart.setText("Play again?(Yes/NO)");
label.setText(s);
panel.add(label);
panel.add(newStart);
}
default:
break;
}
int selection = JOptionPane.showConfirmDialog(CreateDialog.this,
panel, "Game End",
JOptionPane.YES_NO_OPTION,
JOptionPane.INFORMATION_MESSAGE);
if(selection == JOptionPane.YES_OPTION){
p.init();
}
}
private void hasNotStart(){
JPanel panel = new JPanel();
JLabel label1 = new JLabel();
JLabel label2 = new JLabel();
panel.setLayout(new GridLayout(2,1));
label1.setText("Press <Start> to begin the game");
label2.setText("Press 'F1' to call help");
panel.add(label1);
panel.add(label2);
JOptionPane.showConfirmDialog(CreateDialog.this,
panel, "Waring",
JOptionPane.OK_CANCEL_OPTION,
JOptionPane.WARNING_MESSAGE);
}
private void help(){
JPanel panel = new JPanel();
JLabel label1 = new JLabel();
JLabel label2 = new JLabel();
JLabel label3 = new JLabel();
JLabel label4 = new JLabel();
JLabel label5 = new JLabel();
JLabel label6 = new JLabel();
JLabel label7 = new JLabel();
JLabel label8 = new JLabel();
JLabel label9 = new JLabel();
panel.setLayout(new GridLayout(9,1));
label1.setText("F1: Help");
label2.setText("Space: Rotation");
label3.setText("Enter: Mirror");
label4.setText("Escape: Exit");
label5.setText("Backspace: Undo");
label6.setText("Mouse-Left: Choose piece or put it on to board");
label7.setText("Mouse-Right: Put the piece back to side");
label8.setText("Mouse-Wheel: Rotation");
label9.setText("Mosue-Middle: Mirror");
panel.add(label1);
panel.add(label2);
panel.add(label3);
panel.add(label4);
panel.add(label5);
panel.add(label6);
panel.add(label7);
panel.add(label8);
panel.add(label9);
JOptionPane.showConfirmDialog(CreateDialog.this,
panel, "Help",
JOptionPane.OK_CANCEL_OPTION,
JOptionPane.INFORMATION_MESSAGE);
}
//重構事件處理
public void actionPerformed(ActionEvent evt){
Object source = evt.getSource();
if(source == oohc){
oohh.setSelected(false);
othc.setSelected(false);
otcc.setSelected(false);
oohc.setSelected(true);
}
else if(source == oohh){
oohc.setSelected(false);
othc.setSelected(false);
otcc.setSelected(false);
oohh.setSelected(true);
}
else if(source == othc){
oohc.setSelected(false);
oohh.setSelected(false);
otcc.setSelected(false);
othc.setSelected(true);
}
else if(source == otcc){
oohc.setSelected(false);
oohh.setSelected(false);
othc.setSelected(false);
otcc.setSelected(true);
}
else if((source == blue || source == yellow || source == red || source == green)
&& isOohh == true){
blue.setSelected(true);
yellow.setSelected(true);
red.setSelected(true);
green.setSelected(true);
}
else if((source == blue || source == red) && isOohc == true){
blue.setSelected(true);
yellow.setSelected(false);
red.setSelected(true);
green.setSelected(false);
}else if((source == yellow || source == green) && isOohc == true){
blue.setSelected(false);
yellow.setSelected(true);
red.setSelected(false);
green.setSelected(true);
}
else if(source == blue && isOthc == true){
blue.setSelected(true);
yellow.setSelected(false);
red.setSelected(false);
green.setSelected(false);
}else if(source == yellow && isOthc == true){
blue.setSelected(false);
yellow.setSelected(true);
red.setSelected(false);
green.setSelected(false);
}else if(source == red && isOthc == true){
blue.setSelected(false);
yellow.setSelected(false);
red.setSelected(true);
green.setSelected(false);
}else if(source == green && isOthc == true){
blue.setSelected(false);
yellow.setSelected(false);
red.setSelected(false);
green.setSelected(true);
}else if(source == one){
one.setSelected(true);
two.setSelected(false);
three.setSelected(false);
four.setSelected(false);
five.setSelected(false);
isOne = true;
isTwo = false;
isThree = false;
isFour = false;
isFive = false;
p.setPlayMode(1);
}else if(source == five){
one.setSelected(false);
two.setSelected(false);
three.setSelected(false);
four.setSelected(false);
five.setSelected(true);
isOne = false;
isTwo = false;
isThree = false;
isFour = false;
isFive = true;
p.setPlayMode(5);
}else if(source == two){
one.setSelected(false);
two.setSelected(true);
three.setSelected(false);
four.setSelected(false);
five.setSelected(false);
isOne = false;
isTwo = true;
isThree = false;
isFour = false;
isFive = false;
p.setPlayMode(2);
}else if(source == three){
one.setSelected(false);
two.setSelected(false);
three.setSelected(true);
four.setSelected(false);
five.setSelected(false);
isOne = false;
isTwo = false;
isThree = true;
isFour = false;
isFive = false;
p.setPlayMode(3);
}else if(source == four){
one.setSelected(false);
two.setSelected(false);
three.setSelected(false);
four.setSelected(true);
five.setSelected(false);
isOne = false;
isTwo = false;
isThree = false;
isFour = true;
isFive = false;
p.setPlayMode(4);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -