吹逼控制不住了

This commit is contained in:
ice1000
2017-11-23 11:21:44 +08:00
parent 1a2e6eb622
commit e6e607ce2b
+13 -21
View File
@@ -1,18 +1,14 @@
import org.frice.Game;
import org.frice.anim.move.AccelerateMove;
import org.frice.anim.move.SimpleMove;
import org.frice.anim.move.*;
import org.frice.obj.SideEffect;
import org.frice.obj.sub.ShapeObject;
import org.frice.platform.adapter.JvmImage;
import org.frice.resource.graphics.ColorResource;
import org.frice.utils.data.FileUtils;
import org.frice.utils.message.FDialog;
import org.frice.utils.shape.FCircle;
import org.frice.utils.shape.FRectangle;
import org.frice.utils.shape.*;
import org.frice.utils.time.FTimer;
import java.util.Random;
import static org.frice.Initializer.launch;
public class Demo7 extends Game {
@@ -22,21 +18,19 @@ public class Demo7 extends Game {
private FTimer timer = new FTimer(3000);
private ShapeObject object;
private SideEffect gameOver;
private SideEffect gameOver = () -> {
new Thread(() -> FileUtils.image2File((JvmImage) getScreenCut().getImage(), "截屏.png")).start();
new FDialog(this).show("Game Over");
System.exit(0);
};
@Override
public void onInit() {
@Override public void onInit() {
setSize(500, 800);
setTitle("Flappy bird demo by ice1000");
object = new ShapeObject(ColorResource.宝强绿, new FCircle(20), 50, 200);
object.addAnim(AccelerateMove.getGravity());
object = new ShapeObject(ColorResource.宝强绿, new FCircle(20), 50, 200) {{
addAnim(AccelerateMove.getGravity());
}};
addObject(object);
gameOver = () -> {
new Thread(() -> FileUtils.image2File((JvmImage) getScreenCut().getImage(), "截屏.png")).start();
setPaused(true);
new FDialog(this).show("Game Over");
System.exit(0);
};
addKeyListener(null, e -> {
object.stopAnims();
object.addAnim(AccelerateMove.getGravity());
@@ -44,15 +38,13 @@ public class Demo7 extends Game {
}, null);
}
@Override
public void onRefresh() {
@Override public void onRefresh() {
if (object.getY() > getHeight() + 20) gameOver.invoke();
if (timer.ended()) addObject(getObj());
}
Random random = new Random(System.currentTimeMillis());
private ShapeObject[] getObj() {
int height = random.nextInt(400);
int height = (int) (Math.random() * 400);
return new ShapeObject[]{new ShapeObject(ColorResource.教主黄, new FRectangle(50, height), 550, 0) {{
addAnim(new SimpleMove(-150, 0));
addCollider(object, gameOver);