Example #1
0
    /// <summary>
    /// Renders the currently selected step
    /// </summary>
    /// <param name="rStep"></param>
    private bool DrawEffectDetailItem(ActorCoreEffect rItem)
    {
        bool lIsDirty = false;

        if (rItem == null)
        {
            EditorGUILayout.LabelField("NULL");
            return(false);
        }

        if (rItem.Name.Length > 0)
        {
            EditorHelper.DrawSmallTitle(rItem.Name.Length > 0 ? rItem.Name : "Actor Core Effect");
        }
        else
        {
            string lName = BaseNameAttribute.GetName(rItem.GetType());
            EditorHelper.DrawSmallTitle(lName.Length > 0 ? lName : "Actor Core Effect");
        }

        // Render out the Effect specific inspectors
        bool lIsEffectDirty = rItem.OnInspectorGUI(mTarget);

        if (lIsEffectDirty)
        {
            lIsDirty = true;
        }

        if (lIsDirty)
        {
            mTarget._EffectDefinitions[mEffectList.index] = rItem.Serialize();
        }

        return(lIsDirty);
    }
Example #2
0
    /// <summary>
    /// Allows us to add to a list
    /// </summary>
    /// <param name="rList"></param>
    private void OnEffectListItemAdd(ReorderableList rList)
    {
        if (mEffectIndex >= mEffectTypes.Count)
        {
            return;
        }

        ActorCoreEffect lItem = Activator.CreateInstance(mEffectTypes[mEffectIndex]) as ActorCoreEffect;

        lItem.ActorCore = mTarget;

        mTarget._Effects.Add(lItem);
        mTarget._EffectDefinitions.Add(lItem.Serialize());

        mEffectList.index = mTarget._Effects.Count - 1;
        OnEffectListItemSelect(rList);

        mIsDirty = true;
    }