//--------------------EVENT RECIEVERS--------------------------------------------------
    //-------------------------------------------------------------------------------------

    private void HandleUpdateChapter(ChapterState _state)
    {
        Debug.Log("Event Recieved");
        ApplicationModel.Chapter = _state;
        ApplicationModel.Page    = PageState.One;
        UpdateState(Direction.None);
    }
示例#2
0
    public void Reset()
    {
        StartCoroutine("WaitForAudio");

        chapterState   = ChapterState.Game;
        Time.timeScale = 1;
    }
 /// <summary>
 /// 改变章节的获取状态
 /// </summary>
 /// <param name="nc"></param>
 /// <param name="cs"></param>
 private void ChangeGetState(NovelChapter nc, ChapterState cs)
 {
     lock (this.thisLock)
     {
         nc.ChapterState = cs;
     }
     this.TellNovelDirectoryListUpdated(this);
 }
示例#4
0
    public void SetState(ChapterState chapterState)
    {
        tokenTriggerQueue = chapterState.tokenTriggerQueue;

        var groups = FindObjectOfType <TileManager>().GetAllTileGroups();

        previousGroup = (from tg in groups
                         where tg.GUID == chapterState.previousGroupGUID
                         select tg).First();
    }
 // Public Methods ----------------------------------------------------------------------------
 // Private Methods ---------------------------------------------------------------------------
 /// <summary>
 /// Dispatches Events. Internal Events relative to this application
 /// </summary>
 /// <param name="_event">Event.</param>
 private void DispatchStateEvent(string _event,ChapterState _state)
 {
     switch(_event){
         case "OnUpdateChapter":
             if(OnUpdateChapter != null) {
                 OnUpdateChapter(_state);
             }
         break;
     }
 }
示例#6
0
 /// <summary>
 /// 改变章节的获取状态
 /// </summary>
 /// <param name="nc"></param>
 /// <param name="cs"></param>
 private void ChangeGetState(NovelChapter nc, ChapterState cs)
 {
     lock (this.thisLock)
     {
         nc.ChapterState = cs;
     }
     if (this.NovelDirectoryListUpdated != null)
     {
         this.NovelDirectoryListUpdated(this);
     }
 }
    //Sets Chapter Data and adds to ChapterDataList
    private static void UpdateChapterList(ChapterState _chapterState, int _pageCount)
    {
        //Create new ChapterData object and set stuff.
        ChapterData _chapterData = new ChapterData();
        _chapterData.State = _chapterState;
        _chapterData.PageCount = _pageCount;
        _chapterData.ID = (int)_chapterState.GetHashCode();//Get ID from enum HashCode 0-9

        //Update dictionary with ChapterState and ChapterData
        ChapterDataList.Add(_chapterData);
    }
示例#8
0
    //Sets Chapter Data and adds to ChapterDataList
    private static void UpdateChapterList(ChapterState _chapterState, int _pageCount)
    {
        //Create new ChapterData object and set stuff.
        ChapterData _chapterData = new ChapterData();

        _chapterData.State     = _chapterState;
        _chapterData.PageCount = _pageCount;
        _chapterData.ID        = (int)_chapterState.GetHashCode(); //Get ID from enum HashCode 0-9

        //Update dictionary with ChapterState and ChapterData
        ChapterDataList.Add(_chapterData);
    }
示例#9
0
    // Public Methods ----------------------------------------------------------------------------


    // Private Methods ---------------------------------------------------------------------------

    /// <summary>
    /// Dispatches Events. Internal Events relative to this application
    /// </summary>
    /// <param name="_event">Event.</param>
    private void DispatchStateEvent(string _event, ChapterState _state)
    {
        switch (_event)
        {
        case "OnUpdateChapter":
            if (OnUpdateChapter != null)
            {
                OnUpdateChapter(_state);
            }
            break;
        }
    }
示例#10
0
 public void Dead()
 {
     chapterState = ChapterState.Dead;
     if (balanceSlider.value <= 0)
     {
         gameOverText.text = "世界已失衡\n遊戲失敗";
     }
     if (playerController.curHealth <= 0)
     {
         gameOverText.text = "血量耗盡\n遊戲失敗";
     }
     StartCoroutine("GameOver");
 }
示例#11
0
        internal Chapter(Serie a_serie, string a_url, string a_title, ulong a_id, ChapterState a_state,
                         ulong a_limiter_order, bool a_visited)
            : base(a_id)
        {
            Visited      = a_visited;
            m_pages      = new PagesCachedList(this);
            LimiterOrder = a_limiter_order;
            Serie        = a_serie;
            URL          = HtmlDecode(a_url);
            m_state      = a_state;

            if (m_state == ChapterState.Cancelling)
            {
                m_state = ChapterState.Initial;
            }
            if (m_state == ChapterState.DownloadingPages)
            {
                m_state = ChapterState.Initial;
            }
            if (m_state == ChapterState.DownloadingPagesList)
            {
                m_state = ChapterState.Initial;
            }
            if (m_state == ChapterState.Waiting)
            {
                m_state = ChapterState.Initial;
            }
            if (m_state == ChapterState.Zipping)
            {
                m_state = ChapterState.Initial;
            }

            a_title = a_title.Trim();
            a_title = a_title.Replace("\t", " ");
            while (a_title.IndexOf("  ") != -1)
            {
                a_title = a_title.Replace("  ", " ");
            }
            Title = HtmlDecode(a_title);
        }
示例#12
0
    public void SaveState(Engine engine, string fullPath)
    {
        //TODO return a bool for success?
        campaignState    = CampaignState.GetState();
        partyState       = PartyState.GetState(engine);
        triggerState     = engine.triggerManager.GetState();
        objectiveState   = engine.objectiveManager.GetState();
        monsterState     = GlowEngine.FindObjectOfType <MonsterManager>().GetState();
        chapterState     = engine.chapterManager.GetState();
        tileState        = engine.tileManager.GetState();
        interactionState = engine.interactionManager.GetState();
        camState         = GlowEngine.FindObjectOfType <CamControl>().GetState();

        //string basePath = Path.Combine( Environment.ExpandEnvironmentVariables( "%userprofile%" ), "Documents", "Your Journey", "Saves" );
        string basePath = GetFullSavePath();

        if (basePath is null)
        {
            return;
        }

        string output = JsonConvert.SerializeObject(this, Formatting.Indented, new Vector3Converter());

        //string outpath = Path.Combine( basePath, "SAVE" + saveIndex + ".sav" );
        Debug.Log("SaveState::SAVING TO: " + fullPath);

        try
        {
            using (var stream = File.CreateText(fullPath))
            {
                stream.Write(output);
            }
        }
        catch
        {
            Debug.Log("Could not save the state");
        }
    }
 //--------------------EVENT RECIEVERS--------------------------------------------------
 //-------------------------------------------------------------------------------------
 private void HandleUpdateChapter(ChapterState _state)
 {
     Debug.Log("Event Recieved");
     ApplicationModel.Chapter = _state;
     ApplicationModel.Page = PageState.One;
     UpdateState(Direction.None);
 }
示例#14
0
 public void lose()
 {
     chapterState = ChapterState.Lose;
     StartCoroutine("Lose");
 }
示例#15
0
 public void win()
 {
     chapterState = ChapterState.Win;
     StartCoroutine("Win");
 }
示例#16
0
    void Start()
    {
        chapterState = ChapterState.Game;
        usually.TransitionTo(10f);
        //balanceValue = PlayerPrefs.GetFloat("StaticObject.balanceSlider");
        //playerController.curHealth = PlayerPrefs.GetFloat("StaticObject.playerHealth");
        playerController.HealthSlider.value = playerController.curHealth;
        balanceSlider.value = balanceValue;
        balanceText.text    = Mathf.Floor(balanceValue).ToString("0");
        Debug.Log(balanceValue);
        Debug.Log(playerController.curHealth);
        PlayerPrefs.GetInt("StaticObject.G2", StaticObject.G2);
        FadeOutAni   = FadeOut.GetComponent <Animator>();
        teachHintAni = teachHint.GetComponent <Animator>();
        downHintAni  = downHint.GetComponent <Animator>();
        Application.targetFrameRate = 100;          //幀數

        if (ChapterName == "1")
        {
            AirFloor.SetActive(false);
            stoneDoorAni = stoneDoorObj.GetComponent <Animator>();

            //↓校內展需要程式,非正式版本
            StaticObject.G1 = 0;
            PlayerPrefs.SetInt("StaticObject.G1", StaticObject.G1);
            StaticObject.G2 = 0;
            PlayerPrefs.SetInt("StaticObject.G2", StaticObject.G2);
            StaticObject.G3 = 0;
            PlayerPrefs.SetInt("StaticObject.G3", StaticObject.G3);
            StaticObject.G4 = 0;
            PlayerPrefs.SetInt("StaticObject.G4", StaticObject.G4);
            StaticObject.B1 = 0;
            PlayerPrefs.SetInt("StaticObject.B1", StaticObject.B1);
            StaticObject.B2 = 0;
            PlayerPrefs.SetInt("StaticObject.B2", StaticObject.B2);
            StaticObject.B3 = 0;
            PlayerPrefs.SetInt("StaticObject.B3", StaticObject.B3);
            StaticObject.B4 = 0;
            PlayerPrefs.SetInt("StaticObject.B4", StaticObject.B4);
        }
        else if (ChapterName == "2")
        {
            //↓校內展需要程式,非正式版本
            StaticObject.G1 = 0;
            PlayerPrefs.SetInt("StaticObject.G1", StaticObject.G1);
            StaticObject.G2 = 0;
            PlayerPrefs.SetInt("StaticObject.G2", StaticObject.G2);
            StaticObject.G3 = 0;
            PlayerPrefs.SetInt("StaticObject.G3", StaticObject.G3);
            StaticObject.G4 = 0;
            PlayerPrefs.SetInt("StaticObject.G4", StaticObject.G4);
            StaticObject.B1 = 0;
            PlayerPrefs.SetInt("StaticObject.B1", StaticObject.B1);
            StaticObject.B2 = 0;
            PlayerPrefs.SetInt("StaticObject.B2", StaticObject.B2);
            StaticObject.B3 = 0;
            PlayerPrefs.SetInt("StaticObject.B3", StaticObject.B3);
            StaticObject.B4 = 0;
            PlayerPrefs.SetInt("StaticObject.B4", StaticObject.B4);
            G1.SetActive(true);
            G2.SetActive(true);
        }

        //正式版本應該是這樣的

        /*if (StaticObject.G1 == 1)
         *      G1.SetActive(true);
         * if (StaticObject.G2 == 1)
         *      G2.SetActive(true);
         * if (StaticObject.G3 == 1)
         *      G3.SetActive(true);
         * if (StaticObject.G4 == 1)
         *      G4.SetActive(true);
         * if (StaticObject.B1 == 1)
         *      B1.SetActive(true);
         * if (StaticObject.B2 == 1)
         *      B2.SetActive(true);
         * if (StaticObject.B3 == 1)
         *      B3.SetActive(true);
         * if (StaticObject.B4 == 1)
         *      B4.SetActive(true);*/
    }
示例#17
0
 public void AddChapter(string name, ChapterState state, string localfilename)
 {
 }