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

📄 secondanimation.java

📁 俄罗斯制作的横版动作游戏
💻 JAVA
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   SecondAnimation.java

import java.io.IOException;
import java.io.PrintStream;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;

public class SecondAnimation
{

    public static final int LEFT = 0;
    public static final int RIGHT = 8192;
    private Image image;
    private int curframe;
    public int AddX;
    public int AddY;
    public int FrameX;
    public int FrameY;
    public int startFrame;
    public int stopFrame;
    public int effect;
    public int curX;
    public int curY;
    private long timeAnimation;
    private long nextTime;
    private Sprite sp;

    public SecondAnimation()
    {
        effect = 0;
        timeAnimation = 33L;
        nextTime = System.currentTimeMillis();
    }

    public SecondAnimation(byte data[], int start, int size, int framex, int framey)
    {
        image = Image.createImage(data, start, size);
        FrameX = framex;
        FrameY = framey;
        curframe = 0;
        effect = 0;
        timeAnimation = 33L;
        startFrame = 1;
        stopFrame = FrameX * FrameY;
        AddX = image.getWidth() / FrameX;
        AddY = image.getHeight() / FrameY;
        sp = new Sprite(image, AddX, AddY);
    }

    public SecondAnimation(String filename, int framex, int framey)
    {
        try
        {
            image = Image.createImage(filename);
        }
        catch(IOException eio)
        {
            System.out.println("Error No file " + eio.getMessage() + filename);
        }
        FrameX = framex;
        FrameY = framey;
        curframe = 0;
        effect = 0;
        timeAnimation = 33L;
        startFrame = 1;
        stopFrame = FrameX * FrameY;
        AddX = image.getWidth() / FrameX;
        AddY = image.getHeight() / FrameY;
        sp = new Sprite(image, AddX, AddY);
    }

    public void setTime(long time)
    {
        timeAnimation = time;
    }

    public long getTime()
    {
        return timeAnimation;
    }

    public void setFrame(int Frame)
    {
        curframe = Frame - 1;
    }

    public int getFrame()
    {
        return curframe + 1;
    }

    public void nextFrame()
    {
        if(System.currentTimeMillis() - nextTime >= timeAnimation)
        {
            if(curframe < stopFrame - 1)
                curframe++;
            else
                curframe = startFrame - 1;
            nextTime = System.currentTimeMillis();
        }
    }

    public void preFrame()
    {
        if(System.currentTimeMillis() - nextTime >= timeAnimation)
        {
            if(curframe > startFrame - 1)
                curframe--;
            else
                curframe = stopFrame - 1;
            nextTime = System.currentTimeMillis();
        }
    }

    public void setEffect(int ef)
    {
        effect = ef;
    }

    public int getEffect()
    {
        return effect;
    }

    public void setX(int x)
    {
        curX = x;
    }

    public void setY(int y)
    {
        curY = y;
    }

    public void setStartFrame(int s)
    {
        startFrame = s;
    }

    public void setStopFrame(int e)
    {
        stopFrame = e;
    }

    public int getX()
    {
        return curX;
    }

    public int getY()
    {
        return curY;
    }

    public int getStartFrame()
    {
        return startFrame;
    }

    public int getStopFrame()
    {
        return stopFrame;
    }

    public void drawImage(Graphics g, int x, int y, int frame, boolean clip)
    {
        if(!clip)
            g.setClip(0, 0, 176, 208);
        switch(effect)
        {
        case 8192: 
            sp.setTransform(2);
            break;

        case 180: 
            sp.setTransform(3);
            break;

        case 0: // '\0'
            sp.setTransform(0);
            break;

        case 90: // 'Z'
            sp.setTransform(5);
            break;

        case 270: 
            sp.setTransform(6);
            break;
        }
        frame--;
        if(frame <= -1 || frame > FrameX * FrameY)
        {
            return;
        } else
        {
            sp.setFrame(frame);
            sp.setPosition(x, y);
            sp.paint(g);
            return;
        }
    }

    public void drawImage(Graphics g, int x, int y, int frame, int eff, boolean clip)
    {
        int FrameCurX = 0;
        int FrameCurY = 0;
        int CurAddX = 0;
        int CurAddY = 0;
        if(!clip)
            g.setClip(0, 0, 176, 208);
        switch(eff)
        {
        case 8192: 
            sp.setTransform(2);
            break;

        case 180: 
            sp.setTransform(3);
            break;

        case 0: // '\0'
            sp.setTransform(0);
            break;

        case 270: 
            sp.setTransform(5);
            break;

        case 90: // 'Z'
            sp.setTransform(6);
            break;
        }
        frame--;
        if(frame <= -1 || frame > FrameX * FrameY)
        {
            return;
        } else
        {
            sp.setFrame(frame);
            sp.setPosition(x, y);
            sp.paint(g);
            return;
        }
    }
}

⌨️ 快捷键说明

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