Esempio n. 1
0
    public override void OnRoomEnter()
    {
        base.OnRoomEnter();

        // Verify...
        {
            m_gcAudioManager = GameInstance.Object.GetAudioManager();
            GAssert.Assert(null != m_gcAudioManager, "Unable to get audio manager");

            m_gcRenderer = GetComponent <SpriteRenderer>();
            GAssert.Assert(null != m_gcRenderer, "Unable to get sprite renderer!");

            GAssert.Assert(null != m_goLaser, "Floating Laser properties not setup in editor!");
            GAssert.Assert(null != m_WarmUpMat, "Floating Laser properties not setup in editor!");
            GAssert.Assert(null != m_InactiveMat, "Floating Laser properties not setup in editor!");
            GAssert.Assert(null != m_ActiveMat, "Floating Laser properties not setup in editor!");
        }


        // Init
        LaserOff(false);
        m_bBehaviourCanUpdate = true;
        m_iState = ELaserState._IDLE_OFF;
        m_gcRenderer.material = m_InactiveMat;
        m_fNextEventTime      = TimerManager.fGameTime + (m_fLaserInactiveTime - Types.s_fDUR_FloatingLaserWarmUp);

        // Warn Players that this level contains lasers...
        m_gcAudioManager.PlayAudio(EGameSFX._SFX_FLOATING_LASER_LEVEL_WARNING);
    }