private void notifyQuests(EventProgressType eventProgressType)
 {
     foreach (Quest quest in quests)
     {
         quest.notify(eventProgressType);
     }
 }
    /// <summary>
    /// 初期化処理
    /// </summary>
    public override void OnInitialize()
    {
        base.OnInitialize();
        IsEnd = false;
        timer.Initialize();
        type = EventProgressType.StartFirstEvent;
        eventTextDisplay.GameStartEventInitialize();

        eventManager.ChangeCanvasActive(false);

        //プレイヤーの情報保存
        initPlayerPosition = playerModelObject.transform.localPosition;
        initPlayerAngle    = playerModelObject.transform.localEulerAngles;

        //カメラの情報保存
        initCameraPosition = Camera.main.transform.position;
        initCameraAngle    = Camera.main.transform.eulerAngles;

        //演出時に使用するステージの生成
        startStage = eventManager.SpawnStartStage();
        playerModelObject.transform.position = startStage.transform.position + new Vector3(0.0f, 0.5f, 0.0f);

        Camera.main.transform.LookAt(playerModelObject.transform);
        Camera.main.transform.position = playerModelObject.transform.position + (playerModelObject.transform.forward * 30.0f) + new Vector3(0.0f, 2.0f, 0.0f);
    }
 private void StartSecondEvent()
 {
     timer.UpdateTimer();
     if (timer.IsTime() == true)
     {
         type = EventProgressType.EndSecondEvent;
     }
 }
    private void UpdateCameraInfo()
    {
        //カメラをプレイヤーの側面を移すようにする
        Camera.main.transform.position = playerModelObject.transform.position + new Vector3(5.0f, 2.5f, 0.0f);
        Camera.main.transform.LookAt(playerModelObject.transform);
        Camera.main.transform.parent = playerModelObject.transform;

        eventTextDisplay.SecondText();
        type = EventProgressType.StartSecondEvent;
    }
Beispiel #5
0
 public Quest(string name, EventProgressType eventProgressType, int howMuch)
 {
     this.name      = name;
     taskToComplete = new Dictionary <EventProgressType, int>();
     taskToComplete.Add(eventProgressType, howMuch);
     stepsRemaningList = new Dictionary <EventProgressType, int>();
     stepsRemaningList.Add(eventProgressType, 0);
     status    = PENDING;
     isEnabled = false;
 }
    private void StartFirstEvent()
    {
        if (eventTextDisplay.IsAlpha() == true)
        {
            eventTextDisplay.FirstText();
        }
        float distance = Camera.main.transform.position.z - playerModelObject.transform.position.z;

        if (distance <= 5.0f)
        {
            type = EventProgressType.EndFirstEvent;
        }
    }
Beispiel #7
0
 public void notify(EventProgressType eventProgressType)
 {
     if (isEnabled)
     {
         if (taskToComplete.ContainsKey(eventProgressType))
         {
             stepsRemaningList[eventProgressType]++;
             if (checkIfQuestCompleted())
             {
                 Stage.questOutput.Add(" [ Quest ] " + name + " [ COMPLETED ] ");
                 return;
             }
             Stage.questOutput.Add(" [ Quest ] " + name + " [ IN PROGRESS ] ");
         }
     }
 }
Beispiel #8
0
 public void addTask(EventProgressType eventProgressType, int howMuch)
 {
     taskToComplete.Add(eventProgressType, howMuch);
     stepsRemaningList.Add(eventProgressType, 0);
 }
 public void notify(EventProgressType eventProgressType)
 {
     notifyQuests(eventProgressType);
 }