首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Defold中的集合代理获取输入?

如何从Defold中的集合代理获取输入?
EN

Stack Overflow用户
提问于 2015-09-23 14:40:39
回答 1查看 331关注 0票数 3

我已经加载了一个集合代理,但是我在代理内部的脚本上没有收到任何输入,即使我将输入焦点放在加载器对象上。我也没有收到加载器对象的输入。

这是加载代理的脚本:

代码语言:javascript
复制
function init(self)
    msg.post(".", "acquire_input_focus")
    msg.post("/game#level1", "load")
end

function on_message(self, message_id, message, sender)
    if message_id == hash("proxy_loaded") then
        msg.post(sender, "enable")
    end
end

这是代理中一个对象的脚本:

代码语言:javascript
复制
function init(self)
    msg.post(".", "acquire_input_focus")
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-28 09:01:55

这是一个很常见的陷阱。输入和代理的工作方式如下:每个代理加载的集合都有自己的输入堆栈。输入通过代理组件从主集合输入堆栈路由到集合中的对象。这意味着仅仅是加载集合中的游戏对象获取输入焦点是不够的,保存代理组件的游戏对象也需要获取输入焦点。有关细节,请参阅输入文件

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

https://stackoverflow.com/questions/32742612

复制
相关文章

相似问题

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