Exemple #1
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// ボス画像の出現
    /// </summary>
    void BossImageAppearance()
    {
        //移動
        Transposition(BossImage[m_numAppearingImages].gameObject,
                      m_initPosBossImage[m_numAppearingImages], Vector3.zero, m_countTimeState, m_bossImageAppearanceTime);

        //倍率
        BossImage[m_numAppearingImages].transform.localScale
            = Vector3.one * (Mathf.Min((m_countTimeState / m_bossImageAppearanceTime) + 1, m_bossImageMagnification));

        //回転
        BossImage[m_numAppearingImages].transform.Rotate(Vector3.forward * (m_rotationSpeedOfBossImage * Time.deltaTime));

        //SEの再生
        if (m_countRotationSoundInterval >= m_rotationSoundInterval)
        {
            MySoundManager.Instance.Play(SeCollection.SwordAttack,
                                         true, Camera.main.transform.position.x, Camera.main.transform.position.y, Camera.main.transform.position.z);
            m_countRotationSoundInterval = 0;
        }
        m_countRotationSoundInterval += Time.deltaTime;

        //出現時間を超えた
        if (m_countTimeState >= m_bossImageAppearanceTime)
        {
            BossImage[m_numAppearingImages].transform.localPosition = Vector3.zero;
            BossImage[m_numAppearingImages].transform.eulerAngles   = Vector3.zero;
            m_bossImageAppearanceState = BossImageAppearanceStatus.Appeal;
        }
    }
Exemple #2
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// 動作処理3
    /// </summary>
    void MovingProcess3()
    {
        //初めて状態が変わった(個別設定)
        if (m_openingState != m_openingStatePrev)
        {
            Sign.SetActive(false);
            King.SetActive(false);
            Boss.SetActive(true);
            m_bossImageAppearanceState = BossImageAppearanceStatus.Emergence;
            for (var i = m_numAppearingImages; i < BossImage.Length; i++)
            {
                //ボス画像を指定の位置へ
                BossImage[i].transform.localPosition = m_initPosBossImage[i] * (1 + (1.0f / (m_screenSize.x / BossImage[i].rectTransform.sizeDelta.x)));
            }

            m_openingStatePrev = m_openingState;
        }

        m_countTimeState += Time.deltaTime;

        //了解ボタンの押下
        if (m_isPressedOk)
        {
            m_bossImageAppearanceState = BossImageAppearanceStatus.LineUp;
        }

        //ボス画像が出現
        BossImageAppear();
    }
Exemple #3
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// ボス画像のアピール
    /// </summary>
    void BossImageAppeal()
    {
        //アピール文字
        m_appealTextPrev = AppealText.text;
        AppealText.text  = m_bossImageNames[m_numAppearingImages]
                           .Substring(0, (int)(m_bossImageNames[m_numAppearingImages].Length * ((m_countTimeState - m_bossImageAppearanceTime) / m_bossImageAppealTime)));

        //アピール文字が増えた
        if (m_appealTextPrev != AppealText.text)
        {
            MySoundManager.Instance.Play(SeCollection.Explosion,
                                         true, Camera.main.transform.position.x, Camera.main.transform.position.y, Camera.main.transform.position.z);
        }

        //アピールタイムが終わった
        if (m_countTimeState - m_bossImageAppearanceTime >= m_bossImageAppealTime)
        {
            m_bossImageAppearanceState = BossImageAppearanceStatus.LineUp;
        }
    }