“Un namespace non può contenere direttamente membri come campi o metodi” in Net.Reflector

Sto cercando di utilizzare questo codice per NET.reflector. Usando Reflexil, sto cercando di sostituire il codice con questo,

if(Input.GetKeyDown(KeyCode.Keypad5)) { int i = 0; Character localPlayer = PlayerClient.GetLocalPlayer().controllable.GetComponent(); foreach (UnityEngine.Object obj2 in UnityEngine.Object.FindObjectsOfType(typeof(LootableObject))) { if (obj2 != null) { i++; LootableObject loot = (LootableObject) obj2; Debug.Log("Loot "+i+": "+loot.transform.position.ToString()); CCMotor ccmotor = localPlayer.ccmotor; if(ccmotor != null && tpPos1 != Vector3.zero) { ccmotor.Teleport(loot.transform.position); Notice.Popup("", "Teleported to "+loot.name, 1.5f); } break; } } 

}

Ma mi dà un errore quando provo a compilare:

 Line: 1 Column: 1 Error Number: CS0116 Error Message: "A namespace does not directly contain members such as fields or methods" 

Questo è il codice Unity, penso. Non sono così esperto. Qualcuno potrebbe risolvere questo per me? O dimmi cosa devo fare? Grazie.

Lo snippet che stai mostrando non sembra essere direttamente responsabile dell’errore.

Ecco come puoi CAUSA l’errore:

 namespace MyNameSpace { int i; <-- THIS NEEDS TO BE INSIDE THE CLASS class MyClass { ... } } 

Se non si vede immediatamente ciò che è "fuori" dalla class, ciò potrebbe essere dovuto a parentesi o parentesi di chiusura fuori posto errate } .