Пример #1
0
        ////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        public void Awake()
        {
            if (NavDelegateProvider == null)
            {
                throw new Exception("HovercastSetup.NavDelegateProvider must be set.");
            }

            if (SettingsProvider == null)
            {
                throw new Exception("HovercastSetup.SettingsProvider must be set.");
            }

            if (InputProvider == null)
            {
                throw new Exception("HovercastSetup.InputProvider must be set.");
            }

            if (OptionalCameraReference == null)
            {
                OptionalCameraReference = gameObject.transform;
            }

            vNavProv = new NavProvider();
            vNavProv.Init(NavDelegateProvider.GetNavDelegate());

            vMenuState = new MenuState(InputProvider, vNavProv,
                                       SettingsProvider.GetInteractionSettings());

            ////

            var menuObj = new GameObject("Menu");

            menuObj.transform.SetParent(gameObject.transform, false);
            vUiMenu = menuObj.AddComponent <UiMenu>();
            vUiMenu.Build(vMenuState, SettingsProvider);

            var cursorObj = new GameObject("Cursor");

            cursorObj.transform.SetParent(gameObject.transform, false);
            vUiCursor = cursorObj.AddComponent <UiCursor>();
            vUiCursor.Build(vMenuState.Arc, vMenuState.Cursor,
                            SettingsProvider, OptionalCameraReference);
        }