summaryrefslogtreecommitdiff
path: root/Assets/ThirdParty/AdvancedInspector/Examples/CSharp/AIExample27_CreateDerived.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/ThirdParty/AdvancedInspector/Examples/CSharp/AIExample27_CreateDerived.cs')
-rw-r--r--Assets/ThirdParty/AdvancedInspector/Examples/CSharp/AIExample27_CreateDerived.cs19
1 files changed, 19 insertions, 0 deletions
diff --git a/Assets/ThirdParty/AdvancedInspector/Examples/CSharp/AIExample27_CreateDerived.cs b/Assets/ThirdParty/AdvancedInspector/Examples/CSharp/AIExample27_CreateDerived.cs
new file mode 100644
index 00000000..aab3742e
--- /dev/null
+++ b/Assets/ThirdParty/AdvancedInspector/Examples/CSharp/AIExample27_CreateDerived.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEngine;
+using System.Collections;
+
+using AdvancedInspector;
+
+[AdvancedInspector]
+public class AIExample27_CreateDerived : MonoBehaviour
+{
+ // Usually in Unity, polymorphism is a rather annoying issue.
+ // If you don't know what polymorphism is; http://en.wikipedia.org/wiki/Polymorphism_%28computer_science%29
+ // Read up about it, it's VERY important!
+ // To fix the issue Unity has with polymorphism, you can use the CreateDerived attribute with a base type that derive from ComponentMonoBehaviour;
+ // This allows you to create instances directly from that field.
+ [Inspect, CreateDerived]
+ public AIExample_BaseClass[] myField;
+}