Ejemplo n.º 1
0
 private void WhenObjBecameInvisible(bool isRightNow = false)
 {
     ActorVisibleManager.Instance.SetShow(this.uuid, false, this.IsIgnorePeopleShowMaximumType());
     if (!this.m_isInit)
     {
         this.m_isInit       = true;
         this.m_isPeopleShow = false;
     }
     else
     {
         if (!this.m_isPeopleShow)
         {
             return;
         }
         this.m_isPeopleShow = false;
     }
     this.ShowHeadInfo(false);
     this.ShowWeaponFX(false);
     if (isRightNow)
     {
         ShaderEffectUtils.SetFadeRightNow(this.alphaControls, true);
         this.ShowAnims(false);
         this.ShowSMRs(false);
     }
     else
     {
         ShaderEffectUtils.SetFade(this.alphaControls, true, delegate
         {
             this.ShowAnims(false);
             this.ShowSMRs(false);
         });
     }
 }
Ejemplo n.º 2
0
    private void SphereCastAll()
    {
        for (int i = 0; i < this.ids.get_Count(); i++)
        {
            EntityParent entityByID = EntityWorld.Instance.GetEntityByID(this.ids.get_Item(i));
            if (entityByID != null)
            {
                ShaderEffectUtils.SetFadeRightNow(entityByID.alphaControls, false);
            }
        }
        Ray   ray = new Ray(base.get_transform().get_position(), base.get_transform().get_forward());
        float num = Vector3.Distance(this.GetRolePositionWithHeight(), base.get_transform().get_position());

        RaycastHit[] array = Physics.SphereCastAll(ray, 0.5f, num);
        string       text  = string.Empty;

        RaycastHit[] array2 = array;
        for (int j = 0; j < array2.Length; j++)
        {
            RaycastHit  raycastHit = array2[j];
            ActorParent component  = raycastHit.get_collider().get_gameObject().GetComponent <ActorParent>();
            if (!(component == null))
            {
                if (component is ActorMonster || component is ActorCityPlayer)
                {
                    text = text + raycastHit.get_collider().get_gameObject().get_name() + ", ";
                    ShaderEffectUtils.SetFadeRightNow(component.GetEntity().alphaControls, true);
                    this.ids.Add(component.GetEntity().ID);
                }
            }
        }
    }
Ejemplo n.º 3
0
    private void SetFlashLight(bool flash)
    {
        Material material;

        if (flash)
        {
            material = ShaderEffectUtils.CreateAutoFlashLightMat(this.TimeOnce, this.Interval);
        }
        else
        {
            material = null;
        }
        Image component = base.GetComponent <Image>();

        if (component != null)
        {
            component.set_material(material);
        }
        else
        {
            RawImage component2 = base.GetComponent <RawImage>();
            if (component2 != null)
            {
                component2.set_material(material);
            }
        }
    }
Ejemplo n.º 4
0
    protected void SetPlayerActor(ActorPlayer actorPlayer, Action logicCallback)
    {
        AvatarModel avatarModel = DataReader <AvatarModel> .Get(this.FixModelID);

        base.Actor            = actorPlayer;
        actorPlayer.theEntity = this;
        base.Actor.FixGameObject.set_name(base.ID.ToString());
        base.Actor.FixGameObject.SetActive(true);
        base.Actor.InitActionPriorityTable();
        base.Actor.CanAnimatorApplyMotion = false;
        base.Actor.DataLayerState         = ((avatarModel.collideOff <= 0) ? 0 : 1);
        base.Actor.DefaultModelHeight     = avatarModel.defaultModelHeight;
        base.Actor.ModelHeight            = avatarModel.defaultModelHeight;
        base.Actor.IsLockModelDir         = (avatarModel.lockDirection == 1);
        base.Actor.RotateSpeed            = avatarModel.RotateSpeed;
        base.Actor.RotateInterval         = (float)avatarModel.rotateInterval;
        base.Actor.StartRotateAngle       = (float)avatarModel.startAngle;
        base.Actor.FinishRotateAngle      = (float)avatarModel.finishAngle;
        base.Actor.FloatRate = avatarModel.floatProba;
        ShadowController.ShowShadow(base.ID, base.Actor, false, this.FixModelID);
        ShaderEffectUtils.InitShaderRenderers(base.Actor.FixTransform, this.shaderRenderers, ref this.shadowRenderer, ref this.shadowSlicePlane);
        ShaderEffectUtils.InitHitEffects(this.shaderRenderers, this.hitControls);
        ShaderEffectUtils.InitTransparencys(this.shaderRenderers, this.alphaControls);
        ShaderEffectUtils.SetFadeRightNow(this.alphaControls, false);
        ShaderEffectUtils.SetOutlineStatus(base.Actor.FixTransform, LuminousOutline.Status.Normal);
        if (avatarModel.curve == 1)
        {
            ShaderEffectUtils.SetMeshRenderToLayerFXDistortion(base.Actor.FixTransform);
        }
        this.InitBillboard((float)avatarModel.height_HP, avatarModel.bloodBar);
        WaveBloodManager.Instance.AddWaveBloodControl(base.Actor.FixTransform, (float)avatarModel.height_Damage, base.ID);
        if (this.IsInBattle)
        {
            if (this.IsDead)
            {
                CommandCenter.ExecuteCommand(base.Actor.FixTransform, new PlayActionCmd
                {
                    actName    = "die",
                    jumpToPlay = true,
                    percent    = 1f
                });
            }
            else
            {
                base.Actor.CastAction("born", true, 1f, 0, 0, string.Empty);
            }
        }
        else
        {
            base.Actor.CastAction("idle", true, 1f, 0, 0, string.Empty);
        }
        if (logicCallback != null)
        {
            logicCallback.Invoke();
        }
        this.InitActorState();
    }
Ejemplo n.º 5
0
 public virtual void DieEndDefuse()
 {
     this.FusePetID = 0;
     this.ModelID   = this.ModelIDBackUp;
     this.SetSkillDic(this.SkillDicBackUp);
     this.IsFuse = false;
     ShaderEffectUtils.SetFade(this.alphaControls, false, null);
     EventDispatcher.Broadcast <bool>(ShaderEffectEvent.ENABLE_SCREEN_LENS, false);
     this.IsDieEnd = true;
 }
Ejemplo n.º 6
0
    private bool CreateMaterials()
    {
        string text  = "Hidden/Amplify Motion/Debug";
        string text2 = "Hidden/Amplify Motion/DebugBlack";
        string text3 = "Hidden/LensOnOffCombine";
        string text4 = "Hidden/Amplify Motion/SolidVectorsMobile";

        ShaderEffectUtils.SafeCreateMaterial(ref this.m_debugMaterial, text);
        ShaderEffectUtils.SafeCreateMaterial(ref this.m_debugBlackMaterial, text2);
        ShaderEffectUtils.SafeCreateMaterial(ref this.m_combineMaterial, text3);
        ShaderEffectUtils.SafeCreateMaterial(ref this.m_solidVectorsMaterial, text4);
        return(ShaderEffectUtils.CheckMaterialAndShader(this.m_debugMaterial, text) && ShaderEffectUtils.CheckMaterialAndShader(this.m_debugBlackMaterial, text2) && ShaderEffectUtils.CheckMaterialAndShader(this.m_combineMaterial, text3) && ShaderEffectUtils.CheckMaterialAndShader(this.m_solidVectorsMaterial, text4));
    }
 private void DealOcclusion()
 {
     this.hDirection     = (new Vector3(base.get_transform().get_position().x, 0f, base.get_transform().get_position().z) - new Vector3(this.target.get_position().x, 0f, this.target.get_position().z)).get_normalized();
     this.targetPosition = this.target.get_position() + this.hDirection * 0.01f + new Vector3(0f, 0.5f, 0f);
     this.direction      = (base.get_transform().get_position() - this.targetPosition).get_normalized();
     this.hits           = null;
     this.distance       = Vector3.Distance(this.targetPosition, base.get_transform().get_position());
     this.hits           = Physics.RaycastAll(this.targetPosition, this.direction, this.distance);
     if (this.hits != null)
     {
         for (int i = 0; i < this.m_listLastObj.get_Count(); i++)
         {
             this.ihit = 0;
             while (this.ihit < this.hits.Length)
             {
                 if (this.IsOcclusion(this.hits[this.ihit]))
                 {
                     if (this.m_listLastObj.get_Item(i) != null && this.m_listLastObj.get_Item(i) == this.hits[this.ihit].get_collider().get_gameObject())
                     {
                         break;
                     }
                 }
                 this.ihit++;
             }
             if (this.ihit >= this.hits.Length && this.m_listLastObj.get_Item(i) != null)
             {
                 ShaderEffectUtils.SetIsNearCamera(this.m_listLastObj.get_Item(i).get_transform(), false);
             }
         }
         this.m_listLastObj.Clear();
         for (int j = 0; j < this.hits.Length; j++)
         {
             if (this.IsOcclusion(this.hits[j]))
             {
                 ShaderEffectUtils.SetIsNearCamera(this.hits[j].get_collider().get_transform(), true);
                 this.m_listLastObj.Add(this.hits[j].get_collider().get_gameObject());
             }
         }
     }
     else
     {
         for (int k = 0; k < this.m_listLastObj.get_Count(); k++)
         {
             ShaderEffectUtils.SetIsNearCamera(this.m_listLastObj.get_Item(k).get_transform(), false);
         }
         this.m_listLastObj.Clear();
     }
 }
Ejemplo n.º 8
0
 private void InitRes()
 {
     if (!ShaderEffectUtils.CheckSupport())
     {
         base.set_enabled(false);
         return;
     }
     if (!this.CreateMaterials())
     {
         this.DestroyMaterials();
         base.set_enabled(false);
         return;
     }
     this.m_PP_Holywood = base.get_gameObject().AddMissingComponent <PP_Holywood>();
     this.m_PP_Holywood.Initialization();
     this.m_PP_Vignette = base.get_gameObject().AddMissingComponent <PP_Vignette>();
     this.m_PP_Vignette.Initialization();
     this.UpdateRenderTextures();
 }
Ejemplo n.º 9
0
 private bool InitResources()
 {
     if (this.m_shaderNames.get_Count() == 0 || this.m_materials.get_Count() > 0)
     {
         return(true);
     }
     if (!ShaderEffectUtils.CheckSupport())
     {
         base.set_enabled(false);
         return(false);
     }
     if (!this.CreateMaterials())
     {
         this.DestroyMaterials();
         base.set_enabled(false);
         return(false);
     }
     this.GetMaterials();
     return(true);
 }
Ejemplo n.º 10
0
 public void AwakeSelf(int _type, long _uuid, long _ownerId, IActorVisible _interfaceGroup)
 {
     this.uuid           = _uuid;
     this.ownerId        = _ownerId;
     this.m_objType      = _type;
     this.interfaceGroup = _interfaceGroup;
     if (this.IsSelfManagerType())
     {
         this.m_actor = base.GetComponent <Actor>();
         Renderer renderer = null;
         ShaderEffectUtils.InitShaderRenderers(base.get_transform(), this.m_listSmr, ref renderer, ref this.m_shadowSlicePlane);
         ShaderEffectUtils.InitTransparencys(this.m_listSmr, this.m_alphaControls);
     }
     else
     {
         this.m_actorParent = base.GetComponent <ActorParent>();
     }
     this.m_listAnimation.AddRange(base.get_transform().GetComponentsInChildren <Animation>(true));
     this.m_listAnimator.AddRange(base.get_transform().GetComponentsInChildren <Animator>(true));
     this.UpdateShow(true);
 }
Ejemplo n.º 11
0
    private void DealOcclusion(EntityParent pet)
    {
        Transform fixTransform = pet.Actor.FixTransform;
        Vector3   normalized   = (new Vector3(base.get_transform().get_position().x, 0f, base.get_transform().get_position().z) - new Vector3(fixTransform.get_position().x, 0f, fixTransform.get_position().z)).get_normalized();
        Vector3   vector       = fixTransform.get_position() + normalized * 0.01f + new Vector3(0f, 0.5f, 0f);
        Vector3   normalized2  = (base.get_transform().get_position() - vector).get_normalized();
        float     num          = Vector3.Distance(vector, base.get_transform().get_position());

        RaycastHit[] array = Physics.RaycastAll(vector, normalized2, num);
        for (int i = 0; i < array.Length; i++)
        {
            ActorCollider component = array[i].get_collider().get_transform().GetComponent <ActorCollider>();
            Debug.LogError("ac=" + component);
            if (component != null && component.Actor != null && component.Actor.GetEntity() != null)
            {
                Debug.LogError("ac.Actor=" + component.Actor);
                Debug.LogError("ac.Actor.GetEntity()=" + component.Actor.GetEntity());
                long iD = component.Actor.GetEntity().ID;
                this.monsterIds.Add(iD);
                ShaderEffectUtils.SetIsNearCamera(array[i].get_collider().get_transform(), true);
            }
        }
    }
Ejemplo n.º 12
0
    private void UpdateRenderTextures()
    {
        Camera component = base.GetComponent <Camera>();
        int    width     = Mathf.FloorToInt((float)component.get_pixelWidth() + 0.5f);
        int    height    = Mathf.FloorToInt((float)component.get_pixelHeight() + 0.5f);

        if (this.QualityLevel == RenderManager.Quality.Mobile)
        {
            this.m_width  = width;
            this.m_height = height;
        }
        else
        {
            this.m_width  = width;
            this.m_height = height;
        }
        RenderTextureFormat    fmt  = 0;
        RenderTextureReadWrite rw   = 1;
        RenderTextureFormat    fmt2 = 0;
        RenderTextureReadWrite rw2  = 0;

        ShaderEffectUtils.SafeCreateRenderTexture(ref this.m_motionRT, "Motion", 24, fmt, rw, this.m_width, this.m_height);
        ShaderEffectUtils.SafeCreateRenderTexture(ref this.m_combinedRT, "Combined", 0, fmt2, rw2, this.m_width, this.m_height);
    }
Ejemplo n.º 13
0
 public void RemoveAVC()
 {
     ShaderEffectUtils.SetFadeRightNow(this.alphaControls, false);
     this.ShowAnims(true);
     this.ShowSMRs(true);
 }
Ejemplo n.º 14
0
 private void DestroyMaterials()
 {
     ShaderEffectUtils.SafeDestroyMaterial(ref this.m_debugMaterial);
     ShaderEffectUtils.SafeDestroyMaterial(ref this.m_debugBlackMaterial);
 }
Ejemplo n.º 15
0
 private void OnTriggerEnter(Collider other)
 {
     ShaderEffectUtils.SetIsNearCamera(other.get_transform(), true);
 }
Ejemplo n.º 16
0
 private void OnTriggerExit(Collider other)
 {
     ShaderEffectUtils.SetIsNearCamera(other.get_transform(), false);
 }