小蜜蜂java小游戏_小游戏-打小蜜蜂
打小蜜蜂游戏
采用单体模式,单体就是把一批相关的属性和方法组织在一起的对象。
特点:
可以以用来划分命名空间,清除全局变量带来的危险。
可以把代码组织的更为一体,便于阅读和维护。
需要注意的点:
1、由于采用单体模式,每个方法的对象都是私有的,别的方法想调用的时候需要将其变为此对象里的全局对象
this.oUl = oUl;
2、this在碰到事件的时候this就不在指向该对象,需要更改this指向
var This=this;
游戏中几个点的解决办法
1、小蜜蜂的布局
不能采用float方式,因为当小蜜蜂移动或者消失的时候,剩下的布局方式会乱掉,所以采用绝对定位的布局,但是一开始不知该如何设置每个小蜜蜂的定位,可以先采用float方式,然后设置一个数组存下当前的left和top值,然后在设置成定位的方式。
var arr=[];
for (var i = 0; i < this.aLi.length; i++) {
arr.push([this.aLi[i].offsetLeft, this.aLi[i].offsetTop]);
}
for (var i = 0; i < this.aLi.length; i++) {
$(this.aLi[i]).css({
'position': 'absolute',
'left': arr[i][0],
'top': arr[i][1],
});
}
2、单兵作战时x和y的速度
可以根据offsetleft和offsettop算出a和b,勾股定理算出c,给出斜边移动速度10就可以算出小蜜蜂的速度x和y。
image.png
var This=this;
var nowLi=this.aLi[Math.floor(Math.random()*This.aLi.length)];//随机生成一个li
setInterval(function(){
var a=This.oA.offset().left-$(nowLi).offset().left;
var b=This.oA.offset().top-$(nowLi).offset().top;
var c=Math.sqrt(a*a+b*b);
var iSX=$(nowLi).data('speed') *a/c;
var iSY=$(nowLi).data('speed') *b/c;
//console.log(gk.eMap[rand].speed);
$(nowLi).css({
'left':$(nowLi).offset().left+iSX+'px',
'top':$(nowLi).offset().top+iSY+'px',
});
},30);
3、 碰撞检测:
子弹打小蜜蜂时主要是做碰撞检测,碰撞检测的思路是两个物体的前后左右都检测,比较L1,R1,T1,B1,L2,R2,T2,B2,
image.png
pz: function(obj1, obj2) { //碰撞检测
var L1 = obj1.offset().left;
var R1 = obj1.offset().left + obj1.width();
var T1 = obj1.offset().top;
var B1 = obj1.offset().top + obj1.height();
var L2 = obj2.offset().left;
var R2 = obj2.offset().left + obj2.width();
var T2 = obj2.offset().top;
var B2 = obj2.offset().top + obj2.height();
if (R1 < L2 || L1 > R2 || B1 < T2 || T1 > B2) { //未碰着
return false;
} else {
return true;
}
}
小蜜蜂java小游戏_小游戏-打小蜜蜂相关推荐
- 微信小程序_小程序开发框架
微信小程序_小程序开发框架 微信小程序框架 微信小程序小程序开发框架的目标是通过尽可能简单.高效的方式让开发者可以在微信中开发具有原生APP体验的服务. 框架提供了自己的视图层描述语言WXML和WXS ...
- java祖玛_Canvas小练习_祖玛游戏01
这几天学习了一个祖玛游戏的小Demo,记录下这个小游戏的编写过程. 1:首先实现的一个简单界面效果. 2:在图形绘制完成后,让黑色小球沿着圆形弧线运动. 编码过程 创建画布,绘制圆形弧线. 首先在Ht ...
- 反编译小程序_小程序/小游戏 反编译教程
使用的反编译脚本叫做wxappUnpacker 开搞吧,我们通过电脑上的安卓模拟器来获取,我这里使用的是夜神模拟器,启动后安装微信,RE管理器,QQ(用来传输文件) 登陆微信后,在下拉框中找到我们要获 ...
- 天刀 服务器状态,天刀实用技巧_天刀各种游戏小技巧_玩游戏网
一:御风神行无CD小技巧 这个小技巧,是玩家们游戏方便的一大助力,毕竟它方便了几乎所有天刀玩家,在游戏中给玩家们创造了极大便利.就是当玩家角色走到地图的边缘空气墙处,自动蹦出来地图,点击传送点,可以无 ...
- pygame游戏_小蝌蚪吃蚊子幼虫成长
网上有许多小蝌蚪的游戏.其中有一游戏,小蝌蚪开始很小,其四处游动吃蚊虫(蚊子幼虫),吃一个蚊虫后其身体长大一点,长大到某尺寸变为青蛙.本例实现其部分功能.游戏有3个角色:小蝌蚪.蚊虫和背景角色.小蝌蚪 ...
- c语言传球游戏,传球游戏_小荷才露尖尖角19792014_新浪博客
传球游戏 邓丞希 东方小学三年级 今天下午,我在赏识作文班上玩了一个有趣的传球游戏. 老师把我们分成两个组,每组三双筷子和一个乒乓球. 游戏开始了.首先,我们组的第一个同学用筷子夹起了乒乓球,准备传给 ...
- 手机海豚模拟器怎么添加游戏_小忍计划模拟器手机版游戏下载-小忍计划模拟器手机版游戏v0.1.9.3...
小忍计划模拟器手机版是一款非常好玩的3D恋爱模拟游戏,在这里玩家将拥有第一视角,游戏中你将有一个叫做小忍的虚拟女友,玩家可以通过克重任务来解锁服饰装扮她,还能够带她去人任何地方,你的任务就是让小忍高兴 ...
- unity第三人称射击游戏_在游戏上第3部分完美的信息游戏
unity第三人称射击游戏 Previous article 上一篇文章 The economics literature distinguishes the quality of a game's ...
- python小猿_小猿圈python简介和发展前景?
只要朝着一个方向努力,一切都会变得得心应手.-----勃朗宁 小猿圈python简介: Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读 ...
- rust腐蚀怎么单人游戏_腐蚀游戏怎么提高帧数 Rust设置隐藏画质提高FPS教程
腐蚀游戏怎么提高帧数 Rust设置隐藏画质提高FPS教程 2018-03-04 10:58:10来源:游戏下载编辑:云曼衍评论(0) <腐蚀(Rust)>已经正式上市发售了,因为游戏的配置 ...
最新文章
- 1282. Game Tree
- 下一代 Service Mesh -- istio 架构分析
- linux c 获取文件行数
- python常用模块大全总结-Python 常用模块大全(整理)
- Java8学习系列之匿名函数Lambda
- AVA 8 :从永久区(PermGen)到元空间(Metaspace)
- OpenCV图像列表创建者imagelist creator的实例(附完整代码)
- 自然语言处理综述(一)
- 中石油训练赛 - High Load Database(二分+记忆化)
- pjsua帮助手册(中文)
- CGI-plus_x86_x64_自适应版系统安装和备份工具参数案例笔记
- 2022届秋招的总结与体会
- lpt监控安装_LPT说明书
- 常用的4款seed磁链搜索工具
- 心语收集9:如何强大,你仍然是我的弱点。
- 利用Windows11安卓子系统对APP进行渗透测试
- element-ui 阻止冒泡事件
- 我的职业思路:做建模,为什么,不学C4D
- Javascript 将阿拉伯数字转换成罗马数字
- Vue+SpringBoot图书管理系统前后端分离(教你一步一步搭建)
热门文章
- 翻译: AWS DeepRacer一步一步详细步骤的自定义航点更快地运行 自定义waypoints
- HarmonyOS电脑系统,HarmonyOS
- 七夕节,我用代码制作了表白信封
- 战斗在 VUCA 时代
- 【NLP】句法分析一
- 游戏挂机还开着电脑?那就真的out了!
- could not initialize proxy - the owning Session was closed解决
- 论文阅读 Optimal Rough Terrain Trajectory Generation for Wheeled Mobile Robots
- 科研第二步:远程在服务器上跑程序jupyter使用
- Java实验1:个人银行账户管理系统总结