// Update is called once per frame
    void Update()
    {
        Mission currMission = getCurrentMission();

        //DEBUG: Skip mission when PageDown is pressed.
        if (Input.GetKeyUp(KeyCode.PageDown))
        {
            missionHistory[currMission] = true;
        }
        currMission     = getCurrentMission();
        currMissionType = currMission.getMissionType();
        if (currMission == null)
        {
            Debug.Log("Game is completed!");
        }
        else if (!currMission.getIsComplete())
        {
            //Debug.Log ("Executing Mission.");
            currMission.execute();
        }
        else
        {
            Debug.Log("Player has completed: " + currMission.ToString());
            missionHistory[currMission] = true;
        }
    }
Esempio n. 2
0
    public Mission(int missionID, MissionManager.MissionType missionType,
                   List <MissionManager.EventType> events,
                   Dictionary <MissionManager.EventType, Transform> eventTransforms, TransportPlayer start, MissionManager manager)
    {
        this.missionID       = missionID;
        this.missionType     = missionType;
        this.missionEvents   = new SortedList <MissionManager.EventType, bool>();
        this.eventTransforms = eventTransforms;
        this.missionStart    = start;
        this.mm = manager;
        this.isCurrentMission = false;
        this.isComplete       = false;

        //Add the given events to this mission's events table with a false value.
        foreach (MissionManager.EventType e in events)
        {
            missionEvents.Add(e, false);
        }
    }