微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 在拖放游戏中匹配对象

我正在开发一个教育游戏,我给用户一些选择的单词.目标是通过单独拖动每个单词并将其按顺序放置在提供的区域上,将这些单词排列成句子.我有一个飞机准备好拖动每个单词,但我不确定如何确定用户是否已将他们的单词拖到句子中的正确位置.

我想也许我可以为每个单词提供一个ID /标签,并为每个平面提供相关的ID /标签.当两个碰撞时,我可以比较两个ID,如果它们匹配,则认为它是成功的放置.

我想知道是否有其他人有更好的解决方案,因为我不确定最好的解决方法

解决方法

你的想法很好,我不明白为什么不.根据你如何实现这个,如果你有很多单词,你可以做很多工作,对吧?

我建议你这样做:制作一个由2个碰撞器(及其各自的游戏对象)和一个脚本组成的预制件.一个对应的单词和一个正确位置的colider.脚本将从某处读取(资源xml,编辑器中的字段等)并应用单词的初始位置和“正确位置”对撞机的位置.此脚本还将读取其他信息(如实际单词)并进行这些对象的所有配置.

这样您就可以轻松地将“单词预制件”拖动到场景中并单独配置它们.

此外,您可以在场景中使用外部脚本来表示“级别”(如果该概念适用于您的游戏……),而不是拖动此预制件.这里的想法是这个脚本可以在运行时加载该“级别”的预制件.它甚至可以传递预制脚本的所有数据来配置对象,就像我之前说过的那样.

我忘了说最重要的区别:在这方法中你不必担心ID.它们属于同一个GameObject父级,因此您可以轻松地在脚本中检索所需的对象.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐