Unity返回0值

2022-01-30 15:00:47 标签 unity3d

我使用ScriptableSingleton来存储我的PlayerAbilities,如下图所示。

但在代码中,我得到的值是0。

例如,下面是ScriptableSingleton Created:

[CreateAssetMenu(fileName = "PlayerStatsFileName", menuName = "PlayerScriptableObject/PlayerAbilities")]
public class PlayerAbilities : ScriptableSingleton<PlayerAbilities>
{
    [Header("Abilities")] 
    [SerializeField] private int _movementSpeed;
    
    public float GetRunningSpeed()
    {
        return _movementSpeed;
    }
}

当调用代码时:

Debug.Log("PlayerAbilities :" + PlayerAbilities.instance.GetRunningSpeed());

这总是返回0,即使值如下所示。

所以我试图构建它,看看它是否由于编辑器,但在构建时,我们有这个错误:

即:

The type or namespace name 'ScriptableSingleton<>' could not be found (are you missing a using directive or an assembly reference?)

如何解决这个问题我遗漏了什么?

###ScriptableSingleton在UnityEditor命名空间中。我们需要创建继承自ScriptableObject的自己的实现。

阅读全文

▼ 版权说明

相关文章也很精彩
推荐内容
更多标签
相关热门
全站排行
随便看看

错说 cuoshuo.com —— 程序员的报错记录

部分内容根据CC版权协议转载;网站内容仅供参考,生产环境使用务必查阅官方文档

辽ICP备19011660号-5

×

扫码关注公众号:职场神器
发送: 1
获取永久解锁本站全部文章的验证码