public T GetEffectData <T>(EEffectType effectType) where T : EffectBase { m_preEffectType = effectType; EffectBase effect = null; m_effectDic.TryGetValue((byte)effectType, out effect); return(effect as T); }
virtual protected void OnDefineEffect() { _eEffectType = EEffectType.None; #if NGUI if (_eEffectType == EEffectType.None && _p2DSpriteAnimation != null) { _eEffectType = EEffectType.TwoD; } #endif if (_eEffectType == EEffectType.None && _pParticleSystem != null) { _eEffectType = EEffectType.Particle; } }
/// <summary> /// Set effect. /// </summary> public void SetEffect(EEffectType effectType) { Material material = null; if (effectType == EEffectType.Dark) { material = MyResourceManager.GetMaterialDarkening(); } else if (effectType == EEffectType.Gray) { material = MyResourceManager.GetMaterialGrayscale(); } mBackground.material = material; mToggle.material = material; mEffectType = effectType; }
virtual protected void OnDefineEffect() { _eEffectType = EEffectType.None; if (_eEffectType == EEffectType.None && _pNGUISpriteAnimation != null) { _eEffectType = EEffectType.NGUI; } if (_eEffectType == EEffectType.None && _pSpriteAnimation != null) { _eEffectType = EEffectType.Sprite; } if (_eEffectType == EEffectType.None && _pParticleSystem != null) { _eEffectType = EEffectType.Particle; } }
public void setEffectParam(string prefaburl, Vector3 position, Quaternion rotations, EEffectType type = EEffectType.Normal) { string asseturl = UrlManager.GetEffectUrl(prefaburl,type); GameObject prefab = ResourceManager.loadAsset<GameObject>(asseturl); if (prefab != null) { effectInstance = Instantiate(prefab, Vector3.zero, Quaternion.identity) as GameObject; //effect.transform.localScale = new Vector3(8, 8, 8); effectInstance.transform.rotation = rotations; transform.position = position; effectInstance.transform.parent = gameObject.transform; effectInstance.transform.localPosition = Vector3.zero; } if (type != EEffectType.Move) Invoke("destroyDelay", 5); }
/// <summary> /// Set gray mode. /// </summary> public void SetGrayMode(bool isGrayImage = true, bool isGrayText = true) { if (isGrayImage && isGrayText) { mGrayType = EEffectType.Gray; } else if (isGrayImage) { mGrayType = EEffectType.GrayImageOnly; } else if (isGrayText) { mGrayType = EEffectType.GrayTextOnly; } else { mGrayType = EEffectType.None; } }
/// <summary> /// Set dark mode. /// </summary> public void SetDarkMode(bool isDarkImage = true, bool isDarkText = true) { if (isDarkImage && isDarkText) { mDarkType = EEffectType.Dark; } else if (isDarkImage) { mDarkType = EEffectType.DarkImageOnly; } else if (isDarkText) { mDarkType = EEffectType.DarkTextOnly; } else { mDarkType = EEffectType.None; } }
private void OnTriggerEffectStart(GameEvent eve) { List <EEffectType> types = CreateRandomEffectType(); EEffectType type = types[m_index]; //TODO:触发执行对应的事件 type = EEffectType.InkEffect; EffectBase effect = m_effect.GetEffectData <EffectBase>(type); if (effect != null) { m_ground.ExcuteEffect(effect, m_side); m_gameBall.ExcuteEffect(effect, m_side); m_contestUI.PlayEffect(effect, m_side); } m_index++; }
private static Transform getEffectSystem(ushort mythicID, EEffectType type) { MythicAsset mythicAsset = (MythicAsset)Assets.find(EAssetType.MYTHIC, mythicID); if (mythicAsset == null) { return(null); } Object @object; switch (type) { case EEffectType.AREA: @object = mythicAsset.systemArea; break; case EEffectType.HOOK: @object = mythicAsset.systemHook; break; case EEffectType.THIRD: @object = mythicAsset.systemThird; break; case EEffectType.FIRST: @object = mythicAsset.systemFirst; break; default: return(null); } if (@object == null) { return(null); } Transform transform = ((GameObject)Object.Instantiate(@object)).transform; transform.name = "System"; return(transform); }
private List <EEffectType> CreateRandomEffectType() { bool random = false; if (m_effectList == null) { m_effectList = new List <EEffectType>(); random = true; } if (!random && m_effectList.Count <= m_index) { m_index = 0; random = true; } if (random) { m_effectList.Clear(); for (EEffectType i = EEffectType.Shield; i < EEffectType.MaxType; i++) { m_effectList.Add(i); } m_effectList.Sort((type, effectType) => { float value = Random.Range(0, 1); if (value < 0.5f) { return(-1); } else { return(1); } }); } return(m_effectList); }
void updateVisualEffect(int index, EEffectType type) { switch (type) { case EEffectType.Active: { m_PuzzleObjects[index].color = Color.red; break; } case EEffectType.Default: { m_PuzzleObjects[index].color = Color.white; break; } case EEffectType.Correct: { m_PuzzleObjects[index].color = Color.clear; break; } } }
public GameEffect() { m_effectDic = new Dictionary <byte, EffectBase> { { (byte)EEffectType.Shield, new EffectShield(5f) }, { (byte)EEffectType.BananaBall, new EffectBananaBall(10f) }, { (byte)EEffectType.InkEffect, new EffectInk(6f) } }; m_effectData = new GameEffectData(); GameResModuel resModuel = GameStart.GetInstance().ResModuel; GameObject prefab = resModuel.LoadResources <GameObject>(EResourceType.Effect, "Warning"); prefab = CommonFunc.Instantiate(prefab); m_effectInstance = prefab.AddComponent <GameEffectInstance>(); m_effectInstance.gameObject.SetActive(false); m_effecting = false; m_createNextTime = Time.time + m_effectData.GetRandomTime(); m_preEffectType = EEffectType.MaxType; }
public static Transform applyEffect(Transform model, ushort mythicID, EEffectType type) { if (mythicID == 0) { return(null); } if (model == null) { return(null); } Transform transform = model.FindChild("Effect"); Transform effectSystem = ItemTool.getEffectSystem(mythicID, type); if (effectSystem != null) { if (transform != null) { effectSystem.parent = transform; MythicLockee mythicLockee = effectSystem.gameObject.AddComponent <MythicLockee>(); MythicLocker mythicLocker = transform.gameObject.AddComponent <MythicLocker>(); mythicLocker.system = mythicLockee; mythicLockee.locker = mythicLocker; } else { effectSystem.parent = model; MythicLockee mythicLockee2 = effectSystem.gameObject.AddComponent <MythicLockee>(); MythicLocker mythicLocker2 = model.gameObject.AddComponent <MythicLocker>(); mythicLocker2.system = mythicLockee2; mythicLockee2.locker = mythicLocker2; } effectSystem.localPosition = Vector3.zero; effectSystem.localRotation = Quaternion.identity; } return(effectSystem); }
private EEffectType[] CreateRandomEffectType() { int count = (int)EEffectType.MaxType; if (m_effect.PreEffectType != EEffectType.MaxType) { count--; } EEffectType[] types = new EEffectType[count]; int index = 0; for (EEffectType i = 0; i < EEffectType.MaxType; i++) { if (m_effect.PreEffectType == i) { continue; } types[index] = i; } return(types); }
void showDogeCritEffect(EEffectType type) { GameObject effect = new GameObject(type.ToString()); effect.AddComponent<EffectAsset>().setEffectParam("", rolePosition + Vector3.up, roleRotation, type); }
public EffectBase(EEffectType effectType, float time) { m_effectType = effectType; m_duringTime = time; }
public static void applyEffect(Transform[] bones, Transform[] systems, ushort mythicID, EEffectType type) { if (mythicID == 0) { return; } if (bones == null || systems == null) { return; } for (int i = 0; i < bones.Length; i++) { systems[i] = ItemTool.applyEffect(bones[i], mythicID, type); } }
/// <summary> /// Set effect. /// </summary> public void SetEffect(EEffectType effectType) { if (mEffectType == effectType) { return; } _InitImage(); _InitIcon(); _InitText(); if (mImage != null) { if (effectType == EEffectType.Dark || effectType == EEffectType.DarkImageOnly) { mImage.material = MyResourceManager.GetMaterialDarkening(); } else if (effectType == EEffectType.Gray || effectType == EEffectType.GrayImageOnly) { mImage.material = MyResourceManager.GetMaterialGrayscale(); } else { mImage.material = null; } } if (mIcon != null) { if (effectType == EEffectType.Dark || effectType == EEffectType.DarkImageOnly) { mIcon.material = MyResourceManager.GetMaterialDarkening(); } else if (effectType == EEffectType.Gray || effectType == EEffectType.GrayImageOnly) { mIcon.material = MyResourceManager.GetMaterialGrayscale(); } else { mIcon.material = null; } } if (mText != null) { if (effectType == EEffectType.Dark || effectType == EEffectType.DarkTextOnly) { mText.material = MyResourceManager.GetMaterialDarkening(); } else if (effectType == EEffectType.Gray || effectType == EEffectType.GrayTextOnly) { mText.material = MyResourceManager.GetMaterialGrayscale(); } else { mText.material = null; } } #if USE_MY_UI_TMPRO else if (mTextTMPro != null) { if (effectType == EEffectType.Dark || effectType == EEffectType.DarkTextOnly) { mTextTMPro.material = MyResourceManager.GetMaterialDarkening(); } else if (effectType == EEffectType.Gray || effectType == EEffectType.GrayTextOnly) { mTextTMPro.material = MyResourceManager.GetMaterialGrayscale(); } else { mTextTMPro.material = null; } } #endif mEffectType = effectType; }
protected void SetEffect(EEffectType type) { m_effectType = type; m_effectTime = m_EffectTimeMax; }