Cocos2D iOS之旅:如何写一个敲地鼠游戏(七):d出地鼠

Cocos2D iOS之旅:如何写一个敲地鼠游戏(七):d出地鼠,第1张

概述大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途。同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该翻译稿之人无任何关系。谢谢合作! d出地鼠 现在我们已经确认地鼠被放置在正确的位置上了,让我们添加它们d出洞

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;)

免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途。同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该翻译稿之人无任何关系。谢谢合作!

d出地鼠

现在我们已经确认地鼠被放置在正确的位置上了,让我们添加它们d出洞的代码吧.

首先,将原来999的z序改回0,使地鼠呆在地底下.

然后添加如下代码到init方法的底部:

[self schedule:@selector(tryPopMoles:) interval:0.5];

如果你之前从未见过,你可以在节点运行调度方法告诉Cocos2D每隔几秒去调用其他方法,在这个例子中,我想要让地鼠们每隔1/2秒d出洞去.

接下来添加tryPopMoles方法:

- (voID)tryPopMoles:(ccTime)dt {    for (CCSprite *mole in moles) {                    if (arc4random() % 3 == 0) {            if (mole.numberOfRunningActions == 0) {                [self popMole:mole];            }        }    }     }

该方法每隔1/2秒被调用一次,每一次将遍历所有地鼠,让它们有1/3的机会去d出洞穴.但是只有当它们并不在移动的时候才这样做 — 一个简单的检查的方法是看它当前运行的action数是否为0.

最终.增加popMole方法的实现代码:

- (voID) popMole:(CCSprite *)mole {              CCMoveBy *moveUp = [CCMoveBy actionWithDuration:0.2 position:ccp(0,mole.contentSize.height)]; // 1    CCEaseInOut *easeMoveUp = [CCEaseInOut actionWithAction:moveUp rate:3.0]; // 2    CCAction *easeMoveDown = [easeMoveUp reverse]; // 3    CCDelayTime *delay = [CCDelayTime actionWithDuration:0.5]; // 4    [mole runAction:[CCSequence actions:easeMoveUp,delay,easeMoveDown,nil]]; // 5}

这段代码使用Cocos2D actions使得地鼠d出它的洞穴.暂停半秒钟,然后缩回去.让我们一段一段的解释一下:

创建将地鼠移出Y轴一定高度的动作,因为地鼠在洞中,我们将看到d出的地鼠. 为了使移动看起来更自然.它包含了一个CCEaseInOut动作.它将带来地鼠在开始和结尾时变慢的效果,就好像自然界中加速和减速动作的地鼠 为了创建地鼠缩回的动作,我们只需要简单反转d出动作即可,我们会得到一个相反的动作(只有某些动作才可以自动生成其相反动作.猫猪注). 创建地鼠探头暂停0.5秒的效果 现在动作都蠢蠢欲动了,我们将在一个序列中运行它们:向上移动,延时并且最终向下移动.注意要用nil来结束该序列.

That’s it!编译运行代码,你将看到地鼠愉快的钻出它们的洞穴!

接下来干神马?

这里是迄今为止所有的项目代码: sample project

接下来,我们将添加一些有趣的动画:地鼠发笑和被K的时候,增加游戏逻辑,这样你可以在每次敲地鼠时得到一些分数,并且还有一些声音效果.

下篇见 ;)

总结

以上是内存溢出为你收集整理的Cocos2D iOS之旅:如何写一个敲地鼠游戏(七):d出地鼠全部内容,希望文章能够帮你解决Cocos2D iOS之旅:如何写一个敲地鼠游戏(七):d出地鼠所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1075100.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存