public override void RefreshEffectExtension(EffectUI _effectUI)
    {
        base.RefreshEffectExtension(_effectUI);

        defaultTitleText = titleText.text;

        ClearFields();
    }
예제 #2
0
    /// <summary>
    /// 创建UI特效
    /// </summary>
    /// <param name="file"></param>
    /// <param name="parent_node">父节点</param>
    /// <param name="is_loop"></param>
    /// <param name="time">参考接口CreateEffect_Position的说明</param>
    /// <returns></returns>
    public EffectBase CreateEffect_UI(string file, Transform parent_node, float time = 0)
    {
        EffectUI effect = NewObject <EffectUI>(file) as EffectUI;

        if (effect != null)
        {
            if (parent_node == null)
            {
                parent_node = UILayerUtils.RootLayer;
            }
            effect.transform.SetParent(parent_node, false);
            effect.ParentNode = parent_node;
            effect.TotalTime  = time;
            GameObjectUtils.SetLayer(effect.gameObject, LayerMask.NameToLayer(SceneLayerID.UI));
        }

        return(effect);
    }
예제 #3
0
    public void AddEffect(Effect effect)
    {
        if (rectTransform == null)
        {
            rectTransform = GetComponent <RectTransform>();
        }
        rectTransform.sizeDelta = new Vector2(effectSlotWidth + rectTransform.sizeDelta.x, rectTransform.sizeDelta.y);
        RectTransform temp = (Instantiate(effectSlotPrefab) as GameObject).GetComponent <RectTransform> ();

        temp.SetParent(rectTransform, false);
        temp.sizeDelta        = new Vector2(effectSlotWidth, temp.sizeDelta.y);
        temp.anchoredPosition = new Vector2((-1) * effects.Count * effectSlotWidth - effectSlotWidth, 0);
        EffectUI effectUI = temp.GetComponent <EffectUI> ();

        effectUI.EffectAdded(effect);
        effectUIs.Add(effectUI);
        effects.Add(effect);
    }
예제 #4
0
    public void ShowEffectExtension(EffectTypes effectType, EffectUI currentEffect)
    {
        ActivateEffect();

        HideEffectExtensions();

        effectExtensionsShown = true;

        var effectExtension = effectExtensions.SingleOrDefault(x => x.effectType == effectType);

        if (effectExtension == null)
        {
            throw new Exception("Effect type does not have an extension");
        }

        effectExtension.effectArea.SetActive(true);
        effectExtension.effectArea.GetComponent <EffectExtensionUI>().RefreshEffectExtension(currentEffect);
    }
    public override void RefreshEffectExtension(EffectUI _effectUI)
    {
        base.RefreshEffectExtension(_effectUI);

        ClearFields();
    }
예제 #6
0
 public virtual void RefreshEffectExtension(EffectUI _effectUI)
 {
     effectUI = _effectUI;
 }