?? ball.java
字號:
package org.bubblebreaker.model;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class Ball
{
//Balls that will be used in the game
public final static Ball GREENBALL =new Ball(Color.GREEN);
public final static Ball YELLOWBALL =new Ball(Color.YELLOW);
public final static Ball CYANBALL =new Ball(Color.CYAN);
public final static Ball REDBALL =new Ball(Color.RED);
public final static Ball PURPLEBALL = new Ball(Color.PURPLE);
public final static Ball BLACKBALL = new Ball(Color.BLACK);
public final static Ball WHITEBALL = new Ball(Color.WHITE);
public final static Ball FUNNYBALL = new Ball(Color.WHITE);
public final static Ball balls[]=
{
GREENBALL,
YELLOWBALL,
CYANBALL,
REDBALL,
PURPLEBALL
};
//types of balls
public final static int DRAW2D=0;
public final static int IMAGE=1;
public final static int IMAGE_GLASS=2;
//This balls color and/or image
Color color;
Image image;
private Ball(Color color)
{
this.color=color;
}
public int getDiameter()
{
/*if(image!=null)
return image.getWidth();
return -1;*/
return 17;
}
public void createImage(String fname)
{
if(null == fname){
image=null;
return;
}
try
{
image=Image.createImage(fname);
}catch(Exception e){
try
{
image=Image.createImage("/"+fname);
}catch(Exception e1){
}
}
}
public void draw(Graphics g, int row, int col)
{
draw(g,row,col,getDiameter(),getDiameter());
}
public void draw(Graphics g, int row, int col, int rowHeight, int colWidth )
{
if(null == image)
{
int diameter=colWidth-2;
g.setColor(color.getCode());
g.fillArc(col*colWidth, row*rowHeight, diameter, diameter,0,360);
if(Color.WHITE != color)
{
g.setColor(Color.BLACK.getCode());
}
g.drawArc(col*colWidth, row*rowHeight, diameter, diameter,0,360);
}else{
g.drawImage(image, col*colWidth + colWidth/2, row*rowHeight + rowHeight/2, Graphics.HCENTER|Graphics.VCENTER);
}
}
public static int createBalls(int type)
{
switch(type)
{
case IMAGE_GLASS:
GREENBALL.createImage("green-glass.jpg");
YELLOWBALL.createImage("yellow-glass.jpg");
CYANBALL.createImage("cyan-glass.jpg");
REDBALL.createImage("red-glass.jpg");
PURPLEBALL.createImage("purple-glass.jpg");
break;
case IMAGE:
GREENBALL.createImage("green.jpg");
YELLOWBALL.createImage("yellow.jpg");
CYANBALL.createImage("cyan.jpg");
REDBALL.createImage("red.jpg");
PURPLEBALL.createImage("purple.jpg");
WHITEBALL.createImage("white.jpg");
break;
case DRAW2D:
GREENBALL.createImage(null);
YELLOWBALL.createImage(null);
CYANBALL.createImage(null);
REDBALL.createImage(null);
PURPLEBALL.createImage(null);
break;
}
FUNNYBALL.createImage("funny.PNG");
return balls.length;// num of balls to use
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -