Example #1
0
    public override void Update(float dt)
    {
        //  更新飞天陷阱
        if (m_FlyTrapUpdateProc != null)
        {
            m_FlyTrapUpdateProc(dt);
            return;
        }

        //  可见-已经触发
        if (Entity.IsVisible())
        {
            m_timePassed += dt;
            if (m_timePassed >= Entity.model.rate)
            {
                if (EntityTypeUtil.IsFlyTrap(Entity.model))
                {
                    m_FlyTrapUpdateProc = UpdateFlyTrace;
                }
                else
                {
                    ProcessExplode(false);
                }
            }
        }
        //  不可见-检测是否触发
        else if (IsTriggered())
        {
            Entity.ShowEntity();
        }
    }