public void QuestMakingDone(List <QuestPerMob> madeQPMList)//작성한 퀘스트.
    {
        if (madeQPMList == null || madeQPMList.Count == 0)
        {
            Debug.LogError("퀘스트 메이킹 작업물이 존재하지 않음.");
        }


        ClientIdea client = CharactorFrame.GetInstance().clientIdea;
        string     newKey = Quest.MakeQuestKey(client.CharaName);

        Quest writtenQuest = new Quest();   //작성한 퀘스트 생성.

        writtenQuest.SettingQuestMetaDataByToday(newKey, client.CharaName, client.DaysExpire, madeQPMList);
        QuestManager.GetInstance().AddQuest(newKey, writtenQuest); //퀘스트매니져에 작성한 퀘스트를 넣어둬
        client.SetHasCommission(newKey);                           //여기서 의뢰인의 오리진 퀘스트 의뢰일과 만기가 설정됨.

        MainCamAnim.GetInstance().CamToPosNormal(
            () => {
            CharactorFrame.GetInstance().UpdateFSM();                                                             //메인 카메라가 원상태로 복귀한 후에 fsm 업뎃해주기 위해.

            int deposit = PayFormula.CalculateClientRequestDeposit(client.OriginOrderedQuest, client.DaysExpire); //디포짓 얻는 것.
            GoldManager.GetInstance().AdjustGold(deposit, GoldManager.E_PayType.FROM_CLIENT);
        });                                                                                                       //메인카메라 원상태로.
        // CharactorFrame.GetInstance().UpdateFSM(); 메인 카메라가 원상태로 복귀한 후에 fsm 업뎃해주기 위해. 여기서 업뎃하면 안댐
    }
 public void MakingQuest()
 {
     AudioThing.GetInstance().PlaySFX(AudioThing.E_SFX.UNDERTAKE);
     //카메라 애니메이션 이동 문제로 인하여 ui 작업을 qm 에서는 메인캠 애님에서 처리하도록 한다.
     HandManager.GetInstance().HandlingMonsterHuntingCommission();
     MainCamAnim.GetInstance().CamToPosMaking();
 }
Beispiel #3
0
 void Awake()
 {
     instance           = this;
     mainCameraAnimator = Camera.main.GetComponent <Animator>();
 }