コード例 #1
0
    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();
        }
    }
コード例 #2
0
 public static void DisableDeadEffect()
 {
     if (m_DeadEffect)
     {
         m_DeadEffect.StopEffect();
     }
 }
コード例 #3
0
    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);
        }
    }