Пример #1
0
    public void InitWithUnityData(CharacterPrefabsLoad prefs)
    {
        // load abilities into list
        abilities = new LinkedList <AbilityData> [prefs.abilities.Count];
        for (int i = 0; i < prefs.abilities.Count; i++)
        {
            abilities[i] = DecoratorHolder.ConstructAbilityStack((DecoratorHolder)prefs.abilities[i]);//.evt
        }

        abilityTree = prefs.tree.tree;

        followAllyAbility = prefs.followAllyAbilityData.evt;
    }
Пример #2
0
    public static LinkedList <AbilityData> AsLinkedList(DecoratorHolder start)
    {
        // max depth: 20 effects. that's completly over the top.
        LinkedList <AbilityData> data = new LinkedList <AbilityData>();

        data.AddLast(start.evt);
        DecoratorHolder d = start;

        for (int i = 0; i < 20 && ((DecoratorHolder)d.childAction) != null; i++)
        {
            data.AddLast(((DecoratorHolder)d.childAction).evt);
            d = ((DecoratorHolder)d.childAction);
        }
        return(data);
    }
Пример #3
0
 internal static LinkedList <AbilityData> ConstructAbilityStack(DecoratorHolder decoratorHolder)
 {
     // missing application of stuns, etc etc.
     return(AsLinkedList(decoratorHolder));
 }