Exemplo n.º 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;
    }
Exemplo n.º 2
0
    private void ShowWeapons()
    {
        ShowEquippables();

        GUILayout.Label("> Weapon", EditorStyles.boldLabel);
        BaseWeaponDamage  = EditorGUILayout.IntField("Base Damage: ", Mathf.Clamp(BaseWeaponDamage, 0, 999));
        WeaponEffect      = (Enums.eStatusEffect)EditorGUILayout.EnumPopup("Effect: ", WeaponEffect);
        WeaponMultiTarget = EditorGUILayout.Toggle("Multiple Targets?: ", WeaponMultiTarget);
        Range             = EditorGUILayout.FloatField("Range: ", Mathf.Clamp(Range, 0, 99));

        WeaponItem weapon = (WeaponItem)mCurrentCreateType;

        //GUILayout.Label("Type", EditorStyles.boldLabel);
        //WeaponRangeType = (Enums.eWeaponType)EditorGUILayout.EnumPopup("Weapon Type: ", WeaponRangeType);
        switch (weapon.WeaponType)
        {
        case Enums.eWeaponType.Melee:
            MeleeTwoHanded = EditorGUILayout.Toggle("Two Handed?: ", MeleeTwoHanded);
            //if (mCurrentItem.GetType() != typeof(MeleeWeaponItem))
            //{
            //    mCurrentItem = new MeleeWeaponItem();
            //}
            break;

        case Enums.eWeaponType.Ranged:
            //if (mCurrentItem.GetType() != typeof(RangedWeaponItem))
            //{
            //    mCurrentItem = new RangedWeaponItem();
            //}
            break;

        case Enums.eWeaponType.Magic:
            GUILayout.Label("  > Magic", EditorStyles.boldLabel);
            MagicFocusType = (Enums.eMagicFocusType)EditorGUILayout.EnumPopup("Focus: ", MagicFocusType);
            MagicType      = (Enums.eMagicType)EditorGUILayout.EnumPopup("Type: ", MagicType);
            MagicRadius    = EditorGUILayout.FloatField("Radius: ", Mathf.Clamp(MagicRadius, 0, 99));
            MagicEffect    = (Enums.eStatusEffect)EditorGUILayout.EnumPopup("Effect: ", MagicEffect);
            MagicCost      = EditorGUILayout.IntField("Cost: ", Mathf.Clamp(MagicCost, 0, 999));

            Spell spell = (Spell)weapon;
            if (spell != null)
            {
                GUILayout.Label("    > Spell", EditorStyles.boldLabel);
                SpellType = (Enums.eSpellType)EditorGUILayout.EnumPopup("Type: ", SpellType);
                break;
            }

            //if (mCurrentItem.GetType() != typeof(MagicWeaponItem))
            //{
            //    mCurrentItem = new MagicWeaponItem();
            //}
            break;
        }
    }