Example #1
0
        private string GetDialogueTriggerDescription(DialogueTriggerEvent trigger)
        {
            switch (trigger)
            {
            case DialogueTriggerEvent.OnBarkEnd: return("Will occur when the NPC receives an 'OnBarkEnd' message.");

            case DialogueTriggerEvent.OnConversationEnd: return("Will occur when the NPC receives an 'OnConversationEnd' message.");

            case DialogueTriggerEvent.OnEnable: return("Will occur when the NPC's components are enabled (or re-enabled).");

            case DialogueTriggerEvent.OnSequenceEnd: return("Will occur when the NPC receives an 'OnSequenceEnd' message.");

            case DialogueTriggerEvent.OnStart: return("Will occur when the NPC object is started.");

            case DialogueTriggerEvent.OnTriggerEnter: return("Will occur when a valid actor (usually the player) enters the NPC's trigger collider.");

            case DialogueTriggerEvent.OnUse: return("Will occur when the NPC receives an 'OnUse' event. If the player has a Selector component, it can send OnUse. You can also send OnUse from scripts, cutscene sequences, etc.");

            case DialogueTriggerEvent.OnDestroy: return("Will occur when the NPC object is destroyed.");

            case DialogueTriggerEvent.OnDisable: return("Will occur when the corresponding component on the NPC is disabled.");

            case DialogueTriggerEvent.OnTriggerExit: return("Will occur when a valid actor (usually the player) exits the NPC's trigger collider.");

            case DialogueTriggerEvent.None: return("Will not be triggered automatically.");

            default: return(string.Empty);
            }
        }
Example #2
0
        private DialogueTriggerEvent DrawTriggerPopup(DialogueTriggerEvent trigger)
        {
            DialogueTriggerEvent result = (DialogueTriggerEvent)EditorGUILayout.EnumPopup("Trigger", trigger);

            EditorGUILayout.HelpBox(GetDialogueTriggerDescription(trigger), MessageType.None);
            return(result);
        }
Example #3
0
        public static DialogueTriggerEvent LayoutPopup(string label, DialogueTriggerEvent trigger)
        {
            var nameIndex    = EnumValueIndexToNameIndex(DialogueTriggerEventToEnumValueIndex(trigger));
            var newNameIndex = EditorGUILayout.Popup(label, nameIndex, triggerNames);

            if (newNameIndex != nameIndex)
            {
                return(EnumValueIndexToDialogueTriggerEvent(NameIndexToEnumValueIndex(newNameIndex)));
            }
            else
            {
                return(trigger);
            }
        }
Example #4
0
        public static int DialogueTriggerEventToEnumValueIndex(DialogueTriggerEvent trigger)
        {
            switch (trigger)
            {
            case DialogueTriggerEvent.OnBarkEnd:
                return(0);

            case DialogueTriggerEvent.OnConversationEnd:
                return(1);

            case DialogueTriggerEvent.OnSequenceEnd:
                return(2);

            case DialogueTriggerEvent.OnTriggerEnter:
                return(3);

            case DialogueTriggerEvent.OnStart:
                return(4);

            case DialogueTriggerEvent.OnUse:
                return(5);

            case DialogueTriggerEvent.OnEnable:
                return(6);

            case DialogueTriggerEvent.OnTriggerExit:
                return(7);

            case DialogueTriggerEvent.OnDisable:
                return(8);

            case DialogueTriggerEvent.OnDestroy:
                return(9);

            case DialogueTriggerEvent.None:
                return(10);

            case DialogueTriggerEvent.OnCollisionEnter:
                return(11);

            case DialogueTriggerEvent.OnCollisionExit:
                return(12);

            default:
                return(10);
            }
        }
		private string GetDialogueTriggerDescription(DialogueTriggerEvent trigger) {
			switch (trigger) {
			case DialogueTriggerEvent.OnBarkEnd: return "Will occur when the NPC receives an 'OnBarkEnd' message.";
			case DialogueTriggerEvent.OnConversationEnd: return "Will occur when the NPC receives an 'OnConversationEnd' message.";
			case DialogueTriggerEvent.OnEnable: return "Will occur when the NPC's components are enabled (or re-enabled).";
			case DialogueTriggerEvent.OnSequenceEnd: return "Will occur when the NPC receives an 'OnSequenceEnd' message.";
			case DialogueTriggerEvent.OnStart: return "Will occur when the NPC object is instantiated.";
			case DialogueTriggerEvent.OnTriggerEnter: return "Will occur when a valid actor (usually the player) enters the NPC's trigger collider.";
			case DialogueTriggerEvent.OnUse: return "Will occur when the NPC receives an 'OnUse' event. If the player has a Selector component, it can send OnUse. You can also send OnUse from scripts, cutscene sequences, etc.";
			default: return string.Empty;
			}
		}
		private DialogueTriggerEvent DrawTriggerPopup(DialogueTriggerEvent trigger) {
			DialogueTriggerEvent result = (DialogueTriggerEvent) EditorGUILayout.EnumPopup("Trigger", trigger);
			EditorGUILayout.HelpBox(GetDialogueTriggerDescription(trigger), MessageType.None);
			return result;
		}