Nainstalovat Steam
přihlásit se
|
jazyk
简体中文 (Zjednodušená čínština)
繁體中文 (Tradiční čínština)
日本語 (Japonština)
한국어 (Korejština)
ไทย (Thajština)
български (Bulharština)
Dansk (Dánština)
Deutsch (Němčina)
English (Angličtina)
Español-España (Evropská španělština)
Español-Latinoamérica (Latin. španělština)
Ελληνικά (Řečtina)
Français (Francouzština)
Italiano (Italština)
Bahasa Indonesia (Indonéština)
Magyar (Maďarština)
Nederlands (Nizozemština)
Norsk (Norština)
Polski (Polština)
Português (Evropská portugalština)
Português-Brasil (Brazilská portugalština)
Română (Rumunština)
Русский (Ruština)
Suomi (Finština)
Svenska (Švédština)
Türkçe (Turečtina)
Tiếng Việt (Vietnamština)
Українська (Ukrajinština)
Nahlásit problém s překladem









这个问题其实很久以前就有了,但因为没什么实际影响之前我就没管
试着修了一下,希望没有修出新的bug(
打开任何一个mod的GUI时都会这样:
ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
```
//导致此错误的事件顺序 (最后的事件在最上方):
System.Collections.Generic.List`1[T].get_Item
UIInventory.get_owner
LayerInventory.OnDestroy
UnityEngine.Object:DestroyImmediate
ClassExtension:DestroyChildren
ModConfigGUI.UI.UIHelper:ReplaceComponents
ModConfigGUI.UI.UIHelper:AddLayer
ModConfigGUI.Patches.<>c__DisplayClass6_0:<OnInit_OnInstantiate_Postfix>b__1
UnityEngine.Events.UnityEvent:Invoke
UIButton:_OnPress
UIButton:<OnPointerDown>b__68_1
<_WaitForEndOfFrame>d__22:MoveNext
UnityEngine.SetupCoroutine:InvokeMoveNext
```
this是BaseUnityPluging派生类
另一个可行的方法就是检查是否有这个mod,然后通过反射调用你的函数, 但我觉得这个更麻烦。
不过引用也行吧,单独建个文件隔离一下,先检测是否有ModConfigGUI,有的话再调用那个文件里的方法,就不必须作为前置了
(这个操作在dnspy上好不好做我就不知道了
哦,你的是用反射改BaseUnityPlugin.Config吗
如果是的话,那确实有点烦人了...