资源简介
Java实现愤怒的小鸟AngryBirds
代码片段和文件信息
/*
* To change this template choose Tools | Templates
* and open the template in the editor.
*/
package AngryBirdsApplication;
import java.util.ArrayList;
import java.util.linkedList;
import org.jbox2d.callbacks.QueryCallback;
import org.jbox2d.collision.AABB;
import org.jbox2d.common.Vec2;
import org.jbox2d.dynamics.*;
import org.jbox2d.dynamics.joints.*;
/**
*
* @author Sumomoxiao
*/
enum QueueItemType {
MouseDown MouseMove MouseUp KeyPressed KeyReleased
}
class QueueItem {
public QueueItemType type;
public Vec2 p;
public char c;
public int code;
public QueueItem(QueueItemType t Vec2 pt) {
type = t;
p = pt;
}
}
class FixtureQueryCallback implements QueryCallback {
public final Vec2 point;
public Fixture fixture;
public FixtureQueryCallback() {
point = new Vec2();
fixture = null;
}
/**
* @see
* org.jbox2d.callbacks.QueryCallback#reportFixture(org.jbox2d.dynamics.Fixture)
*/
public boolean reportFixture(Fixture argFixture) {
Body body = argFixture.getBody();
if (body.getType() == BodyType.DYNAMIC) {
boolean inside = argFixture.testPoint(point);
if (inside) {
fixture = argFixture;
return false;
}
}
return true;
}
}
public abstract class AngryBirdsArea {
private MouseJoint mouseJoint;
private Vec2 mouseWorld = new Vec2();
public final World sworld;
private final Vec2 gravity;
public Vec2 slingAnchor;
public ArrayList birdlist;
public ArrayList oblist;
public ArrayList piglist sling;
public WeldJoint attach;
public WeldJointDef attachDef;
public Body ground;
public float scale = 1 / 64f;
float timeStep = 1.0f / 60.0f;
int velocityIterations = 6;
int positionIterations = 2;
public int birdbullets;
private final linkedList inputQueue;
public AngryBirdsArea() {
gravity = new Vec2(0 -10f);
inputQueue = new linkedList();
sworld = new World(gravity true);
birdlist = new ArrayList();
oblist = new ArrayList();
piglist = new ArrayList();
sling = new ArrayList();
slingAnchor = new Vec2();
}
abstract public void initStage();
long endtime = 0;
long duration = 0; //duration of release the bird;
long descountdown = 0;
public void step() {
sworld.step(timeStep velocityIterations positionIterations);
if (mouseJoint == null && attach == null) {
endtime = System.currentTimeMillis();
duration = (endtime - releasetime) / 1000;
}
if (duration > 3 && attach == null) {
if(b
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-12-07 20:18 AngryBirds\
目录 0 2014-12-07 20:18 AngryBirds\AngryBirds\
文件 389 2014-12-07 20:15 AngryBirds\AngryBirds\.classpath
文件 386 2013-09-10 09:45 AngryBirds\AngryBirds\.project
目录 0 2014-12-07 20:18 AngryBirds\AngryBirds\.settings\
文件 629 2013-09-10 09:45 AngryBirds\AngryBirds\.settings\org.eclipse.jdt.core.prefs
目录 0 2014-12-07 20:18 AngryBirds\AngryBirds\bin\
文件 6148 2013-09-10 09:45 AngryBirds\AngryBirds\bin\.DS_Store
目录 0 2014-12-07 20:18 AngryBirds\AngryBirds\bin\AngryBirdsApplication\
文件 7549 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsArea.class
文件 1677 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsController$1.class
文件 1751 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsController$2.class
文件 5021 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsController.class
文件 8982 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsDraw.class
文件 2149 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsMain.class
文件 5055 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsMenu.class
文件 3437 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsMenuController.class
文件 1205 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsPanel$1.class
文件 1396 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsPanel$2.class
文件 2406 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsPanel$3.class
文件 6251 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsPanel.class
文件 2657 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsPanelController.class
文件 2502 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsViewfr
文件 3088 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\AngryBirdsViewportTransform.class
文件 1137 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\FixtureQueryCallback.class
文件 395 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\GameButton.class
文件 568 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\QueueItem.class
文件 1221 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsApplication\QueueItemType.class
目录 0 2014-12-07 20:18 AngryBirds\AngryBirds\bin\AngryBirdsCharacters\
文件 2047 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsCharacters\AngryBirdsBodyInfo.class
文件 2316 2014-12-07 20:15 AngryBirds\AngryBirds\bin\AngryBirdsCharacters\AngryBirdsCharacter.class
............此处省略97个文件信息
- 上一篇:jxls2.4.2 依赖jar包
- 下一篇:SMPP网关模拟器系统
相关资源
- Android应用商店设计
- 自己动手写Java虚拟机.pdf
- 吉林大学javaee上机所需软件及文档说
- java简历模板打包
- 一款基于RETE算法的纯Java规则引擎
- java+数据库的订餐管理系统
- JavaWeb最新最详细思维导图.xmind
- javaGUI界面的多功能日历日历、记事本
- aspose cells for java 8.9.2 最新完美破解版
- java利用openoffice把wordexeclppt转成图片,
- 前后端分离的Java快速开发平台之轻量
- eclipse.BytecodeOutline插件
- 一个java web项目_医院信息管理系统h
- java 简单微博系统
- Zelix Klassmaster Java混淆器 破解版 12.0
- 利用JFreeChart实现Java中饼状图、柱状图
- javaFX实现的图书馆后台管理系统,有
- 北邮java课件
- 物流管理系统 java+mysql 毕业设计
- JAVA 调用twain
- Protobuf-3.3生成器PB和java资源.zip
- 排岗小软件
- java创建excel文件所需的jar包(jxl.jar
- jar包混淆工具ProGuard 5.3
- 客户管理系统JAVA
- java3d-1_5_1-windows-amd64.exe2
- 毕业设计 javaweb超市综合管理信息系统
- java博物馆内容管理系统毕业设计程序
- 基于物联网的智能花盆项目
- Algorithms in Java第三版
评论
共有 条评论