public static GameObject From(MochaInterface.GameObject b)  // explicit byte to digit conversion operator
    {
        if (b == null)
        {
            return(null);
        }
        GameObject d = new GameObject(b);  // explicit conversion

        return(d);
    }
    public List <T> GetScriptsInChildren <T>(MochaInterface.GameObject g) where T : MochaScript
    {
        List <T> ret = MochaScriptSystem.ScriptSubsystemManaged.getInstance().GetScriptsInChildren <T>(g);

        if (g == null)
        {
            Logger.Log("Could not find scripts " + typeof(T).Name + ", null object passed");
        }
        if (ret == null && g != null)
        {
            Logger.Log("Could not find scripts " + typeof(T).Name + " on object " + g.GetName());
        }
        return(ret);
    }
        private void AlignViewButton_Click(object sender, RoutedEventArgs e)
        {
            EngineManagerViewModel view = (this.DataContext as EngineManagerViewModel);

            e.Handled = true;
            if (view.SelectedGameObjects.Count == 0)
            {
                return;
            }
            EditorSubsystemManaged.getInstance().QueueAction(() =>
            {
                foreach (GameObject g in view.SelectedGameObjects)
                {
                    MochaInterface.GameObject ed_cam = EditorSubsystem.getInstance().EditorCamera().gameObject;
                    g.transform.SetPosition(ed_cam.transform.position + (Vector3)ed_cam.transform.GetForwardVector() * 5);
                }
            });
        }
 public GameObject(MochaInterface.GameObject g)
     : base(g.get_CPtr().Handle)
 {
 }