我正在用Roblox Studio创建一个游戏,最近有人推荐给我使用MVC/MVCS架构(或至少是适应的版本)来组织我的代码库,方便添加新功能。对于大多数情况,这种方法工作得相当好。然而,我需要在游戏中创建各种武器/物品,这种方法似乎并不适用,或者至少我不知道如何让它适用。
第一个问题是,即使我创建了WeaponModel、WeaponController和WeaponView,仍然无法解决或解决不同武器的实际问题。然而,似乎解决方案是创建一个注册表/定义,然后使用WeaponModel.new(weapondata)。
下一个和主要的问题是,我有远程、近战、炸弹、治疗物品等。它们都有不同的行为。很可能会有一些重叠,如它们都需要播放声音、动画、VFX等,我假设这些都是视图的责任的一部分。然而,这些模型、视图、控制器之间的分支路径会变得非常混乱。因此,我很好奇在这种情况下我可以做什么。我考虑使用策略模式,但是我还不清楚如何让它工作。
评论 (0)