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

📄 bnb_vehicle.java

📁 手机版本的泡泡堂 用j2me写的 大家可以参考下
💻 JAVA
字号:


import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;

public final class BnB_Vehicle extends Sprite
{
    public int speed;//游戏中坐骑的移动速度。
    private long lastTime, intervalTime;

    /**
     * 构造方法:设定
     * @param img
     * @param w
     * @param h
     * @param ID
     *                1是 乌龟;
     *                2是 飞碟;
     *                3是 猫头鹰;
     *                4是 海盗龟;
     *                5是 高级飞碟;
     */
    public BnB_Vehicle(Image img, int w, int h, int ID)
    {
        super(img, w, h);
        this.defineReferencePixel(getX() + (getWidth() >>> 1), getY()
                + (getHeight() >>> 1));
        switch (ID)
        {
            case 1:
                speed = 2;
                break;
            case 2:
                speed = 2;
                break;
            case 3:
                speed = 4;
                break;
            case 4:
                speed = 6;
                break;
            case 5:
                speed = 6;
                break;
        }
    }

    /***
     * @方法说明:坐骑往左移动
     */
    public final void moveLeft()
    {
        runFrame(4, 5);
        move(-speed, 0);
    }
    /***
     * @方法说明:坐骑往右移动
     */
    public final void moveRight()
    {
        runFrame(6, 7);
        move(speed, 0);
    }
    /***
     * @方法说明:坐骑往上移动
     */
    public final void moveUp()
    {
        runFrame(0, 1);
        move(0, -speed);
    }
    /***
     * @方法说明:坐骑往下移动
     */
    public final void moveDown()
    {
        runFrame(2, 3);
        move(0, speed);
    }
    /***
     * @方法说明:动画桢的切换
     */
    private final void runFrame(int startFrame, int endFrame)
    {
        if (this.getFrame() < startFrame || this.getFrame() >= endFrame)
        {
            this.setFrame(startFrame);
        }
        if (isNextFrame(500))
        {
            this.nextFrame();
        }
    }
    /***
     * @方法说明:动画桢切换的记时器。
     */
    private final boolean isNextFrame(int nextFrameTime)
    {
        intervalTime = System.currentTimeMillis() - lastTime;
        if (intervalTime >= nextFrameTime)
        {
            lastTime = System.currentTimeMillis();
            return true;
        }
        return false;
    }
}

⌨️ 快捷键说明

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