为什么愤怒的小鸟鼠标指针在开始游戏界面鼠标动的很慢?

瞄准开炮!PC版愤怒的小鸟火速袭来
《愤怒的小鸟》应该是2010年最成功的手机游戏之一,在苹果的App Store、Android Market 和 Ovi
商店里下载量都居于前列。Rovio公司本周开始正式发布PC版和上网本版《愤怒的小鸟》,支持基于Windows XP、Windows
7以及Moblin(mobile Linux)系统的笔记本、上网本及台式机。
游戏的玩法很简单,将弹弓上的小鸟弹出去,砸到绿色的肥猪,将肥猪全部砸到就能过关。小鸟的弹出角度和力度由你的鼠标来控制,要注意考虑好力度和角度的综合计算,这样才能更准确的砸到肥猪。而被弹出的小鸟会留下弹射轨迹,可供参考角度和力度的调整。
《愤怒的小鸟》PC版
在手机上面进行游戏,画面比较小,可能看起来并不是很舒畅。看到游戏运行在宽屏的电脑显示器上一定是一件赏心悦目的事情,如果不喜欢全屏模式游戏,只需要ALT+Enter即可切换成窗口模式,这样就会显得更酷了。
作为手机平台游戏移植到PC平台,Rovio设计师肯定是下足了功夫。进入主界面,非常漂亮的卡通画面呈现在眼前,看着躲在开始按钮后面的红色小鸟那犀利的眼神和肥猪害怕的眼神,很让人感受到欢快的游戏氛围。
PC版《愤怒的小鸟》关卡
PC版《愤怒的小鸟》开始界面
点击开始以后,我们就能进入关卡选择的界面了,PC版的游戏将包括195个关卡,而且玩家还可获取免费更新和额外的关卡,除此之外,免费将是PC版与手机版的最大区别。
大关卡选择界面
小关卡界面
开始游戏,玩家将用鼠标控制游戏画面中的一只白的手掌,鼠标左键按住不松手来进行弹弓的发射力度和角度的调整,调整完角度松开鼠标左键,红色的小鸟即可飞向那可爱的肥猪们。
游戏界面,小鸟们为了消灭肥猪真的是奋不顾身啊
在遇到部分比较特殊关卡的时候,不要忘记用特殊的方法来进行通关,否则,自己会很痛苦的。所谓的特殊关卡就是在本次关卡中出现淡蓝色的小鸟时,可以让在飞行路线的小鸟瞬间变成三只,去消灭阻挡肥猪的堡垒,只需要在淡蓝色的小鸟飞出去以后再单击一次鼠标左键即可。还有另外颜色的小鸟,颜色不同,攻击力与攻击方式就不同,但是开启特殊攻击的方式是一样的,只需要在飞出去以后点击鼠标左键即可。当然在进行游戏前,画面当真也会有提示,如果不仔细看下,嘿嘿。。。
变身,看我三个一起上
黄色的小鸟,破坏力很强
每一关都会有特殊的评分系统,根据当前游戏的得分,给出黄色星星的特殊评分,使用的小鸟数量越少,当前所得的分数越高,所获得星星就将越多。
成绩还行,得到了2颗星
如果小鸟都用完了,而小肥猪还没有全部消灭,那么恭喜你,重新在来一次吧。
失败,重新再来一次
相关报道:
新闻热线:010-
责任编辑:yiran
名企动态: |
但目前国内有实力超越“IOE”们的厂商委实不多……
本站特聘法律顾问:于国富律师
Copyright (C) 1997-相关游戏推荐
更多游戏推荐
点击开始游戏,选择章节,选择关卡,点击任意处,即可开始游戏
击败邪恶的猪
热门游戏《》的flash高清移植版。最大程度还原了《愤怒的小鸟》的风貌。1.2版加入了新的大嘴鸟和21个新关卡,总共68关。再度帮助小鸟们击败邪恶的猪,找回珍贵的鸟蛋吧!快来一起加入正义的行列吧!19208人阅读
愤怒的小鸟是一款人气火爆的益智游戏,现在我试着用lufylegend库件和Box2dWeb物理引擎来看看在html5中如何制作此类经典的物理游戏。准备工作一首先,你需要下载lufylegend库件1.4.1版box2dweb你可以到这里下载关于lufylegend库件的使用方法,大家可以看一下我以前的一些文章和教程,或者看下面的api说明。准备工作二由于笔者的失误,没有将Box2dWeb的功能封转完,要制作物理游戏的话,不得不对lufylegend-1.4.1做一些扩展,大家可以下载这个扩展文件,等下次库件的1.5版发布的时候会将这些扩展加进去的。做好了了上面的准备工作,现在就来跟着笔者来一步步的试一下吧。一,旋转飞起的小鸟首先来建一个小鸟function Bird(){
base(this,LSprite,[]);
var self =
var bitmap = new LBitmap(new LBitmapData(imglist[&bird1&]));
self.addChild(bitmap);
}有了这个类,我们把它显示到画面上就很简单了backLayer = new LSprite();
addChild(backLayer);
bird = new Bird();
bird.rotate = 0;
bird.x = 200;
bird.y = 430;
bird.yspeed = -5;
backLayer.addChild(bird);玩过愤怒的小鸟的朋友们都知道,游戏开始时,小鸟跳上弹弓的时候有一个旋转动作,我现在通过lufylegend库件的LTweenLite缓动类来实现这一功能。LTweenLite.to(bird,1,
rotate:-360,
onUpdate:function(){
bird.y += bird.
onComplete:function(){
ease:Sine.easeIn
);通过上面的代码可以看到,LTweenLite类不但可以改变一些LSprite对象的常用属性,其实可以改变任意自定义的属性,上面就是通过LTweenLite将yspeed由-5变到了,然后通过onUpdate来改变小鸟的y坐标。下面是测试连接二,弹出的小鸟接下来在小鸟弹起后的位置加上一个弹弓 bitmap = new LBitmap(new LBitmapData(imglist[&slingshot1&]));
bitmap.x = 215;
bitmap.y = 290;
backLayer.addChild(bitmap);
bird = new LSprite();
bird.name = &bird01&;
backLayer.addChild(bird);
bitmap = new LBitmap(new LBitmapData(imglist[&bird1&]));
bird.addChild(bitmap);
bitmap = new LBitmap(new LBitmapData(imglist[&slingshot2&]));
bitmap.x = 190;
bitmap.y = 290;
backLayer.addChild(bitmap);效果如图上面代码将弹弓的前后两个分叉加到了画面上。接着通过鼠标来拖拽小鸟,首先加入鼠标按下事件backLayer.addEventListener(LMouseEvent.MOUSE_DOWN,downStart);
startX = bird.x + bird.getWidth()*0.5;
startY = bird.y + bird.getHeight()*0.5;上面代码加上了鼠标事件,并记录下了小鸟中心的位置作为弹弓的中心位置。然后当鼠标按下的时候,判断下鼠标是否点击到了小鸟,然后移除鼠标按下事件,并加入鼠标移动事件和鼠标弹起事件。function downStart(event){
if(event.offsetX & bird.x && event.offsetX & bird.x + bird.getWidth() &&
event.offsetY & bird.y && event.offsetY & bird.y + bird.getHeight()){
backLayer.removeEventListener(LMouseEvent.MOUSE_DOWN,downStart);
backLayer.addEventListener(LMouseEvent.MOUSE_MOVE,downMove);
backLayer.addEventListener(LMouseEvent.MOUSE_UP,downOver);
}先来实现下鼠标移动时候的,让小鸟跟随鼠标unction downMove(event){
var r = Math.sqrt(Math.pow((startX - event.selfX),2)+Math.pow((startY - event.selfY),2));
if(r & 100)r = 100;
var angle = Math.atan2(event.selfY - startY,event.selfX - startX);
bird.x = Math.cos(angle) * r + startX - bird.getWidth()*0.5;
bird.y = Math.sin(angle) * r + startY - bird.getHeight()*0.5;
}解释下上面的代码,首先,计算鼠标位置和弹弓的中心位置之间的距离,当距离大于100的时候,使其等于100。接着计算鼠标拖拽的角度,然后通过这个角度来计算并设置小鸟的坐标。接着,看一下鼠标弹起后的功能,上面的代码里并没有用到box2dweb,我通过将小鸟变为box2d刚体,然后给小鸟加上一个力,来让小鸟弹飞出去。function downOver(event){
backLayer.removeEventListener(LMouseEvent.MOUSE_UP,downOver);
backLayer.removeEventListener(LMouseEvent.MOUSE_MOVE,downMove);
var startX2 = bird.x + bird.getWidth()*0.5;
var startY2 = bird.y + bird.getHeight()*0.5;
var r = Math.sqrt(Math.pow((startX - startX2),2)+Math.pow((startY - startY2),2));
var angle = Math.atan2(startY2 - startY,startX2 - startX);
bird.addBodyCircle(bird.getWidth()*0.5,bird.getHeight()*0.5,bird.getWidth()*0.5,1,.5,.4,.5);
var force = 7;
var vec = new LGlobal.box2d.b2Vec2(-force*r*Math.cos(angle),-force*r*Math.sin(angle));
bird.box2dBody.ApplyForce(vec, bird.box2dBody.GetWorldCenter());
}上面代码首先计算了一下小鸟的被拖拽的距离,以及被拖拽的角度。addBodyCircle给小鸟加入body,让其变为一个刚体。ApplyForce给刚体加上一个力。好了,点开下面链接进行测试,通过拖拽小鸟,将小鸟弹飞出去吧。下面给出本次教程的源码,当然,lufylegend库件和box2dweb需要自己下载配置一下本次就写到这里,在下一讲中会加入碰撞功能,并且让镜头时刻跟随小鸟,敬请期待。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:695674次
积分:9367
积分:9367
排名:第526名
原创:87篇
译文:27篇
评论:1972条
系统讲解HTML 5 Canvas的基础知识和高级技巧,深入剖析开源库件lufylegend的原理与使用以实例为向导,详细讲解射击游戏、物理游戏、网络游戏等各类游戏的开发思路和技巧
qq交流群:
qq交流群:
文章:27篇
阅读:25986
文章:20篇
阅读:130054
文章:48篇
阅读:426028
本游戏以三国为背景,本次更新为第一部黄巾之乱的后续剧情,续作了群雄讨伐董卓,界桥之战以及救援徐州等剧情。
本游戏以三国为背景,玩家在游戏中可以体验三国中的四个经典战役,虎牢关之战,官渡之战,赤壁之战,夷陵之战。
(5)(2)(16)(5)(1)(1)(4)(1)(2)(2)(1)(2)(1)(3)(4)(4)(5)(4)(2)(1)(1)(2)(3)(4)(5)(2)(2)(4)(1)(5)(9)(1)(1)(1)(1)(2)(1)(3)相关游戏推荐
更多游戏推荐
点play 点红色小鸟,选择关卡1 开始游戏。
切割愤怒的小鸟,将小鸟周围的建筑切碎,倒塌。使小鸟和小怪物破裂即可过关。
切割小游戏。不得不承认愤怒的小鸟火的一塌糊涂,游戏上的各种愤怒,各种小鸟。周边玩具也是备受喜爱。中秋节要到了愤怒的小鸟月饼也开始大热起来!这是一款类似于愤怒小鸟的切割小游戏。游戏中,鼠标点击画出切割线,将小鸟周围的建筑切碎,倒塌。使小鸟和小破裂即可,切割次数越少获得的星数越高。这个游戏中,我们的绿色小猪好像不知跑哪去了啊。哈哈,非常好玩的游戏,你还等什么呢?

我要回帖

更多关于 愤怒的小鸟鼠标指针 的文章

 

随机推荐