Beispiel #1
0
    private void Reset()
    {
        mCurrentItem = new InventoryItem();

        newItemName   = "New Item";
        newItemIcon   = null;
        newItemDesc   = "New Description";
        newItemType   = Enums.eItemType.Consumable;
        newItemValue  = 0;
        newItemRarity = Enums.eRarity.Common;
        Themes        = new List <Enums.eLevelTheme>((int)Enums.eLevelTheme.All);
        Difficulties  = new List <Enums.eDifficulty>((int)Enums.eDifficulty.All);

        // consumable
        newConsumableType   = Enums.eConsumableType.Recovery;
        newRecoveryStatType = Enums.eConsumableStatType.HP;
        recoveryAmount      = 0;
        newStatType         = Enums.eStatType.HP;
        statBoostAmount     = 0;
        newEffectType       = Enums.eStatusEffect.All;
        weaponUpgradeAmount = 0;

        // stat boosts
        newBoostType   = Enums.eStatBoostType.Basic;
        StatToBoost    = Enums.eStatType.HP;
        BoostAmount    = 0;
        LongTermEffect = Enums.eLongTermEffectType.HP;
        LongTermDelay  = 0f;
        LongTermAmount = 0;
        ResistEffect   = Enums.eStatusEffect.All;
        ResistPercent  = 0f;

        // equippables
        MinEquipType    = Enums.eMinEquipRequirementType.None;
        MinLevelToEquip = 0;
        MinStatType     = Enums.eStatType.HP;
        MinStatLevel    = 0;
        UsableClasses   = new List <Enums.eClassType>((int)Enums.eClassType.All);
        UsableRaces     = new List <Enums.eRaceType>((int)Enums.eRaceType.All);

        // armours
        newArmourType = Enums.eArmourLocation.Head;
        BodySlots     = 0;

        // weapons
        BaseWeaponDamage  = 0;
        WeaponEffect      = Enums.eStatusEffect.None;
        WeaponMultiTarget = false;
        WeaponRangeType   = Enums.eWeaponType.Melee;
        MeleeTwoHanded    = false;
        Range             = 0f;
        MagicFocusType    = Enums.eMagicFocusType.Self;
        MagicType         = Enums.eMagicType.Support;
        MagicRadius       = 1f;
        MagicEffect       = Enums.eStatusEffect.None;
        MagicCost         = 0;
    }
Beispiel #2
0
    private void ShowCreateItem()
    {
        GUILayout.Label("Create Item", EditorStyles.boldLabel);
        mCreateClassIndex  = EditorGUILayout.Popup("Item: ", mCreateClassIndex, mCreateClassOptions);
        mCurrentCreateType = mCreateClassTypes[mCreateClassIndex];

        newItemIcon = (Sprite)EditorGUILayout.ObjectField("Icon", newItemIcon, typeof(Sprite), false);
        newItemName = EditorGUILayout.TextField("Name: ", newItemName);

        EditorGUILayout.PrefixLabel("Description");
        EditorStyles.textField.wordWrap = true;
        newItemDesc   = EditorGUILayout.TextArea(newItemDesc, GUILayout.MinHeight(60f));
        newItemValue  = EditorGUILayout.IntField("Worth: ", Mathf.Clamp(newItemValue, 0, 999));
        newItemRarity = (Enums.eRarity)EditorGUILayout.EnumPopup("Rarity: ", newItemRarity);

        for (int i = 0; i < Themes.Count; i++)
        {
            Themes[i] = (Enums.eLevelTheme)EditorGUILayout.EnumPopup("Found in Theme: ", Themes[i]);
        }

        if (GUILayout.Button("Add Theme"))
        {
            Themes.Add(Enums.eLevelTheme.All);
        }

        for (int i = 0; i < Difficulties.Count; i++)
        {
            Difficulties[i] = (Enums.eDifficulty)EditorGUILayout.EnumPopup("Found in Difficulty: ", Difficulties[i]);
        }

        if (GUILayout.Button("Add Difficulty"))
        {
            Difficulties.Add(Enums.eDifficulty.All);
        }

        //GUILayout.Label("Item Type: " + , EditorStyles.boldLabel);
        //newItemType = (Enums.eItemType)EditorGUILayout.EnumPopup("Type: ", newItemType);

        switch (mCurrentCreateType.Type)
        {
        case Enums.eItemType.Consumable:
            ShowConsumables();
            break;

        case Enums.eItemType.Companion:
            ShowCompanions();
            break;

        case Enums.eItemType.StatBoost:
            ShowStatBoosts();
            break;

        case Enums.eItemType.Armour:
            ShowArmours();
            break;

        case Enums.eItemType.Weapon:
            ShowWeapons();
            break;

        case Enums.eItemType.Money:
        default:
            break;
        }

        if (GUILayout.Button("Create Item"))
        {
            CreateItem();
            Save();
        }
    }