首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何延迟我的AI移动

如何延迟我的AI移动
EN

Stack Overflow用户
提问于 2010-04-30 15:23:54
回答 2查看 500关注 0票数 0

我在玩象棋之类的游戏。一旦我的玩家移动完成(如果他开始从一个地方移动到另一个地方),我的AI移动就开始了(在我的玩家到达他的目的地之前)。有时我发现现在移动哪枚AI硬币很困难。如何延缓它。

EN

回答 2

Stack Overflow用户

发布于 2010-04-30 15:30:56

如果你的玩家移动受到核心动画的限制,你可以将setAnimationDidStopSelector设置为自定义的停止功能,并在那里启动你的AI。

如果你有一个带有状态的游戏循环,只需添加足够的状态(例如user_move_beganuser_move_endedai_think_beganai_think_endedai_move_began ..)对流程进行排序。

票数 0
EN

Stack Overflow用户

发布于 2010-05-06 04:12:13

我想我现在明白你在说什么了。

你需要做一个CCSequence,最后在CCCallFunc中调用你的AI函数:

代码语言:javascript
复制
CCSequence *playerMove = [CCSequence actions: 
                          [CCMoveTo actionWithDuration: 0.4f position: CGPointMake(10,10)],
                          [CCCallFunc actionWithTarget: self selector: @selector(doAIstuff)],
                          nil];

[playerSprite runAction: playerMove];

你需要让你的AI是一个可调用的函数(即doAIstuff)。令人困惑的是,您说代码在draw()中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2742916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档