• 大小: 1.67MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-25
  • 语言: Java
  • 标签: 超级玛丽  java  源码  

资源简介

一个类似于超级玛丽的游戏; 采用java编程; 内含java源码

资源截图

代码片段和文件信息

package com.brackeen.javagamebook.graphics;

import java.awt.Image;
import java.util.ArrayList;

public class Animation {

    private ArrayList frames;
    private int currframeIndex;
    private long animTime;
    private long totalDuration;


    /**
        Creates a new empty Animation.
    */
    public Animation() {
        this(new ArrayList() 0);
    }


    private Animation(ArrayList frames long totalDuration) {
        this.frames = frames;
        this.totalDuration = totalDuration;
        start();
    }


    /**
        Creates a duplicate of this animation. The list of frames
        are shared between the two Animations but each Animation
        can be animated independently.
    */
    public object clone() {
        return new Animation(frames totalDuration);
    }


    /**
        Adds an image to the animation with the specified
        duration (time to display the image).
    */
    public synchronized void addframe(Image image
        long duration)
    {
        totalDuration += duration;
        frames.add(new Animframe(image totalDuration));
    }


    /**
        Starts this animation over from the beginning.
    */
    public synchronized void start() {
        animTime = 0;
        currframeIndex = 0;
    }


    /**
        Updates this animation‘s current image (frame) if
        neccesary.
    */
    public synchronized void update(long elapsedTime) {
        if (frames.size() > 1) {
            animTime += elapsedTime;

            if (animTime >= totalDuration) {
                animTime = animTime % totalDuration;
                currframeIndex = 0;
            }

            while (animTime > getframe(currframeIndex).endTime) {
                currframeIndex++;
            }
        }
    }


    /**
        Gets this Animation‘s current image. Returns null if this
        animation has no images.
    */
    public synchronized Image getImage() {
        if (frames.size() == 0) {
            return null;
        }
        else {
            return getframe(currframeIndex).image;
        }
    }


    private Animframe getframe(int i) {
        return (Animframe)frames.get(i);
    }


    private class Animframe {

        Image image;
        long endTime;

        public Animframe(Image image long endTime) {
            this.image = image;
            this.endTime = endTime;
        }
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        232  2010-09-08 13:32  brackeen\.classpath

     文件        384  2010-09-08 13:32  brackeen\.project

     文件       3225  2010-09-08 13:33  brackeen\build.xml

     文件       1727  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\util\LoopingByteInputStream.java

     文件       4559  2010-09-08 13:37  brackeen\src\com\brackeen\javagamebook\util\ThreadPool.java

     文件      12854  2010-09-08 13:37  brackeen\src\com\brackeen\javagamebook\tilegame\GameManager.java

     文件      10543  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\tilegame\ResourceManager.java

     文件       2396  2010-09-08 13:36  brackeen\src\com\brackeen\javagamebook\tilegame\TileMap.java

     文件       4781  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\tilegame\TileMapRenderer.java

     文件       4406  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\tilegame\sprites\Creature.java

     文件        518  2010-09-08 13:37  brackeen\src\com\brackeen\javagamebook\tilegame\sprites\Fly.java

     文件        456  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\tilegame\sprites\Grub.java

     文件       1310  2010-09-08 13:37  brackeen\src\com\brackeen\javagamebook\tilegame\sprites\Player.java

     文件       1379  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\tilegame\sprites\PowerUp.java

     文件       3867  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\test\GameCore.java

     文件       2635  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\sound\EchoFilter.java

     文件       2665  2010-09-08 13:35  brackeen\src\com\brackeen\javagamebook\sound\Filter3d.java

     文件       2221  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\sound\FilteredSoundStream.java

     文件       1439  2010-09-08 13:36  brackeen\src\com\brackeen\javagamebook\sound\FilterSequence.java

     文件       3807  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\sound\MidiPlayer.java

     文件        586  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\sound\Sound.java

     文件       2172  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\sound\SoundFilter.java

     文件      10651  2010-09-08 13:35  brackeen\src\com\brackeen\javagamebook\sound\SoundManager.java

     文件       3208  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\input\GameAction.java

     文件      11820  2010-09-08 13:35  brackeen\src\com\brackeen\javagamebook\input\InputManager.java

     文件       2494  2010-09-08 13:33  brackeen\src\com\brackeen\javagamebook\graphics\Animation.java

     文件        997  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\graphics\NullRepaintManager.java

     文件       7090  2010-09-08 13:34  brackeen\src\com\brackeen\javagamebook\graphics\ScreenManager.java

     文件       2577  2010-09-08 13:32  brackeen\src\com\brackeen\javagamebook\graphics\Sprite.java

     文件      38838  2010-09-08 13:33  brackeen\sounds\boop2.wav

............此处省略107个文件信息

评论

共有 条评论