override public void ShowGUI(List <ActionParameter> parameters) { //First select the Quest Manager managerParameterID = Action.ChooseParameterGUI("Quest Manager:", parameters, managerParameterID, ParameterType.GameObject); if (managerParameterID >= 0) { managerConstantID = 0; questManager = null; } else { questManager = (EasyQuestManager)EditorGUILayout.ObjectField("Quest Manager:", questManager, typeof(EasyQuestManager), true); managerConstantID = FieldToID(questManager, managerConstantID); questManager = IDToField(questManager, managerConstantID, false); } //Then show the quest options if (questManager != null) { ShowQuestGUI(questManager); } else { EditorGUILayout.HelpBox("A Quest Manager must be chosen for more options to show.", MessageType.Warning); } }
void Awake() { //Get our references. _Manager = GameObject.FindGameObjectWithTag("EQManager").GetComponent<EasyQuestManager>(); Player = GameObject.FindGameObjectWithTag (PlayerT); heroStats = FindObjectOfType<HeroStats>(); }
void OnEnable() { //Get our references _PlayerGUI = GameObject.Find ("PlayerGUI"); _Manager = GameObject.FindGameObjectWithTag("EQManager").GetComponent<EasyQuestManager>(); //Once we complete a quest, call the event. EasyQuestManager.OnQuestFinish += CompleteQuest; }
override public void AssignValues(List <ActionParameter> parameters) { questID = AssignInteger(parameters, questParameterID, questID); invID = AssignInvItemID(parameters, invParameterID, invID); npcToTalkTo = AssignFile <NPC>(parameters, npcParameterID, npcID, npcToTalkTo); enemytoDefeat = AssignFile(parameters, enemyParamID, enemyID, enemytoDefeat); questManager = AssignFile <EasyQuestManager>(parameters, managerParameterID, managerConstantID, questManager); logUI = AssignFile <QuestLogUI>(parameters, logUIParameterID, logUIID, logUI); }
void Start() { //Grabbing our references player = GameObject.FindGameObjectWithTag ("Player"); _Manager = GameObject.FindGameObjectWithTag("EQManager").GetComponent<EasyQuestManager>(); text = GetComponentInChildren<TextMesh>(); //Quest Giver getting the quest needed for(int i = 0; i < _Manager.EQList.Count; i++){ if(_Manager.EQList[i].QuestID == QuestID && _Manager.EQList[i].ProgressionID == ProgressID){ Quest = _Manager.EQList[i]; OverallID = Quest.OverallID; return; } } }
private void ShowQuestGUI(List <ActionParameter> _parameters, EasyQuestManager _questManager) { //First check the quest type to see what we're doing questType = (QuestType)EditorGUILayout.EnumPopup("Quest Type:", questType); if (questType == QuestType.Collect) { //Get a list of your inventory items and create a popup to choose from objectName = EditorGUILayout.TextField("Name of Object:", objectName); } else if (questType == QuestType.Defeat) { //Drag the enemy prefab here and get the name enemyParamID = Action.ChooseParameterGUI("Enemy:", _parameters, enemyID, ParameterType.GameObject); if (enemyParamID >= 0) { enemyID = 0; enemytoDefeat = null; } else { enemytoDefeat = (GameObject)EditorGUILayout.ObjectField("Enemy:", enemytoDefeat, typeof(GameObject), true); enemyID = FieldToID(enemytoDefeat, enemyID); enemytoDefeat = IDToField(enemytoDefeat, enemyID, false); } } else if (questType == QuestType.TalkTo) { //Drag the character prefab here and get the name npcParameterID = Action.ChooseParameterGUI("NPC to Talk to:", _parameters, npcParameterID, ParameterType.GameObject); if (npcParameterID >= 0) { npcID = 0; npcToTalkTo = null; } else { npcToTalkTo = (NPC)EditorGUILayout.ObjectField("NPC to Talk to:", npcToTalkTo, typeof(NPC), true); npcID = FieldToID <NPC>(npcToTalkTo, npcID); npcToTalkTo = IDToField <NPC>(npcToTalkTo, npcID, false); } } AfterRunningOption(); }
private void ShowQuestGUI(EasyQuestManager _questManager) { //Create a string list of the quests names (for the popup box) List <string> questList = new List <string>(); int i = 0; if (_questManager.QuestContainerDatabase.EQList.Count > 0) { foreach (EasyQuestData _quest in _questManager.QuestContainerDatabase.EQList) { questList.Add(_quest.QuestName); //If the quest has been removed for some reason, make sure the variable is still valid if (_quest.QuestID == questID) { questNumber = i; } i++; } if (questNumber == -1) { Debug.Log("Previously chosen quest no longer exists!"); questNumber = 0; questID = 0; } string label = "Quest to add:"; questNumber = EditorGUILayout.Popup(label, questNumber, questList.ToArray()); questID = _questManager.QuestContainerDatabase.EQList[questNumber].QuestID; addToFront = EditorGUILayout.Toggle("Add to front?", addToFront); } else { EditorGUILayout.HelpBox("No quests exist!", MessageType.Info); questID = -1; questNumber = -1; } AfterRunningOption(); }
override public void AssignValues(List <ActionParameter> parameters) { questID = AssignInteger(parameters, parameterID, questID); questManager = AssignFile <EasyQuestManager>(parameters, managerParameterID, managerConstantID, questManager); }