コード例 #1
0
ファイル: Lucky7.cs プロジェクト: harsh-priyadarshi/Lucky7
        public override void ExecuteMenuCommand(MenuClickArgs args)
        {
            if (args == null)
            {
                return;
            }
            base.ExecuteMenuCommand(args);
            switch (args.Command)
            {
            case "back":
                m_globalUI.CloseLastScreen();
                break;

            case "settings":
                break;

            case "help":
                m_globalUI.Popup(new PopupInfo
                {
                    Content = Lucky7Help,
                    Title   = "LUCKY 7",
                    Preview = null,
                    Blocked = true
                });
                break;

            default:
                break;
            }
        }
コード例 #2
0
ファイル: Gameplay.cs プロジェクト: harsh-priyadarshi/Lucky7
 public override void ExecuteMenuCommand(MenuClickArgs args)
 {
     base.ExecuteMenuCommand(args);
     if (args.CommandType == MenuCommandType.VO)
     {
         OpenResourceWindow(m_voiceOvers, "SELECT VOICEOVER");
     }
 }
コード例 #3
0
 public override void UpdateResourceSelection(MenuClickArgs args)
 {
     base.UpdateResourceSelection(args);
     if (args.Data != null && args.Data is GameSource)
     {
         GameSource resource = (GameSource)args.Data;
         if (Enum.TryParse(args.Name.ToUpper(), out Playground type))
         {
             m_menuSelection.Playground = type;
         }
     }
 }
コード例 #4
0
 public override void UpdateResourceSelection(MenuClickArgs args)
 {
     base.UpdateResourceSelection(args);
     if (args.Data != null && args.Data is ExperienceResource)
     {
         ExperienceResource resource = (ExperienceResource)args.Data;
         if (Enum.TryParse(args.Name.ToUpper(), out ExperienceType type))
         {
             Selection.ExperienceType = type;
         }
     }
 }
コード例 #5
0
ファイル: Gameplay.cs プロジェクト: harsh-priyadarshi/Lucky7
        /// <summary>
        /// Gameplay resource selection happens here.
        /// </summary>
        /// <param name="args"></param>
        public override void UpdateResourceSelection(MenuClickArgs args)
        {
            base.UpdateResourceSelection(args);
            if (args.Data != null && args.Data is GameSource)
            {
                GameSource resource = (GameSource)args.Data;

                if (resource.ResourceType == ResourceType.AUDIO)
                {
                    m_menuSelection.VoiceOver = Array.Find(m_voiceOvers, item => item.Clip == ((AudioResource)resource).Clip).Clip;
                }
            }
            ToggleMenu();

            //Apply selection to gameplay.
            //Selection can be accessed from m_menuSelection object.
        }
コード例 #6
0
 public void UpdateResourceSelection(MenuClickArgs args)
 {
     //Debug.LogError("UpdateResourceSelection");
     if (args.Data != null && args.Data is ColorGroup)
     {
         var experience = GetExperience(Selection.ExperienceType);
         experience.UpdateResourceSelection(args);
     }
     else
     {
         if (args.Data != null && ((ExperienceResource)args.Data).ResourceType == ResourceType.EXPERIENCE)
         {
             m_home.UpdateResourceSelection(args);
         }
         else
         {
             var experience = GetExperience(Selection.ExperienceType);
             experience.UpdateResourceSelection(args);
         }
     }
 }
コード例 #7
0
ファイル: Gameplay.cs プロジェクト: fordi-slot/RLCMatch
        /// <summary>
        /// Gameplay resource selection happens here.
        /// </summary>
        /// <param name="args"></param>
        public override void UpdateResourceSelection(MenuClickArgs args)
        {
            base.UpdateResourceSelection(args);
            if (args.Data != null && args.Data is ExperienceResource)
            {
                ExperienceResource resource = (ExperienceResource)args.Data;

                if (resource.ResourceType == ResourceType.AUDIO)
                {
                    Selection.VoiceOver = ((AudioResource)resource).Clip;

                    AudioArgs voArgs = new AudioArgs(Selection.VoiceOver, AudioType.VO);
                    voArgs.FadeTime = 2;
                    m_audio.Play(voArgs);
                    AudioSelectionFlag = true;
                }
            }

            //Apply selection to gameplay.
            //Selection can be accessed from Selection object.
        }
コード例 #8
0
ファイル: OvrPlayerSync.cs プロジェクト: fordi-slot/RLCMatch
        private void OnContextItemClick(MenuClickArgs arg0)
        {
            var    targetPlayerId = (int)arg0.Data;
            var    targetPlayer   = Array.Find(PhotonNetwork.PlayerList, item => item.ActorNumber == targetPlayerId);
            object userId         = null;

            if (targetPlayer != null)
            {
                var customProperties = targetPlayer.CustomProperties;
                if (customProperties != null)
                {
                    customProperties.TryGetValue(Network.UserIdKey, out userId);
                }
            }

            if (arg0.CommandType == MenuCommandType.SEND_FRIEND_REQUEST)
            {
                m_webInterface.SendFriendRequest((string)userId, (error, message) =>
                {
                    var jsonObject = JsonMapper.ToObject(message);
                    var success    = !error && Convert.ToString(jsonObject["success"]) == "true";
                    if (success)
                    {
                        m_photonView.RPC("RPC_Request", targetPlayer, PhotonNetwork.LocalPlayer.ActorNumber, (int)arg0.CommandType);
                        m_uiEngine.CloseLastScreen();
                    }
                });
            }
            else
            {
                m_uiEngine.CloseLastScreen();

                if (arg0.CommandType == MenuCommandType.OTHER)
                {
                    return;
                }
                m_photonView.RPC("RPC_Request", targetPlayer, PhotonNetwork.LocalPlayer.ActorNumber, (int)arg0.CommandType);
            }
        }
コード例 #9
0
        protected override void ExecuteSelectionCommand(MenuClickArgs args)
        {
            base.ExecuteSelectionCommand(args);
            ExperienceResource experienceResource = null;

            if (args.Data is ExperienceResource)
            {
                experienceResource = (ExperienceResource)args.Data;
            }

            if (experienceResource == null)
            {
                //Debug.LogError("Experience resource null");
                return;
            }

            if (experienceResource.ResourceType == ResourceType.EXPERIENCE)
            {
                if (Enum.TryParse(experienceResource.Name.ToUpper(), out ExperienceType type))
                {
                    Selection.ExperienceType = type;
                }
            }
        }
コード例 #10
0
        public virtual void UpdateResourceSelection(MenuClickArgs args)
        {
            if (args.Data != null && args.Data is ExperienceResource)
            {
                ExperienceResource resource = (ExperienceResource)args.Data;
                if (resource.ResourceType == ResourceType.MUSIC)
                {   //Selection.Music = Array.Find(m_musicList, item => item.Clip == ((AudioResource)resource).Clip).Clip;
                    Selection.Music = ((AudioResource)resource).Clip;

                    AudioArgs audioStopArgs = new AudioArgs(null, AudioType.MUSIC)
                    {
                        FadeTime = 1.0f,
                        Done     = () =>
                        {
                            AudioClip audioClip = Selection.Music;
                            AudioArgs audioArgs = new AudioArgs(audioClip, AudioType.MUSIC)
                            {
                                FadeTime = 1
                            };
                            m_audio.Play(audioArgs);
                        }
                    };

                    m_audio.Stop(audioStopArgs);

                    //    var music = m_commonResource.GetResource(ResourceType.MUSIC, resource.Category);
                    //    Selection.Music = ((AudioResource)Array.Find(music, item => ((AudioResource)item).Clip == ((AudioResource)resource).Clip)).Clip;
                }


                if (resource.ResourceType == ResourceType.LOCATION)
                {
                    Selection.Location = resource.Name;
                }
            }
        }
コード例 #11
0
 public void ExecuteMenuCommand(MenuClickArgs args)
 {
     m_currentExperience.ExecuteMenuCommand(args);
 }
コード例 #12
0
ファイル: Game.cs プロジェクト: harsh-priyadarshi/Lucky7
 public virtual void ExecuteMenuCommand(MenuClickArgs args)
 {
     Debug.Log(args.Name + " " + args.Path + " " + args.Command + " " + args.CommandType.ToString());
 }
コード例 #13
0
ファイル: Game.cs プロジェクト: harsh-priyadarshi/Lucky7
 /// <summary>
 /// Preserve selection into MenuSelection singleton m_menuSelection
 /// </summary>
 /// <param name="args"></param>
 protected virtual void ExecuteSelectionCommand(MenuClickArgs args)
 {
     UpdateResourceSelection(args);
 }
コード例 #14
0
 protected override void ExecuteSelectionCommand(MenuClickArgs args)
 {
     base.ExecuteSelectionCommand(args);
 }
コード例 #15
0
 public void UpdateResourceSelection(MenuClickArgs args)
 {
 }
コード例 #16
0
        public override void ExecuteMenuCommand(MenuClickArgs args)
        {
            if (args.Data != null && args.Data is AudioGroup || args.Data is AudioResource)
            {
                base.ExecuteMenuCommand(args);
                return;
            }

            if (args.CommandType == MenuCommandType.CATEGORY_SELECTION && ((ResourceComponent)args.Data).ResourceType == ResourceType.OBJECT)
            {
                base.ExecuteMenuCommand(args);
                return;
            }

            if ((!(args.Data is MeetingResource) && args.CommandType != MenuCommandType.CATEGORY_SELECTION) && args.CommandType != MenuCommandType.MEETING && args.CommandType != MenuCommandType.USER && args.CommandType != MenuCommandType.CREATE_MEETING)
            {
                base.ExecuteMenuCommand(args);
            }

            if (args.CommandType == MenuCommandType.SIMULATION || args.CommandType == MenuCommandType.CONTROLS || args.CommandType == MenuCommandType.LOGOUT || args.CommandType == MenuCommandType.ANNOTATION || args.CommandType == MenuCommandType.MUSIC || args.CommandType == MenuCommandType.VO || args.CommandType == MenuCommandType.QUIT || args.CommandType == MenuCommandType.MAIN || args.CommandType == MenuCommandType.SETTINGS || args.CommandType == MenuCommandType.SAVE_PRESET || args.CommandType == MenuCommandType.LOBBY)
            {
                return;
            }

            if (args.CommandType == MenuCommandType.CREATE_MEETING)
            {
                m_webInterface.GetCategories(ResourceType.USER, (users) =>
                {
                    m_uiEngine.OpenMeetingForm(new FormArgs()
                    {
                        Items = ResourceToMenuItems(m_webInterface.GetResource(ResourceType.USER, "").Where(item => ((UserResource)item).UserInfo.id != m_webInterface.UserInfo.id).ToArray()),
                    });
                });

                return;
            }

            if (args.CommandType == MenuCommandType.MEETING || args.CommandType == MenuCommandType.TRAINING)
            {
                if (args.CommandType == MenuCommandType.TRAINING)
                {
                    ExperienceMachine.AppMode = AppMode.TRAINING;
                }
                else
                {
                    ExperienceMachine.AppMode = AppMode.APPLICATION;
                }

                //m_webInterace.ListAllMeetingDetails(MeetingFilter.Rejected).OnRequestComplete(
                //(isNetworkError, message) =>
                //{
                //    var allCreatedMeetings = m_webInterace.ParseMeetingListJson(message, MeetingCategory.CREATED);

                //    if (resourceComponent.ResourceType == ResourceType.AUDIO)
                //        Selection.MusicGroup = Array.Find(m_commonResource.AssetDb.AudioGroups, item => item.Name != null && item.Name.Equals(args.Command)).MusicGroupName;
                //    var resourceType = resourceComponent.ResourceType;
                //    m_uiEngine.OpenGridMenu(null, ResourceToMenuItems(experience.GetResource(resourceType, args.Command)), "SELECT " + resourceType.ToString().ToUpper());

                //    OpenResourceWindow(m_commonResource.GetGuideClip(MenuCommandType.EXPERIENCE), m_webInterace.Meetings, "WHICH TYPE OF MEDITATION ARE YOU UP FOR?");
                //});
                //return;
            }

            if (args.CommandType == MenuCommandType.SELECTION)
            {
                m_experienceMachine.UpdateResourceSelection(args);

                ResourceType resourceType = ResourceType.OBJECT;
                if (args.Data != null && args.Data is ExperienceResource experienceResource)
                {
                    resourceType = experienceResource.ResourceType;
                }
                if (args.Data != null && args.Data is MeetingResource)
                {
                    m_uiEngine.OpenMeeting(new UI.MeetingArgs()
                    {
                        MeetingInfo = ((MeetingResource)args.Data).MeetingInfo
                    });
                    return;
                }
                if (!(args.Data != null && (args.Data is ColorGroup || resourceType == ResourceType.EXPERIENCE)))
                {
                    m_uiEngine.CloseLastScreen();
                }
            }


            List <ResourceType> sequence = new List <ResourceType>();

            if (ExperienceMachine.AppMode == AppMode.APPLICATION)
            {
                sequence = MenuSequence;
            }
            else
            {
                sequence = LearnMenuSequence;
            }

            if (args.CommandType == MenuCommandType.CATEGORY_SELECTION)
            {
                ResourceComponent resourceComponent = (ResourceComponent)args.Data;

                if (resourceComponent.ResourceType == ResourceType.AUDIO)
                {
                    Selection.MusicGroup = Array.Find(m_commonResource.AssetDb.AudioGroups, item => item.Name != null && item.Name.Equals(args.Command)).MusicGroupName;
                }
                var resourceType = resourceComponent.ResourceType;
                var resources    = resourceType == ResourceType.OBJECT ? m_commonResource.GetResource(resourceType, args.Command) : m_webInterface.GetResource(resourceType, args.Command);
                m_uiEngine.OpenGridMenu(new GridArgs()
                {
                    Items           = ResourceToMenuItems(resources),
                    Title           = "SELECT " + resourceType.ToString().ToUpper(),
                    RefreshCategory = args.Command
                });
                return;
            }

            //Debug.LogError(args.Data.GetType().ToString());

            int sequenceIndex;

            if (args.Data == null)
            {
                sequenceIndex = sequence.FindIndex(item => item == GetResourceType(args.CommandType));
            }
            else
            {
                sequenceIndex = sequence.FindIndex(item => item == ((ResourceComponent)args.Data).ResourceType);
            }

            //Debug.LogError(args.CommandType + " " + ((ExperienceResource)args.Data).ResourceType + " " + sequenceIndex);

            if (sequenceIndex < sequence.Count)
            {
                var resourceType = sequence[sequenceIndex];
                m_webInterface.GetCategories(resourceType, (categories) =>
                {
                    if (resourceType == ResourceType.COLOR || (categories.Length == 1 && string.IsNullOrEmpty(categories[0].Name)))
                    {
                        if (resourceType != ResourceType.COLOR)
                        {
                            m_uiEngine.OpenGridMenu(new GridArgs()
                            {
                                AudioClip = m_commonResource.GetGuideClip(GetCommandType(resourceType)),
                                Items     = ResourceToMenuItems(m_webInterface.GetResource(sequence[sequenceIndex], "")),
                                Title     = "SELECT " + sequence[sequenceIndex].ToString(),
                            });
                        }
                    }
                    else
                    {
                        string categoryDescription = "";

                        switch (resourceType)
                        {
                        case ResourceType.MUSIC:
                            categoryDescription = "WHAT MUSIC IS THE RIGHT FIT?";
                            break;

                        case ResourceType.COLOR:
                            categoryDescription = "WHAT COLOR SUITS YOUR MOOD?";
                            break;

                        case ResourceType.MANDALA:
                            categoryDescription = "WHICH MANDALA SHOULD BE GOOD?";
                            break;

                        case ResourceType.LOCATION:
                            categoryDescription = "WHERE WOULD YOU LIKE TO RELAX?";
                            break;

                        case ResourceType.AUDIO:
                            categoryDescription = "WHICH MEDITATION SUITS YOUR MOOD?";
                            break;

                        case ResourceType.MEETING:
                            categoryDescription = "SELECT MEETING TYPE TO PROCEED";
                            break;

                        default:
                            break;
                        }

                        MenuItemInfo[] categoryItems = GetCategoryMenu(categories, resourceType);
                        m_uiEngine.OpenGridMenu(new GridArgs()
                        {
                            AudioClip = m_commonResource.GetGuideClip(GetCommandType(resourceType)),
                            Items     = categoryItems,
                            Title     = categoryDescription,
                        });
                    }
                });//m_uiEngine.OpenGridMenu(sequence[++m_sequenceIterator], sequence[0][m_sequenceIterator - 1].Text);
            }
            else
            {
                Debug.LogError(args.Data.GetType().ToString() + " " + args.CommandType.ToString());
                return;
            }
        }
コード例 #17
0
        public virtual void ExecuteMenuCommand(MenuClickArgs args)
        {
            //Debug.Log(args.Name + " " + args.Path + " " + args.Command + " " + args.CommandType.ToString());
            if (args.CommandType == MenuCommandType.SAVE_PRESET)
            {
                m_experienceMachine.GetExperience(ExperienceType.MANDALA).ExecuteMenuCommand(args);
                return;
            }

            if (args.CommandType == MenuCommandType.QUIT)
            {
                #if UNITY_EDITOR
                UnityEditor.EditorApplication.ExecuteMenuItem("Edit/Play");
                #else
                Application.Quit();
                #endif
                return;
            }

            if (args.CommandType == MenuCommandType.HOME)
            {
                Selection.Location       = args.Path;
                Selection.ExperienceType = ExperienceType.HOME;
                ToggleMenu();
                m_experienceMachine.LoadExperience();
            }

            if (args.CommandType == MenuCommandType.LOBBY)
            {
                if (PhotonNetwork.InRoom)
                {
                    m_network.LeaveRoom();
                }
                else
                {
                    //Selection.Location = args.Path;
                    //Selection.ExperienceType = ExperienceType.LOBBY;
                    //m_uiEngine.Close();
                    //m_experienceMachine.LoadExperience();
                }
            }

            if (args.CommandType == MenuCommandType.SETTINGS)
            {
                m_uiEngine.OpenSettingsInterface(m_commonResource.GetGuideClip(MenuCommandType.SETTINGS));
            }
            if (args.CommandType == MenuCommandType.INVENTORY)
            {
                var resourceType = ResourceType.OBJECT;
                var categories   = m_commonResource.GetCategories(ResourceType.OBJECT);

                if (categories.Length == 0 || (categories.Length == 1 && string.IsNullOrEmpty(categories[0].Name)))
                {
                    throw new NotImplementedException();
                }
                else
                {
                    MenuItemInfo[] categoryItems = GetCategoryMenu(categories, resourceType);

                    m_uiEngine.OpenGridMenu(new GridArgs()
                    {
                        AudioClip = m_commonResource.GetGuideClip(GetCommandType(resourceType)),
                        Items     = categoryItems,
                        Title     = "WHAT KIND OF ITEM WOULD YOU LIKE TO LOAD?",
                    });
                }
            }

            if (args.CommandType == MenuCommandType.MUSIC)
            {
                var categories = GetCategories(ResourceType.MUSIC);
                if (categories.Length == 0 || (categories.Length == 1 && string.IsNullOrEmpty(categories[0].Name)))
                {
                    m_uiEngine.OpenGridMenu(new GridArgs()
                    {
                        AudioClip = m_commonResource.GetGuideClip(MenuCommandType.MUSIC),
                        Items     = ResourceToMenuItems(GetResource(ResourceType.MUSIC, "")),
                        Title     = "SELECT MUSIC",
                    });
                }
                else
                {
                    m_uiEngine.OpenGridMenu(new GridArgs()
                    {
                        AudioClip = m_commonResource.GetGuideClip(MenuCommandType.MUSIC),
                        Items     = GetCategoryMenu(categories, ResourceType.MUSIC),
                        Title     = "WHAT MUSIC IS THE RIGHT FIT?",
                    });
                }
            }
            else if (args.CommandType == MenuCommandType.SELECTION)
            {
                ExecuteSelectionCommand(args);
            }
        }
コード例 #18
0
ファイル: Gameplay.cs プロジェクト: fordi-slot/RLCMatch
        public override void ExecuteMenuCommand(MenuClickArgs args)
        {
            try
            {
                if (args.Data != null && ((ResourceComponent)args.Data).ResourceType == ResourceType.ANIMATION)
                {
                    return;
                }
            }
            catch
            {
            }

            base.ExecuteMenuCommand(args);

            if (args.CommandType == MenuCommandType.LOGOUT)
            {
                Selection.Location       = Home.HOME_SCENE;
                Selection.ExperienceType = ExperienceType.HOME;
                ToggleMenu();
                m_experienceMachine.LoadExperience();
            }

            if (args.CommandType == MenuCommandType.CATEGORY_SELECTION)
            {
                if (args.Data == null)
                {
                    return;
                }

                var resourceType = ((ResourceComponent)args.Data).ResourceType;
                Debug.LogError(resourceType.ToString());
                m_uiEngine.OpenGridMenu(new GridArgs()
                {
                    Items = ResourceToMenuItems(GetResource(resourceType, args.Command)),
                    Title = "SELECT " + resourceType.ToString().ToUpper(),
                });
                return;
            }

            if (args.CommandType == MenuCommandType.VO)
            {
                var categories = GetCategories(ResourceType.AUDIO);
                if (categories.Length == 0 || (categories.Length == 1 && string.IsNullOrEmpty(categories[0].Name)))
                {
                    m_uiEngine.OpenGridMenu(new GridArgs()
                    {
                        AudioClip = m_commonResource.GetGuideClip(MenuCommandType.VO),
                        Items     = ResourceToMenuItems(GetResource(ResourceType.AUDIO, "")),
                        Title     = "SELECT AUDIO",
                    });
                }
                else
                {
                    m_uiEngine.OpenGridMenu(new GridArgs()
                    {
                        AudioClip = m_commonResource.GetGuideClip(MenuCommandType.VO),
                        Items     = GetCategoryMenu(categories, ResourceType.AUDIO),
                        Title     = "WHICH MEDITATION SUITS YOUR MOOD?",
                    });
                }
            }

            else if (args.CommandType == MenuCommandType.SELECTION)
            {
                m_uiEngine.Close();
                AudioSelectionFlag = false;
            }
        }
コード例 #19
0
ファイル: TabbedScreen.cs プロジェクト: fordi-slot/RLCMatch
 protected virtual void OnTabClick(MenuClickArgs arg0)
 {
     //Debug.Log("OnTabClick " + arg0.Name);
 }
コード例 #20
0
        public override void ExecuteMenuCommand(MenuClickArgs args)
        {
            base.ExecuteMenuCommand(args);
            if (args.CommandType == MenuCommandType.QUIT || args.CommandType == MenuCommandType.MAIN || args.CommandType == MenuCommandType.SETTINGS || args.CommandType == MenuCommandType.SAVE_PRESET || args.CommandType == MenuCommandType.LOBBY)
            {
                return;
            }

            if (args.CommandType == MenuCommandType.LOGOUT)
            {
                ToggleMenu();
                OpenLoginPage();
                return;
            }

            if (args.CommandType == MenuCommandType.EXPERIENCE || args.CommandType == MenuCommandType.TRAINING)
            {
                if (args.CommandType == MenuCommandType.TRAINING)
                {
                    ExperienceMachine.AppMode = AppMode.TRAINING;
                }
                else
                {
                    ExperienceMachine.AppMode = AppMode.APPLICATION;
                }

                OpenResourceWindow(m_commonResource.GetGuideClip(MenuCommandType.EXPERIENCE), m_experiences, "WHICH TYPE OF MEDITATION ARE YOU UP FOR?");
                return;
            }

            if (args.CommandType == MenuCommandType.SELECTION)
            {
                m_experienceMachine.UpdateResourceSelection(args);

                ResourceType resourceType = ResourceType.OBJECT;
                if (args.Data != null && args.Data is ExperienceResource experienceResource)
                {
                    resourceType = experienceResource.ResourceType;
                }
                if (!(args.Data != null && (args.Data is ColorGroup || resourceType == ResourceType.EXPERIENCE)))
                {
                    m_uiEngine.CloseLastScreen();
                }
            }


            var experience = m_experienceMachine.GetExperience(Selection.ExperienceType);

            List <ResourceType> sequence = new List <ResourceType>();

            if (ExperienceMachine.AppMode == AppMode.APPLICATION)
            {
                sequence = experience.MenuSequence;
            }
            else
            {
                sequence = experience.LearnMenuSequence;
            }

            if (args.CommandType == MenuCommandType.CATEGORY_SELECTION)
            {
                ResourceComponent resourceComponent = (ResourceComponent)args.Data;


                if (resourceComponent.ResourceType == ResourceType.AUDIO)
                {
                    Selection.MusicGroup = Array.Find(m_commonResource.AssetDb.AudioGroups, item => item.Name != null && item.Name.Equals(args.Command)).MusicGroupName;
                }
                var resourceType = resourceComponent.ResourceType;
                m_uiEngine.OpenGridMenu(new GridArgs()
                {
                    Items = ResourceToMenuItems(experience.GetResource(resourceType, args.Command)),
                    Title = "SELECT " + resourceType.ToString().ToUpper(),
                });
                return;
            }


            var sequenceIndex = sequence.FindIndex(item => item == ((ResourceComponent)args.Data).ResourceType);

            //Debug.LogError(args.CommandType + " " + ((ExperienceResource)args.Data).ResourceType + " " + sequenceIndex);

            sequenceIndex++;

            if (sequenceIndex < sequence.Count)
            {
                var categories   = experience.GetCategories(sequence[sequenceIndex]);
                var resourceType = sequence[sequenceIndex];

                if (resourceType == ResourceType.COLOR || categories.Length == 0 || (categories.Length == 1 && string.IsNullOrEmpty(categories[0].Name)))
                {
                    if (resourceType != ResourceType.COLOR)
                    {
                        m_uiEngine.OpenGridMenu(new GridArgs()
                        {
                            AudioClip = m_commonResource.GetGuideClip(GetCommandType(resourceType)),
                            Items     = ResourceToMenuItems(experience.GetResource(sequence[sequenceIndex], "")),
                            Title     = "SELECT " + sequence[sequenceIndex].ToString(),
                        });
                    }
                }
                else
                {
                    string categoryDescription = "";

                    switch (resourceType)
                    {
                    case ResourceType.MUSIC:
                        categoryDescription = "WHAT MUSIC IS THE RIGHT FIT?";
                        break;

                    case ResourceType.COLOR:
                        categoryDescription = "WHAT COLOR SUITS YOUR MOOD?";
                        break;

                    case ResourceType.MANDALA:
                        categoryDescription = "WHICH MANDALA SHOULD BE GOOD?";
                        break;

                    case ResourceType.LOCATION:
                        categoryDescription = "WHERE WOULD YOU LIKE TO RELAX?";
                        break;

                    case ResourceType.AUDIO:
                        categoryDescription = "WHICH MEDITATION SUITS YOUR MOOD?";
                        break;

                    default:
                        break;
                    }

                    MenuItemInfo[] categoryItems = GetCategoryMenu(categories, resourceType);

                    m_uiEngine.OpenGridMenu(new GridArgs()
                    {
                        AudioClip = m_commonResource.GetGuideClip(GetCommandType(resourceType)),
                        Items     = categoryItems,
                        Title     = categoryDescription,
                    });
                }
                //m_uiEngine.OpenGridMenu(sequence[++m_sequenceIterator], sequence[0][m_sequenceIterator - 1].Text);
            }
            else
            {
                m_uiEngine.Close();
                m_experienceMachine.LoadExperience();
                return;
            }
        }
コード例 #21
0
 public void ExecuteMenuCommand(MenuClickArgs args)
 {
     m_currentGame.ExecuteMenuCommand(args);
     //Debug.LogError(args.Path + " " + args.Path);
 }
コード例 #22
0
 public override void ExecuteMenuCommand(MenuClickArgs args)
 {
     base.ExecuteMenuCommand(args);
 }