예제 #1
0
    //=====================================================

    void OnFadeOutCompleteEvent()
    {
        m_CommonRoomMode = eCommonRoomMode.Exiting;

        GameManager.UploadPlayerDataToServer();

        switch (m_DestinationIndex)
        {
        case 0:
            GameManager.Instance.SetNextLocation(eLocation.HIGHSCORES_ROOM, false);
            Application.LoadLevel("HighScoresRoom");
            break;

        case 1:
            GameManager.Instance.SetNextLocation(eLocation.CLOTHING_ROOM, false);
            Application.LoadLevel("ClothingRoom");
            break;

        case 2:
            GameManager.Instance.SetNextLocation(eLocation.TRADING_CARD_ROOM, false);
            Application.LoadLevel("TradingCardsRoom");
            break;

        case 3:
            GameManager.Instance.SetNextLocation(eLocation.MAIN_HALL, false);
            Application.LoadLevel("MainHall");
            break;
        }
    }
예제 #2
0
    //=====================================================

    public void OnButtonPressed_HighScores()
    {
        if (m_CommonRoomMode == eCommonRoomMode.Idle)
        {
            m_CommonRoomMode   = eCommonRoomMode.WalkingToDestination;
            m_DestinationIndex = 0;
        }
    }
예제 #3
0
    //=====================================================

    public void OnButtonPressed_Clothing()
    {
        if (m_CommonRoomMode == eCommonRoomMode.Idle)
        {
            m_CommonRoomMode   = eCommonRoomMode.WalkingToDestination;
            m_DestinationIndex = 1;
        }
    }
예제 #4
0
    //=====================================================

    public void OnButtonPressed_TradingCards()
    {
        if (m_CommonRoomMode == eCommonRoomMode.Idle)
        {
            m_CommonRoomMode   = eCommonRoomMode.WalkingToDestination;
            m_DestinationIndex = 2;

            //Animator CurAnimator = m_pfbFairy.GetComponent<Animator>();
            //CurAnimator.Play( "Locomotion" , -1 , 0.0f );
        }
    }
예제 #5
0
    //=====================================================

    void Start()
    {
        m_CommonRoomMode = eCommonRoomMode.FadingIn;

        if (AudioManager.Instance != null)
        {
            AudioManager.Instance.PlayMusic(eLocation.COMMON_ROOM);
        }

        // Create fairy prefab
        m_pfbFairy = Instantiate(GameDataManager.Instance.GetPrefab((eFairy)GameDataManager.Instance.PlayerCurrentFairy, true));
        m_pfbFairy.transform.localPosition = new Vector3(-0.4f, 0.05f, 20.0f);
    }
예제 #6
0
    //=====================================================

    void OnFadeInCompleteEvent()
    {
        m_CommonRoomMode = eCommonRoomMode.Idle;
    }
예제 #7
0
    //=====================================================

    public void OnCommonRoomEvent()
    {
        m_CommonRoomMode = eCommonRoomMode.FadingOut;
        ScreenManager.FadeOut();
        m_DestinationIndex = 3;
    }
예제 #8
0
    //=====================================================

    void Update()
    {
        //Time.timeScale = 0.2f;
        float fDeltaTime = Time.deltaTime;

        switch (m_CommonRoomMode)
        {
        case eCommonRoomMode.FadingIn:
            break;

        case eCommonRoomMode.Idle:
            break;

        case eCommonRoomMode.WalkingToDestination:


            Vector3 CurrentRot   = m_pfbFairy.transform.eulerAngles;
            Vector3 DestRot      = (m_RoomDestinationPositions[m_DestinationIndex].transform.localPosition - m_pfbFairy.transform.localPosition).normalized;
            float   DestRotAngle = Mathf.Atan2(-DestRot.z, DestRot.x) * Mathf.Rad2Deg;
            //Debug.Log( DestRotAngle );
            DestRotAngle += 90.0f;

            float DeltaRot = (DestRotAngle - CurrentRot.y);
            if (DeltaRot < -180.0f)
            {
                DeltaRot += 360.0f;
            }
            CurrentRot.y += DeltaRot * (fDeltaTime * 1.4f);

            m_pfbFairy.transform.eulerAngles = CurrentRot;

            Animator CurAnimator = m_pfbFairy.GetComponent <Animator>();
            CurAnimator.SetBool("IsWalking", true);

            Vector3 CurrentPos = m_pfbFairy.transform.localPosition;
            Vector3 DestPos    = m_RoomDestinationPositions[m_DestinationIndex].transform.localPosition;

            Vector3 DeltaVec = (DestPos - CurrentPos);
            CurrentPos += m_pfbFairy.transform.forward * fDeltaTime * 1.6f;

            // Have we reached the destination position?
            if (DeltaVec.magnitude < 0.35f)
            {
                CurAnimator.SetBool("IsWalking", false);
            }
            if (DeltaVec.magnitude < 0.15f)
            {
                m_CommonRoomMode = eCommonRoomMode.FadingOut;
                ScreenManager.FadeOut();
            }

            m_pfbFairy.transform.localPosition = CurrentPos;
            break;

        case eCommonRoomMode.FadingOut:
            break;

        case eCommonRoomMode.Exiting:
            break;
        }
    }