资源简介
这是java版实现的愤怒的小鸟,仅供学习交流。
代码片段和文件信息
/*
* 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个文件信息
相关资源
- 用java实现的愤怒的小鸟,文字界面
- JAVA编写捕鱼达人源代码
- unity愤怒的小鸟
- Java小游戏鱼吃鱼,误闯太空,卡牌
- java 愤怒的小鸟(flybird)源码
- Java愤怒的小鸟控制台游戏不含数据库
- JAVA小游戏源码5个
- java小游戏适合初学者
- java小游戏《饲养宠物》源代码
- JAVA-连连看
- java编写的游戏(源码、注释)
- java小游戏
- 精典java游戏合集 欢迎大家
- Java小游戏贪吃蛇 完整
- java连连看游戏源代码
- java代码小游戏—飞扬的小鸟源码
- java小游戏推箱子(含界面)
- java小游戏 大炮打小鸟
- 射击小球键控java小游戏
- JAVA小游戏源代码 超级玛丽
- 五子棋java小游戏源代码
- 7个Java小游戏源代码
- java 坦克大战
- Java小游戏毕业设计论文
- java小游戏飞机大战 源代码以及素材
- JAVA小游戏,适合初学JAVA的新手
- java小游戏推箱子
- java swing躲避子弹小游戏是男人就撑过
- Java小游戏吃豆人
- JAVA-俄罗斯方块1.0
评论
共有 条评论