protected override void CAwake()
{
//Get all the methods that monobehaviour can 'override'
var methods = GetMethods(
this,
new List<string>()
{
"Awake",
"Start",
"Update",
"LateUpdate",
},
new List<Type>()
{
typeof(Action),
typeof(Action),
typeof(Action),
typeof(Action),
});
_awake = methods[0] as Action;
_start = methods[1] as Action;
_update = methods[2] as Action;
_lateUpdate = methods[3] as Action;
if (_awake != null)
_awake();
}