Ejemplo n.º 1
0
 /// <summary>
 /// 当可见模式发生改变时
 /// </summary>
 /// <param name="visible_mode"></param>
 public void OnVisibleChange(EVisibleMode visible_mode)
 {
     if (visible_mode == EVisibleMode.Invisible)
     {
         ShadowType = ShadowType.NONE;
         RealShadow = false;
     }
     else if (visible_mode == EVisibleMode.Name)
     {
         if (ActorHelper.GetIsHideShadow(mOwner.TypeIdx) == true)
         {
             ShadowType = ShadowType.NONE;
         }
         else
         {
             ShadowType = ShadowType.FAKE_SHADOW;
         }
         RealShadow = false;
     }
     else if (visible_mode == EVisibleMode.Visible)
     {
         if (ActorHelper.GetIsHideShadow(mOwner.TypeIdx) == true)
         {
             ShadowType = ShadowType.NONE;
         }
         else
         {
             if (mOwner.IsPlayer())
             {
                 ShadowType = ShadowType.REAL_SHADOW;
                 // 此时的realshadow由cullmanger来设置
             }
             else
             {
                 ShadowType = ShadowType.FAKE_SHADOW;
                 RealShadow = false;
             }
         }
     }
     else
     {
         ShadowType = ShadowType.NONE;
         RealShadow = false;
     }
 }
Ejemplo n.º 2
0
        // ------------------------------------------------
        // 接口的实现
        // ------------------------------------------------
        public override void InitBehaviors()
        {
            mOwner.SubscribeActorEvent(Actor.ActorEvent.AFTER_CREATE, OnAfterCreate);
            mOwner.SubscribeActorEvent(Actor.ActorEvent.DEAD, OnDead);

            if (ActorHelper.GetIsHideShadow(mOwner.TypeIdx) == true)
            {
                mShadowType = ShadowType.NONE;
            }
            else
            {
                if (mOwner.IsPlayer())
                {
                    mShadowType = ShadowType.REAL_SHADOW;
                }
                else
                {
                    mShadowType = ShadowType.FAKE_SHADOW;
                }
            }
        }