private static void OnSceneLoadFinish(string sceneName) { isHaveData = false; //如果是非吃鸡场景,卸载. if (GameLogicAPI.getCurGameMode() != Game_ManagedDef.EGameMode.EGM_MCAMP) { AssetBundleManager.DeleteAssets(ref SafeZoneEffectRes, true); SafeZoneEffectInstance = null; return; } if (null == SafeZoneEffectRes) { SafeZoneEffectRes = AssetBundleManager.GetAssets(AssetType.Asset_Prefab, SafeZoneEffectGUID, true); if (!ResNode.isNullOrEmpty(SafeZoneEffectRes)) { SafeZoneEffectInstance = SafeZoneEffectRes.InstanceMainRes <Effect.EffectNode>(); if (SafeZoneEffectInstance) { SafeZoneEffectInstance.Init(); SafeZoneEffectInstance.StopEffect(); SafeZoneTransform = SafeZoneEffectInstance.transform; SafeZoneTransform.SetParent(EntityFactory.EffectGroup.transform); GenerateZoneMaterial(SafeZoneEffectInstance); } } } if (SafeZoneEffectInstance) { SafeZoneEffectInstance.StopEffect(); } }
public static void DisableDeadEffect() { if (m_DeadEffect) { m_DeadEffect.StopEffect(); } }
public void OnCache(Transform cacheParent, Vector3 cachePos, Quaternion orginalrot) { isCached = true; if (Valid && m_effectNode) { m_effectNode.StopEffect(); m_effectNode.SetParticleSpeed(1.0f); m_effectNode.ResetScale(); m_effectPrefab.transform.parent = cacheParent; m_effectPrefab.transform.SetPosition(cachePos); m_effectNode.hitEvent = null; m_effectPrefab.transform.localRotation = orginalrot; //撤销延迟析构隐藏的inactive子部件,避免下次重用时出错 BroadcastMessage("renewActiveForDelayDestroy"); m_effectPrefab.SetActive(false); } }