Exemplo n.º 1
0
    public static void ManaValueDictionaryField(string label, ManaValueDictionary dictionary)
    {
        manaFoldout = EditorGUILayout.BeginFoldoutHeaderGroup(manaFoldout, label);
        EditorGUILayout.EndFoldoutHeaderGroup();
        if (manaFoldout)
        {
            for (int i = 0; i < dictionary.Count; i++)
            {
                GUILayout.BeginHorizontal();
                dictionary.FirstValues[i]  = (ManaType)EditorGUILayout.ObjectField(dictionary.FirstValues[i], typeof(ManaType), false);
                dictionary.SecondValues[i] = EditorGUILayout.IntField(dictionary.SecondValues[i]);
                GUILayout.EndHorizontal();
            }

            GUILayout.BeginHorizontal();
            if (GUILayout.Button(addManaCostButton, GUILayout.Width(buttonWidth)))
            {
                dictionary.Add(null, 0);
            }
            if (GUILayout.Button(removeManaCostButton, GUILayout.Width(buttonWidth)))
            {
                dictionary.RemoveAt(dictionary.Count - 1);
            }
            GUILayout.EndHorizontal();
        }
    }
Exemplo n.º 2
0
    private static void ShowButtons(ManaValueDictionary dictionary)
    {
        EditorGUILayout.BeginHorizontal();
        if (GUILayout.Button(addButtonContent, EditorStyles.miniButton, GUILayout.Width(buttonWidth)))
        {
            dictionary.Add(type, amount);

            type   = null;
            amount = 0;
        }
        if (GUILayout.Button(deleteButtonContent, EditorStyles.miniButton, GUILayout.Width(buttonWidth)))
        {
            dictionary.RemoveAt(dictionary.Count - 1);
        }
    }
Exemplo n.º 3
0
    private void BuyAndSell()
    {
        if (card is CardData_Commander)
        {
            player.ModifyPlayerMana(data.currentContribution);
        }
        else if (card is CardData_CostBased)
        {
            ManaValueDictionary list = new ManaValueDictionary();

            foreach (ManaType type in data.currentCost.FirstValues)
            {
                list.Add(type, -data.currentCost[type]);
            }

            player.ModifyPlayerMana(list);
        }
    }