恐龙快跑(Flappy T-Rex)

2024-02-15 06:08
文章标签 flappy 恐龙 rex

本文主要是介绍恐龙快跑(Flappy T-Rex),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0、写在前面

相信大家都了解过Google的Flappy T-Rex。一次偶然的机会,我也有幸在断网的情况下玩了几局,感觉就是一句话—“不愧是Google的作品”。在这里就不多夸奖Google和他的Flappy T-Rex如何如何牛X了,不了解的读者还请自行百度。
由于那时候正在学Java和线程,觉得正好练下手,于是就有了这款山寨版的Dinosaur Run。当然使用Java写的,为了方便读者的学习,本人公开Dinosaur Run的源代码(很简单,但还是要拿出来丢人现眼)。求路过的大神高抬贵手,轻喷。叩首谢过。

1、运行界面

Google Flappy T-Rex
Flappy T-Rex
Dinosaur Run
Dinosaur Run
Google Flappy T-Rex
Flappy T-Rex
Dinosaur Run
Dinosaur Run

因为是山寨的,所有本人本着尽量不给“山寨”丢人的原则,一张一张的把恐龙的动作,地平线的变化,植物的种类,天上的云彩整合成图片,然后应用在这个小小的游戏里。
当然游戏体验还是差的一塌糊涂。感兴趣的大神不妨抽空调一下,使之更符合人类的直觉,提高游戏的可玩性。

2、操作逻辑

Google的产品一致是以简单为基础的,从Google的搜索主页就可以看出。增加用户的学习成本是一个非常不明智的选择。
Dinosaur Run和Flappy T-Rex在操作上一致的(因为本来就是山寨啊= =)。
回车键:开始/停止
上键:跳跃
下键:蹲
跳跃
蹲

注意:其实在Google的Flappy T-Rex里面,如果你能玩的后期的话,还会出现一种在天上飞的恐龙(目测是翼龙)。需要蹲在跑才能躲过去,但是,由于时间关系,我没有继续实现这个功能。

3、源码分析

项目的工程列表如下所示:
工程

  1. image 文件夹里面存放了各种图片,包括:恐龙的各种动作、地貌的变化、云朵等。
  2. sound 文件夹里面存放了各种音频资料,例如恐龙死亡时发出的超级玛丽死亡时的声音(请不要再鄙视我了,谢谢= =)
  3. AudioTest 用来播放音效的类
  4. BarrierThread 障碍物和背景运动的线程,包括仙人掌、地貌和云朵等
  5. CrashThread 碰撞检测线程,实时监测恐龙和障碍物是否重叠,即是否碰撞
  6. DinosaurRun 该游戏的主线程,除了start() 其他线程之外,还负责监听键盘事件
  7. DinosaurThread 恐龙运动的线程,主要包括分析恐龙的运动轨迹(跳跃时按照h = V0t-0.5gt^2)、刷新恐龙的位置(坐标)
  8. ScaleIcon 一个可以自动调节图片大小的类
  9. ScoreThread 统计玩家得分的线程

我之所以在这里写这个,是希望拿到我的源码的朋友能够快速了解我的思路,如果哪位大神觉得我写的太菜了,希望可以跟我联系,也可以在本文下边评论,我孙不服在这里谢过各位朋友了。

4、致谢

实在没什么好写的了,感谢Google吧!

这篇关于恐龙快跑(Flappy T-Rex)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/710601

相关文章

flappy bird js 源码

素材 注入灵魂 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#canvas{background-image:

Flappy bird小游戏

一、Ncurses库         (1):Ncurses向用户提供了一个灵活高效的应用程序接口(API),它提供了创建窗口界面,移动光标,产生颜色以及处理键盘按键等功能。通俗点来说,它就是一个管理应用程序在字符终端显示的函数库。         (2):安装Ncurses库的命令--> sudo apt-get install libncurses5-dev         (3):在本

强化学习玩flappy_bird

强化学习玩flappy_bird(代码解析) 游戏地址:https://flappybird.io/ 该游戏的规则是: 点击屏幕则小鸟立即获得向上速度。 不点击屏幕则小鸟受重力加速度影响逐渐掉落。 小鸟碰到地面会死亡,碰到水管会死亡。(碰到天花板不会死亡) 小鸟通过水管会得分。 具体的网络结构如图所示,网络架构是拿到游戏状态(每个样本维度是 80 * 80 * 4),然后卷积(输出

REX上线2天吸金13亿,会是下一个EOS红利吗?

作者:阿华 来源:白话区块链(ID:hellobtc) 5月1日,EOS REX成功上线,不到24小时,就有超过2000万的EOS参与其中。截止5月3日,REX资金池中已经有超过4455万EOS。 不到3天时间,“吸金”4455多万EOS。REX能否掀起一波热潮?是否会像当初的EOS RAM一样,被投机炒作?REX的上线,对EOS生态系统和对普通投资者分别具有什么意义呢? REX的介绍 去年

Linux--Flappy_bird实现

代码实现:   #include<stdio.h>#include<curses.h>#include<signal.h>#include<sys/time.h>#include<stdlib.h>#define BIRD '@'#define BLANK ' '#define PIPE '+'/**定义管道结构体**/typedef struct Pipe{int x;/

游戏:Flappy Bird[飞行的鸟](C++)1.2

前言: 最近快学习压力有点大,所以很少有时间来写游戏,游戏可能有BUG,还请多多包含!! 这次更新主要是针对一下几点: 1.加了O2优化,让游戏更流畅; 2.更改了计分规则,修复了分数累加的BUG; 3.设置难度选项(手残党狂喜)。 奉上代码: #include<iostream>#include<stdio.h>#include<ctime>#include<windows.

奔跑吧小恐龙(Java)

前言          Google浏览器内含了一个小彩蛋当没有网络连接时,浏览器会弹出一个小恐龙,当我们点击它时游戏就会开始进行,大家也可以玩一下试试,网址:恐龙快跑 - 霸王龙游戏. (ur1.fun)         今天我们也可以用Java来简单的实现一下这个小游戏。 一  系统功能结构图 二  系统业务流程图   三  程序目录结构

用握力器玩谷歌小恐龙游戏(三)

往期回顾 用握力器玩谷歌小恐龙游戏(一) 用握力器玩谷歌小恐龙游戏(二) GS-GAME-PC 前言 这次更新主要是,将原来的使用Wifi Mesh+串口接收+上位机的方法,改成了蓝牙直连电脑的方式,这种方式的一个好处是连接电脑特别方便,就和普通的蓝牙鼠标一样,而且双握力器也不用改动什么,设备连接到电脑,切换到不同的模式就行,缺点是虽然有现成的库,但还是遇到了不少坑,尤其是从键盘设备

《我的世界》携手《侏罗纪世界》,全新 DLC 开启恐龙冒险之旅

12 月 11 日消息,游戏开发商 Mojang 再度推出热门沙盒游戏《我的世界》的付费 DLC,此次联手对象为史上最卖座电影之一的《侏罗纪世界》系列,并以最近两部电影为蓝本。         Mojang 官方网站公布了“侏罗纪世界冒险(Jurassic World Adventures)”DLC 的详细内容,其主要取材于电影《侏罗纪世界 2:失落王国》和《侏罗纪世界 3》

侏罗纪2来袭,看3D电影和探险3D恐龙世界,你选哪个?_数字体验_新浪博客

带上3D 眼镜在影院看新上映的侏罗纪世界,感觉已经够惊心动魄了吧!? 可如果你有机会坐上这趟开往侏罗纪公园的列车,就会进入更加逼真的3D恐龙世界:血口喷张的恐龙近在眼前,有没有肾上腺素飙升,心跳加快……