あまり詳しくないのでそもそも問題があるコードなのかもしれませんが、
こんな感じのコードを書くとクラス内から一部のメソッドにアクセスできなくなります。
enumのデフォルト引数がよろしくないようです。
// Unityでエラーとなるコード(Ver4.6.3f1で確認)
public enum EnumType {
Default,
TypeA,
}
public class Hoge<T> {
public void test() {
Found(); //!< OK
NotFound(); //!< error CS0103: The name 'NotFound' does not exist in the current context
}
public void Found() {
}
public void def(EnumType type = EnumType.Default) {
}
public void NotFound() {
}
}
public class Test {
public void test() {
var a = new Hoge<int>();
a.NotFound(); //!< 別クラスからならOK
}
}