Ejemplo n.º 1
0
    void GetItemData()
    {
        //Debug.LogWarning(selectedItem.ItemType);

        itemName      = EditorGUILayout.TextField("Name: ", selectedItem.ItemName, GUILayout.Width(300));
        itemID        = EditorGUILayout.IntField("ID: ", selectedItem.ItemID, GUILayout.Width(300));
        itemShortDesc = EditorGUILayout.TextField("Short Desc.: ", selectedItem.ItemShortDesc, GUILayout.Width(500));
        EditorGUILayout.LabelField("Long description:");
        itemLongDesc   = EditorGUILayout.TextArea(selectedItem.ItemLongDesc, GUILayout.MinHeight(100));
        itemWeight     = EditorGUILayout.IntField("Weight: ", selectedItem.ItemWeight, GUILayout.Width(300));
        itemCost       = EditorGUILayout.IntField("Cost: ", selectedItem.ItemCost, GUILayout.Width(300));
        itemIcon       = EditorGUILayout.ObjectField("Icon: ", selectedItem.GetIcon(), typeof(Texture2D), true) as Texture2D;
        itemModel      = EditorGUILayout.ObjectField("Model: ", selectedItem.GetModel(), typeof(GameObject), true) as GameObject;
        itemType       = (ItemType)EditorGUILayout.EnumPopup("Type: ", selectedItem.ItemType);
        itemReqPerkIDs = selectedItem.ItemPerkReqIDs;
        CheckPerks();

        switch (selectedItem.ItemType)
        {
        case (ItemType.Weapon):
            baseDamage   = EditorGUILayout.IntField("Base Damage: ", selectedItem.WStats.BaseDamage);
            attackSpeed  = EditorGUILayout.IntField("Attack Speed: ", selectedItem.WStats.AttackSpeed);
            bluntDamage  = EditorGUILayout.IntField("Blunt", selectedItem.WStats.BluntDamage);
            pierceDamage = EditorGUILayout.IntField("Pierce", selectedItem.WStats.PierceDamage);
            slashDamage  = EditorGUILayout.IntField("Slash", selectedItem.WStats.SlashDamage);

            conditions = selectedItem.WStats.Auras;
            CheckAuras();
            break;

        case (ItemType.Armour):
            baseDefence    = EditorGUILayout.IntField("Base Defence: ", selectedItem.AStats.BaseDefence);
            bluntDefence   = EditorGUILayout.IntField("Blunt", selectedItem.AStats.BluntDefence);
            pierceDefence  = EditorGUILayout.IntField("Pierce", selectedItem.AStats.PierceDefence);
            slashDefence   = EditorGUILayout.IntField("Slash", selectedItem.AStats.SlashDefence);
            natureDefence  = EditorGUILayout.IntField("Nature", selectedItem.AStats.NatureDefence);
            thermalDefence = EditorGUILayout.IntField("Thermal", selectedItem.AStats.ThermalDefence);
            armourType     = (ArmourType)EditorGUILayout.EnumPopup("Slot: ", selectedItem.AStats.ArmourType);
            armourMaterial = (ArmourMaterial)EditorGUILayout.EnumPopup("Material: ", selectedItem.AStats.ArmourMaterial);

            conditions = selectedItem.AStats.Auras;
            CheckAuras();
            break;

        case (ItemType.Consumable):
            consumableType    = (ConsumableType)EditorGUILayout.EnumPopup("Type: ", selectedItem.ConStats.ConsumableType);
            consumableCharges = EditorGUILayout.IntField("Charges", selectedItem.ConStats.Charges);

            conditions = selectedItem.ConStats.Auras;
            CheckAuras();
            break;

        case (ItemType.Container):
            contentItems      = selectedItem.CtnStats.ContentItems;
            contentQuantities = selectedItem.CtnStats.ContentQuantities;
            CheckContents();
            break;

        case (ItemType.Ingredient):
            isStackable = selectedItem.IngStats.IsStackable;
            break;

        case (ItemType.Misc):
            isStackable = selectedItem.MiscStats.IsStackable;
            break;
        }
    }