存在的方法没有方法异常
No Method Exception on a method that exists
我试图在数组中定位一个变量,因为它最初是从数组中获取的,但在 UnityScript 中,这并不像我希望的那样简单。
这是我查找索引的代码:
function nextArea() {
var tmp = Array.IndexOf(areas, currentArea);
tmp++;
currentArea = areas[tmp];
initNewArea();
}
然而,每当我在 Unity 中 运行 它时,我都会收到此错误:
MissingMethodException: UnityScript.Lang.Array.IndexOf
Boo.Lang.Runtime.DynamicDispatching.MethodDispatcherFactory.ProduceExtensionDispatcher ()
Boo.Lang.Runtime.DynamicDispatching.MethodDispatcherFactory.Create ()
Boo.Lang.Runtime.RuntimeServices.DoCreateMethodDispatcher(System.Object target, System.Type targetType, System.String name, System.Object[] args)
Boo.Lang.Runtime.RuntimeServices.CreateMethodDispatcher (System.Object target, System.String name, System.Object[] args)
如果你能修复它并拥有一个 github 帐户,我已经在这里打开了一个问题:GitHub
可能你想要这样:
var arr = new System.Collections.ArrayList ();
// Add elements
arr.Add ("Hello");
arr.Add("World");
Debug.Log(arr.IndexOf("World"));
您也可以尝试 System.Collections.Generic.List<T>
, it also contains IndexOf 功能。
我试图在数组中定位一个变量,因为它最初是从数组中获取的,但在 UnityScript 中,这并不像我希望的那样简单。
这是我查找索引的代码:
function nextArea() {
var tmp = Array.IndexOf(areas, currentArea);
tmp++;
currentArea = areas[tmp];
initNewArea();
}
然而,每当我在 Unity 中 运行 它时,我都会收到此错误:
MissingMethodException: UnityScript.Lang.Array.IndexOf
Boo.Lang.Runtime.DynamicDispatching.MethodDispatcherFactory.ProduceExtensionDispatcher ()
Boo.Lang.Runtime.DynamicDispatching.MethodDispatcherFactory.Create ()
Boo.Lang.Runtime.RuntimeServices.DoCreateMethodDispatcher(System.Object target, System.Type targetType, System.String name, System.Object[] args)
Boo.Lang.Runtime.RuntimeServices.CreateMethodDispatcher (System.Object target, System.String name, System.Object[] args)
如果你能修复它并拥有一个 github 帐户,我已经在这里打开了一个问题:GitHub
可能你想要这样:
var arr = new System.Collections.ArrayList ();
// Add elements
arr.Add ("Hello");
arr.Add("World");
Debug.Log(arr.IndexOf("World"));
您也可以尝试 System.Collections.Generic.List<T>
, it also contains IndexOf 功能。