private void ActSelfChangeWeapon() { if (EntityWorld.Instance.ActSelf != null && this.CullingMasks.ContainsKey(RTManager.RtType.Player)) { ShadowController.ShowShadow(EntityWorld.Instance.EntSelf.ID, EntityWorld.Instance.ActSelf, true, 0); } }
public static void RefreshShadows() { if (ShadowController.IsPreviousRealTimeShadowEnable != GameLevelManager.IsRealTimeShadowOn()) { XDict <long, EntityParent> allEntities = EntityWorld.Instance.AllEntities; using (List <EntityParent> .Enumerator enumerator = allEntities.Values.GetEnumerator()) { while (enumerator.MoveNext()) { EntityParent current = enumerator.get_Current(); if (current != null & current.Actor) { if (ShadowController.IsPreviousRealTimeShadowEnable) { ShadowController.SetShadowModelRender(current.Actor.FixTransform, true); } else { ShadowProjector.ShowShadowProjector(current.Actor.FixTransform, true); } ShadowController.ShowShadow(current.ID, current.Actor.FixTransform, false, 0); } } } } ShadowController.IsPreviousRealTimeShadowEnable = GameLevelManager.IsRealTimeShadowOn(); }
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(); }
public static void ShowShadow(long uuid, ActorParent actorParent, bool bHideShadow, int modelId = 0) { if (actorParent is ActorMonster && (actorParent as ActorMonster).GetEntity().IsLogicBoss) { ShadowController.ShowShadow(uuid, actorParent.FixTransform, actorParent, bHideShadow, modelId); } else { ShadowController.ShowShadow(uuid, actorParent.FixTransform, null, bHideShadow, modelId); } }
protected void SetModel(Transform root, int modelID) { base.GetAsyncModel(root, modelID, delegate { AvatarModel avatarModel = DataReader <AvatarModel> .Get(modelID); if (avatarModel == null) { return; } BillboardManager.Instance.AddBillboardsInfo(23, root, (float)avatarModel.height_HP, (long)this.id, false, false, true); HeadInfoManager.Instance.SetName(23, (long)this.id, this.GetName()); ShadowController.ShowShadow((long)this.id, root, false, modelID); }); }
public void CreateActor() { this.AsyncLoadID = EntityWorld.Instance.GetCityPetActorAsync(this.ModelID, delegate(ActorCityPet actorCityPet) { Pet dataPet = DataReader <Pet> .Get(this.TypeID); this.Actor = actorCityPet; actorCityPet.Entity = this; this.Actor.FixGameObject.set_name(this.ID.ToString()); this.Actor.SetScale(PetManagerBase.GetCityPetModelZoom(dataPet, this.ModelID)); ShadowController.ShowShadow(this.ID, this.Actor.FixTransform, false, this.ModelID); ActorVisibleManager.Instance.Add(this.ID, this.Actor.FixTransform, 22, this.OwnerID); this.Show(); }); }
public override void CreateActor() { base.AsyncLoadID = EntityWorld.Instance.GetCityMonsterActorAsync(this.ModelID, delegate(ActorWildMonster actorMonster) { Monster monster = DataReader <Monster> .Get(this.TypeID); base.Actor = actorMonster; base.Actor.InitActionPriorityTable(); actorMonster.theEntity = this; AvatarModel avatarModel = DataReader <AvatarModel> .Get(this.ModelID); BillboardManager.Instance.AddBillboardsInfo(25, base.Actor.FixTransform, (float)avatarModel.height_HP, base.ID, false, true, true); ShadowController.ShowShadow(base.ID, base.Actor.FixTransform, false, this.modelID); LayerSystem.SetGameObjectLayer(base.Actor.FixGameObject, "CityPlayer", 2); ActorVisibleManager.Instance.Add(base.ID, base.Actor.FixTransform, 25, 0L); base.Actor.SetAllCollider(true); this.Show(); }); }
protected void SetModel(Transform root, int modelID) { base.GetAsyncModel(root, modelID, delegate { NPC nPC = DataReader <NPC> .Get(this.npcDataID); AvatarModel avatarModel = DataReader <AvatarModel> .Get(modelID); this.animator = root.GetComponentInChildren <Animator>(); if (this.animator) { AssetManager.AssetOfControllerManager.SetController(this.animator, modelID, false); this.CastAction(this.DefaultIdleActionStatus); this.ChangeAnimationSpeed(); } this.SetCharacterController(root); BillboardManager.Instance.AddBillboardsInfo(31, root, (float)avatarModel.height_HP, (long)this.id, false, true, true); HeadInfoManager.Instance.SetName(31, (long)this.id, GameDataUtils.GetChineseContent(nPC.name, false)); ShadowController.ShowShadow((long)this.id, root, false, modelID); ActorVisibleManager.Instance.Add((long)this.id, root, 31, 0L); this.ShowShopInfo(nPC, root, avatarModel.height_HP); }); }
protected void SetModel(Transform root, int modelID) { base.GetAsyncModel(root, modelID, delegate { Monster monster = DataReader <Monster> .Get(this.monsterDataID); AvatarModel avatarModel = DataReader <AvatarModel> .Get(modelID); CharacterController[] componentsInChildren = root.GetComponentsInChildren <CharacterController>(); if (componentsInChildren != null && componentsInChildren.Length > 0) { for (int i = 0; i < componentsInChildren.Length; i++) { componentsInChildren[i].set_enabled(avatarModel.collideOff == 0); } } this.animator = root.GetComponentInChildren <Animator>(); BillboardManager.Instance.AddBillboardsInfo(25, root, (float)avatarModel.height_HP, (long)this.id, false, true, true); HeadInfoManager.Instance.SetName(25, (long)this.id, GameDataUtils.GetChineseContent(monster.name, false)); ShadowController.ShowShadow((long)this.id, root, false, modelID); ActorVisibleManager.Instance.Add((long)this.id, root, 25, 0L); }); }
protected void SetModel(Transform root, int modelID) { base.GetAsyncModel(root, modelID, delegate { CaiJiPeiZhi caiJiPeiZhi = DataReader <CaiJiPeiZhi> .Get(this.collectionDataID); AvatarModel avatarModel = DataReader <AvatarModel> .Get(modelID); this.animator = root.GetComponentInChildren <Animator>(); if (this.animator) { AssetManager.AssetOfControllerManager.SetController(this.animator, modelID, false); this.ChangeAnimationSpeed(); } this.SetCharacterController(root); BillboardManager.Instance.AddBillboardsInfo(31, root, (float)avatarModel.height_HP, (long)this.id, false, true, true); if (caiJiPeiZhi.name != 0) { HeadInfoManager.Instance.SetName(31, (long)this.id, GameDataUtils.GetChineseContent(caiJiPeiZhi.name, false)); } ShadowController.ShowShadow((long)this.id, root, false, modelID); }); }
protected void SetModel(Transform root, int modelID) { base.GetAsyncModel(root, modelID, delegate { Monster monster = DataReader <Monster> .Get(this.monsterDataID); AvatarModel avatarModel = DataReader <AvatarModel> .Get(modelID); CharacterController[] componentsInChildren = root.GetComponentsInChildren <CharacterController>(); if (componentsInChildren != null && componentsInChildren.Length > 0) { for (int i = 0; i < componentsInChildren.Length; i++) { componentsInChildren[i].set_enabled(avatarModel.collideOff == 0); } } this.animator = root.GetComponentInChildren <Animator>(); BillboardManager.Instance.AddBillboardsInfo(23, root, (float)avatarModel.height_HP, (long)this.id, false, true, true); HeadInfoManager.Instance.SetName(23, (long)this.id, TextColorMgr.GetColorByID(string.Format(GameDataUtils.GetChineseContent((!this.isMultiBoss) ? 505163 : 505164, false), this.monsterLv, GameDataUtils.GetChineseContent(monster.name, false), (!this.isMultiBoss) ? DataReader <YeWaiBOSSJieJi> .Get(this.monsterLv).SingleRank : DataReader <YeWaiBOSSJieJi> .Get(this.monsterLv).ManyRank), (!this.isMultiBoss) ? 1000007 : 1000009)); ShadowController.ShowShadow((long)this.id, root, false, modelID); ActorVisibleManager.Instance.Add((long)this.id, root, 23, 0L); this.AppState(); }); }
protected void SetCityPlayerActor(ActorCityPlayer actorCityPlayer, Action logicCallback) { AvatarModel avatarModel = DataReader <AvatarModel> .Get(this.FixModelID); base.Actor = actorCityPlayer; actorCityPlayer.theEntity = this; base.Actor.FixGameObject.SetActive(true); base.Actor.FixGameObject.set_name(base.ID.ToString()); base.Actor.InitActionPriorityTable(); base.Actor.CanAnimatorApplyMotion = false; ShadowController.ShowShadow(base.ID, base.Actor, false, this.FixModelID); ShaderEffectUtils.InitShaderRenderers(base.Actor.FixTransform, this.shaderRenderers, ref this.shadowRenderer, ref this.shadowSlicePlane); ShaderEffectUtils.InitTransparencys(this.shaderRenderers, this.alphaControls); this.InitBillboard((float)avatarModel.height_HP); LayerSystem.SetGameObjectLayer(base.Actor.FixGameObject, "CityPlayer", 2); ActorVisibleManager.Instance.Add(base.ID, base.Actor.FixTransform, 21, 0L); base.Actor.CastAction("idle", true, 1f, 0, 0, string.Empty); if (logicCallback != null) { logicCallback.Invoke(); } this.InitActorState(); }
public override void CreateActor() { ActorPet petActor = EntityWorld.Instance.GetPetActor(this.FixModelID); Pet pet = DataReader <Pet> .Get(this.TypeID); AvatarModel avatarModel = DataReader <AvatarModel> .Get(this.FixModelID); base.Actor = petActor; petActor.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.SetHSV(base.Actor.FixTransform, pet.colour); 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); this.InitActorState(); }
private void SetCameraRenderType(RTManager.RtType type, bool typeOn) { this.ResetRotation(); switch (type) { case RTManager.RtType.LocalHeatDistortion: { string[] array = new string[] { "FX_Distortion" }; int mask = LayerMask.GetMask(array); this.SetCameraCullingMask(type, typeOn, mask); break; } case RTManager.RtType.Player: { if (EntityWorld.Instance.ActSelf != null) { ShadowController.ShowShadow(EntityWorld.Instance.EntSelf.ID, EntityWorld.Instance.ActSelf, typeOn, 0); } string[] layerNames = new string[] { "CameraRange" }; int mask2 = LayerSystem.GetMask(layerNames); this.SetCameraCullingMask(type, typeOn, mask2); if (typeOn) { this.AimTargetOffsetY = ModelDisplayManager.GetPlayerAM().camProjPosRevise; if (ModelDisplayManager.GetPlayerAM().camProjRotRevise.get_Count() >= 2) { RTManager.Instance.CamProjRotateRevise = new Vector3(0f, ModelDisplayManager.GetPlayerAM().camProjRotRevise.get_Item(0), ModelDisplayManager.GetPlayerAM().camProjRotRevise.get_Item(1)); } } break; } case RTManager.RtType.ActorModel1: this.SetCameraCullingMask(type, typeOn, ModelDisplayManager.ModelFXMask); if (!typeOn) { this.HideModel(); CamerasMgr.SetRTCClippingPlanes(0f); } else { CamerasMgr.SetRTCClippingPlanes(100000f); } break; case RTManager.RtType.InstanceBall: { string[] layerNames2 = new string[] { "BallItem", "BallObject" }; int mask3 = LayerSystem.GetMask(layerNames2); this.SetCameraCullingMask(type, typeOn, mask3); if (!typeOn) { this.HideModel(); } break; } case RTManager.RtType.ElementBall: { string[] layerNames3 = new string[] { "BallItem", "BallObject" }; int mask4 = LayerSystem.GetMask(layerNames3); this.SetCameraCullingMask(type, typeOn, mask4); if (!typeOn) { this.HideModel(); } break; } } }
public void ShowShadow(bool isShow, int modelId) { ShadowController.ShowShadow(0L, base.get_transform(), !isShow, modelId); }
public static void ShowShadow(long uuid, Transform actorTarget, bool bHideShadow, int modelId = 0) { ShadowController.ShowShadow(uuid, actorTarget, null, bHideShadow, modelId); }