端午过后,也能“赛龙舟”
我正在参加「初夏创意投稿大赛」详情请看:初夏创意投稿大赛
前言
App介绍
赛龙舟游戏主界面,通过轻点手机屏幕开始倒计时,倒计时结束开始游戏,左侧为系统角色,右侧为玩家角色,通过一直快速点击屏幕,进行比赛。
点击右上角弹出选项菜单,有重玩,抽奖界面,继续游戏 比赛进行中界面,玩家通过一直快速点击屏幕来进行游戏。 抽奖界面,抽奖功能来自[Android-LuckyMonkeyPanel],感谢大佬(http://github.com/jeanboydev/Android-LuckyMonkeyPanel),点击抽奖可以获得粽卡 粽卡收集界面,在这里可以看到所有的粽卡信息 继续游戏界面,在返回回来后,会根据用户之前的行为,来判断是不是需要对用户进行继续游戏弹窗的展示 抽奖完成,在抽奖完成后,会增加用户的粽卡,并提示用户去粽卡收集界面查看
粽卡收集界面,在这个界面可以看到目前成功获取到的粽卡是多少
实现原理
赛龙舟实现
通过点击手机屏幕进行操作玩家角色,通过手指的快速点击进行加速,如果手指点击间隔小于100ms,会对玩家进行持续加速。如果大于,则代表玩家累了,回到初始速度。
override fun onTouchEvent(event: MotionEvent?): Boolean {
if (event?.actionMasked == MotionEvent.ACTION_DOWN) {
start()
if (userCircleY >= 0f) {
calculateSpeed()
} else {
if (mCircleY > 0) {
tipText = "玩家赢了"
mTipDialog.show()
reset()
}
}
}
return super.onTouchEvent(event)
}
private fun calculateSpeed() {
if ((System.currentTimeMillis() - lastTime) < 100) {
value += 1
} else
value = 20
userCircleY -= value
}
粽卡收集
通过赛龙舟可以获取到一定数量的积分,积分可以用来抽奖界面的抽奖,抽奖可以收集到不同风格样式的粽卡,(因本人不用ps,所以这里的图片都来自百度,有水印以及背景色不一致的问题)
源码
源码公开在了GitHub,欢迎大家下载 赛龙舟
总结
对于小游戏,一直是我比较陌生的领域,本次完成的赛龙舟小游戏,其实实现的方式很简单,作者没有做游戏的经验,通过多年来做手机App的经验来完成的该项目,还有很多的优化功能,比如游戏主界面的系统设置难度,还有抽奖界面的优化,加动画效果,粽卡的预览界面,粽卡的介绍,加入一些比如风俗的介绍。等等,这些在后续会继续完善,有感兴趣的大牛,欢迎提出自己的建议,我会虚心接受