Пример #1
0
        private bool HasDialogueForCurrentState()
        {
            var currentGameState = gameStateManager.CurrentGameStateData;
            var dialogueForState = GetDialogueForState(currentGameState);

            if (dialogueForState == null)
            {
                return(false);
            }

            var maxRank = dialogueForState.catDialogue.Count - 1;
            var rank    = dialogueData.GetGameStateRank(currentGameState);

            return(rank <= maxRank);
        }
Пример #2
0
        private void DrawSingle()
        {
            CatDialogueData data = (CatDialogueData)target;

            GameStateList stateList = Resources.Load <GameStateList>("Game State Data/Game State List");

            EditorGUILayout.LabelField("Relationship Rank:", "" + data.Rank);
            EditorGUILayout.LabelField("State Ranks");
            foreach (GameStateData stateData in stateList)
            {
                int rank = data.GetGameStateRank(stateData);
                if (rank > 0)
                {
                    EditorGUILayout.LabelField(stateData.name, "" + rank);
                }
            }

            EditorGUILayout.LabelField("Relationship Rank");
            if (GUILayout.Button("Force Increase"))
            {
                data.IncreaseRank();
            }
            if (GUILayout.Button("Force Reset"))
            {
                data.ResetRank();
            }
            EditorGUILayout.LabelField("State Rank");
            state = (GameStateData)EditorGUILayout.ObjectField("State", state, typeof(GameStateData), false);
            if (GUILayout.Button("Force Increase"))
            {
                data.IncreaseGameStateRank(state);
            }
            if (GUILayout.Button("Force Reset") && state != null)
            {
                data.ResetStateRank(state);
            }
            if (GUILayout.Button("Force Reset All"))
            {
                data.ResetStateRanks();
            }
        }