private void FinishLevelSuccess()
 {
     TaskManager.TriggerTask("Task6" + "Trigger");
     // Show the success dialogue
     GenericDialogueManager.Instance().DisplayMessage("已经消灭三种怪物各5只,先回去吧!");
     StartCoroutine("Finish");
 }
    public override void Awake()
    {
        Debug.Log("InstanceManager.Awake");

        // tmp hard code for convenience.
        GenericDialogueManager.Instance().DisplayMessage("消灭各种怪物5只");

        MessageManager.StartListening("PlayerDie", FinishLevelFail);
        MessageManager.StartListening("PlayerFinish", FinishLevelSuccess);
    }
    // Singleton mode
    public static GenericDialogueManager Instance()
    {
        if (!gdManager)
        {
            gdManager = FindObjectOfType(typeof(GenericDialogueManager)) as GenericDialogueManager;
            if (!gdManager)
            {
                Debug.LogError("There needs to be one active GenericDialogueManager script on a GameObject in your scene.");
            }
        }

        return(gdManager);
    }
Exemple #4
0
 // Function when task is triggered
 private void TaskAction()
 {
     // Task change status according to
     if (this._taskStatus == TaskStatus.DISCOVERED)
     {
         Debug.Log("Task ID: " + _taskID.ToString() + "Task Operation");
         this.setStatus(TaskStatus.FINISHED);
         TaskManager.activeListRemove(this._taskID);
         if (childTasks.Count != 0)
         {
             foreach (int i in childTasks)
             {
                 TaskManager.TriggerTask("Task" + i.ToString() + "TryDiscover");
             }
         }
         GenericDialogueManager.Instance().DisplayMessage(_taskDialogue);
     }
 }
Exemple #5
0
 void Start()
 {
     GenericDialogueManager.Instance().SetDisactive();
     MessageManager.TriggerEvent("PlayerInit", true);
     //PlayerPrefs.DeleteKey("x");
     //PlayerPrefs.DeleteKey("z");
     if (PlayerPrefs.HasKey("x"))
     {
         float x = PlayerPrefs.GetFloat("x");
         float z = PlayerPrefs.GetFloat("z");
         Debug.Log("X : " + x.ToString() + "Z : " + z.ToString() + "Using the playerPref value");
         GameObject.FindGameObjectWithTag("Player").transform.position = new Vector3(x + 10f, 0, z);
     }
     else
     {
         TaskManager.activeListAdd(1);
         TaskManager.TriggerTask("Task1Trigger");
     }
 }
Exemple #6
0
    /// <summary>
    /// Trigger the task when enter the trigger of the NPC
    /// </summary>
    /// <param name="other"></param>
    public void OnTriggerEnter(Collider other)
    {
        Task task3 = GameObject.Find("TaskSystem/TaskFactory/task3").GetComponent <Task>();

        if (other.tag == "Player")
        {
            // If the task3 is discovered adn haven't finished, show a simple dialogue
            if (task3.getStatus() == TaskStatus.DISCOVERED)
            {
                GenericDialogueManager.Instance().DisplayMessage("董老师:\n小清你回来那么快?二校门那里有线索吗?");
            }
            else
            {
                //TaskManager.TriggerTask("Task1" + "Trigger");
                TaskManager.TriggerTask("Task2" + "Trigger");
                TaskManager.TriggerTask("Task4" + "Trigger");
                TaskManager.TriggerTask("Task7" + "Trigger");
            }
        }
    }
Exemple #7
0
 /// <summary>
 /// Trigger the task when enter the trigger of the sanjiao
 /// </summary>
 /// <param name="other"></param>
 public void OnTriggerEnter(Collider other)
 {
     if (other.tag == "Player")
     {
         Task task5 = GameObject.Find("TaskSystem/TaskFactory/task5").GetComponent <Task>();
         Task task6 = GameObject.Find("TaskSystem/TaskFactory/task6").GetComponent <Task>();
         // If the task5/6 is discovered and not finished, load into the attack scene.
         if (task5.getStatus() == TaskStatus.DISCOVERED ||
             task6.getStatus() == TaskStatus.DISCOVERED)
         {
             TaskManager.TriggerTask("Task5" + "Trigger");
             PlayerPrefs.SetFloat("x", other.transform.position.x);
             PlayerPrefs.SetFloat("z", other.transform.position.z);
             SceneManager.LoadScene("Instance01");
         }
         // Else show a simple dialogue.
         else
         {
             GenericDialogueManager.Instance().DisplayMessage("三教感觉有点阴森...里面好像有些奇怪的声音...");
         }
     }
 }
    private void Start()
    {
        // Initiate player in the instance scene
        MessageManager.TriggerEvent("PlayerInit", false);

        Task task6 = GameObject.Find("TaskSystem/TaskFactory/task6").GetComponent <Task>();

        if (task6.getStatus() == TaskStatus.DISCOVERED)
        {
            string[] task =
            {
                "教室中有三个黑色的圆球在翻滚,却看不清里面的东西...",
                "那是...机器人!!!",
                "他们果然来入侵了!!",
                "先消灭各5个,看一看他们的能力,再回去告诉董老师!"
            };
            GenericDialogueManager.Instance().DisplayMessage(task);
            // If the task6 is discoverd, then begin spwan enemy and recover

            MessageManager.TriggerEvent("EnemyManagerBegin");
            MessageManager.TriggerEvent("RecoverManagerBegin");
        }
    }
 void Awake()
 {
     modalPanel = ModalPanel.Instance();
     gdManager  = GenericDialogueManager.Instance();
 }
Exemple #10
0
 private void FinishLevelFail()
 {
     // Show the fail diagolue
     GenericDialogueManager.Instance().DisplayMessage("机器人有点令人防不胜防,休息一会之后再来!");
     StartCoroutine("Finish");
 }