“Corona Active Battle Scene in Composer” 翻译为“作曲家中的冠状活跃战斗场景”。
2014-4-16 2:58:43
收藏:0
阅读:64
评论:1
我目前正在开发一款卡牌战斗游戏。在主战斗场景中,我试图展示卡牌之间的激烈战斗,它们的生命值不断减少,并最终在场景中移动武器。
目前,当进入战斗循环时,显示会冻结,但我一直在记录正在发生的事情,战斗仍在进行中,只是在场景后面。我已将战斗循环分成了自己的函数,并通过轻敲事件调用该函数。
我通过while循环内的打印语句验证它是否运行,该语句将当前卡牌的名称和卡牌当前生命值打印到控制台上。当前卡牌的生命值在变化,但它没有改变场景,而是在旧场景上冻结,没有实时显示正在发生的事情。
这是整个场景的代码:
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
问题在于你的战斗场景函数是在循环并修改场景,然而场景引擎仅在事件处理调用 之间 更新场景。也就是说,如果调用了你的tap函数并且你进行了修改,你只有在tap函数返回并且场景引擎处理了新的场景状态后,才会看到修改。
因此,不要像这样做:
function battleScene(args) while condition do do stuff end end而应该这样做:
function battleScene(args) if condition then do stuff timer.performWithDelay(2, function() battleScene(args) end) end end当条件为真时,执行“do stuff”,并为以后调用
battleScene调度一个调用。battleScene将立即返回,使显示引擎有机会更新GUI,然后2毫秒后,将再次调用battleScene,直到最终条件为假且不再调用。请注意,我必须创建一个临时匿名函数,因为battleScene带有参数,而performWithDelay不会将任何参数传递给调度的函数,但可以通过匿名函数隐式地给予上值。需要明确的是,如果battleScene没有带参数,你可以这样做:function battleScene() if condition then do stuff timer.performWithDelay(2, battleScene) end end