Ich versuche, Komponenten aus einer Liste hinzuzufügen.(Unity) Verwendung von AddComponent mit einem generischen Typ
Hier ist eine sehr ähnliche Situation, außer er greift sie nicht aus einer Liste. Unity how can AddComponent<T>()?
Hier ist mein Code so weit, aber ich weiß wirklich nicht, wohin ich davon gehen soll. Es ist C# nebenbei, ich sehe einfach keine Option dafür, also tut es mir leid.
Es funktioniert, fügt eine Komponente ohne Fehler hinzu, aber die Komponente, die hinzugefügt wird, ist leer.
Edit: Ich habe vergessen, AddComponentToObject hinzuzufügen. Hier ist jetzt der vollständige Code.
public class LittleComponent : MonoBehaviour {
public List<UnityEngine.Object> specialScripts = new List<UnityEngine.Object>();
public Type GenericSpecialtyScript(int script)
{
return specialScripts[script].GetType();
}
public void AddComponentToObject(GameObject addToObject)
{
GenericSpecialtyScript(0);
addToObject.AddComponent<GenericSpecialtyScript>();
}
}
public class GenericSpecialtyScript : MonoBehaviour
{
}
Und hier ist, wie ich es teste. Es ist nur ein Editor-Skript.
public void TestButton()
{
if (GUILayout.Button("Test", GUILayout.Height(30)))
{
_LittleComponent.AddComponentToObject(_LittleComponent.gameObject);
}
}
Was passiert, wenn ich den Typ vorher nicht kenne? Ich erstelle ein Editor-Tool, und ich möchte nicht, dass die Leute codieren müssen. – LittleRain