⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spriteclip.java

📁 一个关于J2ME的确游戏
💻 JAVA
字号:
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.Graphics;

public class SpriteClip {

    private long delayMS;
    protected int iCount, state, delay;
    protected int w, h;
    private int[][] iArray;
    private Image image;

    private void setClip(Graphics g, int x, int y) {

        g.setClip(x, y, w, h);
        g.drawImage(image, x - iCount * w - iArray[state][2],
                    y - iArray[state][3], Actor.G_TOP_LEFT);

    }

    public final void drawClip(Graphics g, int x, int y) {

        if (iArray[state][4] != 0) {
            setClip(g, x, y);
            if (spriteDelay(delay)) {
                iCount++;
                if (iCount > iArray[state][4]) {
                    iCount = 0;

                }
            }
        } else if (iArray[state][5] != 0) {
            for (int i = 0; i < iArray[state][5]; i++) {
                setClip(g, x, y + i * h);
            }
        } else {
            setClip(g, x, y);
        }
    }

    public void init(Image imageArg, int stateTotal) {

        image = imageArg;
        iArray = new int[stateTotal][6];

    }

    public void setArray(int state, int clipW, int clipH, int offsetX,
                         int offsetY, int row, int length) {

        iArray[state][0] = clipW;
        iArray[state][1] = clipH;
        iArray[state][2] = offsetX;
        iArray[state][3] = offsetY;
        iArray[state][4] = row;
        iArray[state][5] = length / iArray[state][1];

    }

    public void setState(int stateArg, int delayArg) {

        state = stateArg;
        delay = delayArg;
        w = iArray[state][0];
        h = iArray[state][1];
        iCount = 0;
        delayMS = System.currentTimeMillis();
    }

    public final boolean spriteDelay(int delay) {

        if (System.currentTimeMillis() - delayMS > delay) {
            delayMS = System.currentTimeMillis();
            return true;
        }
        return false;
    }


}

⌨️ 快捷键说明

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