spritedrawing.java

来自「1) 图像的基本操作; 2) ImageObserver接口、ImagePro」· Java 代码 · 共 50 行

JAVA
50
字号
package tankgame611;
import java.awt.Image;
import java.applet.Applet;
import java.awt.Graphics;

//本类负责图片绘制
public class SpriteDrawing extends AbstractSprite {
    Image SpriteImage[]; //存储多幅Sprite图片的数组
    Image spriteImg;//单幅的Sprite图片
    Applet GameApplet; //Applet的子类,绘制图像时会用到
    public SpriteDrawing(Image SpriteImage[],//不同方向的多幅Sprite图片
                         int initX, int initY,//起始位置
                         Applet GameApplet) {
        this.SpriteImage = SpriteImage;
        this.GameApplet = GameApplet;
        setPos(initX,initY); //设定起始位置
        setVisible(true); //可见
        setActive(true); //可移动
    }
    public SpriteDrawing(Image spriteImg,//不同方向的多幅Sprite图片
                         int initX, int initY,//起始位置
                         Applet GameApplet) {
        this.spriteImg = spriteImg;
        this.GameApplet = GameApplet;
        setPos(initX,initY); //设定起始位置
        setVisible(true); //可见
        setActive(true); //可移动
    }
    public SpriteDrawing(int initX, int initY) {
      setPos(initX, initY); //设定起始位置
      setVisible(true); //可见
      setActive(true); //可移动
    }

    //该方法要在具体的子类中具体实现
    public void updatePos(int SpiritDirection){  }
    //实现绘制数组图片的方法
    public void drawSprite(Graphics g, int tankDirection){
        if (visible == true){
          g.drawImage(SpriteImage[tankDirection], X, Y, GameApplet);
        }
    }
    //实现绘制单幅图片的方法
    public void drawSprite(Graphics g){
        if (visible == true){
          g.drawImage(spriteImg, X, Y, GameApplet);
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?