Major rework on items

- Refactor items from predefined scriptables only, to template based into item instances
- Added equipped item tooltip to facilitate comparing items
- Added modular craftable items
This commit is contained in:
Pedro Gomes 2025-01-03 19:40:35 +00:00
parent a0be4f5395
commit 74a9c2b940
69 changed files with 4799 additions and 97 deletions

View File

@ -14,8 +14,8 @@ public class VendorSlotUI : ItemSlot
CoinBag coinBag;
Inventory inventory;
private VendorData currentVendorData;
VendorItem vendorItem;
private VendorDataInstance currentVendorData;
VendorItemInstance vendorItem;
private void Awake()
{
@ -23,7 +23,7 @@ public class VendorSlotUI : ItemSlot
inventory = FindObjectOfType<Inventory>();
}
public void AddItem(VendorData vendor, VendorItem newItem)
public void AddItem(VendorDataInstance vendor, VendorItemInstance newItem)
{
vendorItem = newItem;
Item = vendorItem.item;
@ -67,5 +67,13 @@ public class VendorSlotUI : ItemSlot
public override void OnPointerEnter(PointerEventData eventData)
{
ItemTooltip.Instance.ShowTooltip(Item);
if(Item is EquippableItemInstance ei)
{
EquippableItemInstance equippedInSameSlot = EquipmentPanel.Instance.GetEquippedItemOnSpecificSlot(ei.EquipmentType);
if (equippedInSameSlot != null)
{
EquippedItemTooltip.Instance.ShowTooltip(equippedInSameSlot);
}
}
}
}

View File

@ -12,3 +12,12 @@ public class ConsumableItem : Item
}
}
public class ConsumableItemInstance : ItemInstance
{
public virtual void Consume()
{
}
}

View File

@ -11,9 +11,27 @@ namespace Kryz.CharacterStats.Examples
[SerializeField] GameEventListener onJoinedRoom;
public UnityEvent_Item OnItemRightClickedEvent = new UnityEvent_Item();
public UnityEvent_ItemInstance OnItemRightClickedEvent = new UnityEvent_ItemInstance();
EquipmentData equipmentData = new EquipmentData();
EquipmentInstanceData equipmentData = new EquipmentInstanceData();
#region Singleton
private static EquipmentPanel _instance;
// Public reference to the singleton instance
public static EquipmentPanel Instance
{
get
{
// If the instance doesn't exist, try to find it in the scene
if (_instance == null)
{
_instance = FindObjectOfType<EquipmentPanel>();
}
return _instance;
}
}
#endregion
private void Awake()
{
@ -34,16 +52,28 @@ namespace Kryz.CharacterStats.Examples
equipmentSlots = equipmentSlotsParent.GetComponentsInChildren<EquipmentSlot>();
}
public bool AddItem(EquippableItem item, out EquippableItem previousItem)
public EquippableItemInstance GetEquippedItemOnSpecificSlot(EquipmentType slot)
{
for (int i = 0; i < equipmentSlots.Length; i++)
{
if(equipmentSlots[i].EquipmentType == slot)
{
return (EquippableItemInstance)equipmentSlots[i].Item;
}
}
return null;
}
public bool AddItem(EquippableItemInstance item, out EquippableItemInstance previousItem)
{
for (int i = 0; i < equipmentSlots.Length; i++)
{
if (equipmentSlots[i].EquipmentType == item.EquipmentType)
{
previousItem = (EquippableItem)equipmentSlots[i].Item;
previousItem = (EquippableItemInstance)equipmentSlots[i].Item;
equipmentSlots[i].Item = item;
equipmentData.equippedItems[i] = ItemIndexer.Instance.Items.IndexOf(item);
equipmentData.equippedItems[i] = item;
PlayerDataHandler.Instance.SaveCharacterEquipmentData(PlayerDataHandler.Instance.currentPlayerName.Value, PhotonNetwork.NickName, equipmentData);
return true;
}
@ -52,14 +82,14 @@ namespace Kryz.CharacterStats.Examples
return false;
}
public bool RemoveItem(EquippableItem item)
public bool RemoveItem(EquippableItemInstance item)
{
for (int i = 0; i < equipmentSlots.Length; i++)
{
if (equipmentSlots[i].Item == item)
{
equipmentSlots[i].Item = null;
equipmentData.equippedItems[i] = -1;
equipmentData.equippedItems[i] = null;
PlayerDataHandler.Instance.SaveCharacterEquipmentData(PlayerDataHandler.Instance.currentPlayerName.Value, PlayerDataHandler.Instance.currentCharacterName.Value, equipmentData);
return true;
}
@ -81,13 +111,13 @@ namespace Kryz.CharacterStats.Examples
Debug.Log("Success Loading Equipment");
for (int i = 0; i < equipmentData.equippedItems.Length; i++)
{
if (equipmentData.equippedItems[i] < 0)
if (equipmentData.equippedItems[i] == null)
{
equipmentSlots[i].Item = null;
}
else
{
equipmentSlots[i].Item = ItemIndexer.Instance.Items[equipmentData.equippedItems[i]];
equipmentSlots[i].Item = equipmentData.equippedItems[i];
}
}
}
@ -98,7 +128,7 @@ namespace Kryz.CharacterStats.Examples
equipmentSlots[i].Item = null;
}
equipmentData = new EquipmentData();
equipmentData = new EquipmentInstanceData();
PlayerDataHandler.Instance.SaveCharacterEquipmentData(PlayerDataHandler.Instance.currentPlayerName.Value, PlayerDataHandler.Instance.currentCharacterName.Value, equipmentData);
}

View File

@ -1,4 +1,6 @@

using UnityEngine.EventSystems;
namespace Kryz.CharacterStats.Examples
{
public class EquipmentSlot : ItemSlot
@ -10,5 +12,10 @@ namespace Kryz.CharacterStats.Examples
base.OnValidate();
gameObject.name = EquipmentType.ToString() + " Slot";
}
public override void OnPointerEnter(PointerEventData eventData)
{
EquippedItemTooltip.Instance.ShowTooltip(Item);
}
}
}

View File

@ -45,6 +45,89 @@ namespace Kryz.CharacterStats.Examples
public float ArmorPercentBonus;
public float MagicResistancePercentBonus;
public EquipmentType EquipmentType;
[Space]
public bool CraftableBase = false;
[Space(20f)]
[Header("Crafting-ish")]
public int MinStrengthBonus;
public int MaxStrengthBonus;
[Space]
public int MinAgilityBonus;
public int MaxAgilityBonus;
[Space]
public int MinIntelligenceBonus;
public int MaxIntelligenceBonus;
[Space]
public int MinSpiritBonus;
public int MaxSpiritBonus;
[Space]
public int MinVitalityBonus;
public int MaxVitalityBonus;
[Space]
[Space]
public float MinStrengthPercentBonus;
public float MaxStrengthPercentBonus;
[Space]
public float MinAgilityPercentBonus;
public float MaxAgilityPercentBonus;
[Space]
public float MinIntelligencePercentBonus;
public float MaxIntelligencePercentBonus;
[Space]
public float MinSpiritPercentBonus;
public float MaxSpiritPercentBonus;
[Space]
public float MinVitalityPercentBonus;
public float MaxVitalityPercentBonus;
[Space]
[Space]
public int MinAttackDamageBonus;
public int MaxAttackDamageBonus;
[Space]
public int MinSpellDamageBonus;
public int MaxSpellDamageBonus;
[Space]
public int MinCritChanceBonus;
public int MaxCritChanceBonus;
[Space]
public int MinCritDamageBonus;
public int MaxCritDamageBonus;
[Space]
public int MinMaxHealthBonus;
public int MaxMaxHealthBonus;
[Space]
public int MinArmorBonus;
public int MaxArmorBonus;
[Space]
public int MinMagicResistanceBonus;
public int MaxMagicResistanceBonus;
[Space]
[Space]
public float MinAttackDamagePercentBonus;
public float MaxAttackDamagePercentBonus;
[Space]
public float MinSpellDamagePercentBonus;
public float MaxSpellDamagePercentBonus;
[Space]
public float MinCritChancePercentBonus;
public float MaxCritChancePercentBonus;
[Space]
public float MinCritDamagePercentBonus;
public float MaxCritDamagePercentBonus;
[Space]
public float MinMaxHealthPercentBonus;
public float MaxMaxHealthPercentBonus;
[Space]
public float MinArmorPercentBonus;
public float MaxArmorPercentBonus;
[Space]
public float MinMagicResistancePercentBonus;
public float MaxMagicResistancePercentBonus;
[Space]
[Space]
[Tooltip("Can only contain up to this number of unique stats in a single item instance.")]
public int TotalUniqueStats;
public void Equip(PlayerCharacterStats c)
{
@ -125,5 +208,6 @@ namespace Kryz.CharacterStats.Examples
c.Armor.RemoveAllModifiersFromSource(this);
c.MagicResistance.RemoveAllModifiersFromSource(this);
}
}
}

View File

@ -0,0 +1,394 @@
using Kryz.CharacterStats;
using Kryz.CharacterStats.Examples;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
[System.Serializable]
public class EquippableItemInstance : ItemInstance
{
public int StrengthBonus;
public int AgilityBonus;
public int IntelligenceBonus;
public int SpiritBonus;
public int VitalityBonus;
[Space]
public float StrengthPercentBonus;
public float AgilityPercentBonus;
public float IntelligencePercentBonus;
public float SpiritPercentBonus;
public float VitalityPercentBonus;
[Space]
public int AttackDamageBonus;
public int SpellDamageBonus;
public int CritChanceBonus;
public int CritDamageBonus;
public int MaxHealthBonus;
public int ArmorBonus;
public int MagicResistanceBonus;
[Space]
public float AttackDamagePercentBonus;
public float SpellDamagePercentBonus;
public float CritChancePercentBonus;
public float CritDamagePercentBonus;
public float MaxHealthPercentBonus;
public float ArmorPercentBonus;
public float MagicResistancePercentBonus;
[Space]
public EquipmentType EquipmentType;
[Space]
public bool CraftableBase = false;
[Space]
/// <summary>
/// Can only contain up to this number of unique stats in a single item instance.
/// </summary>
[Space]
[Tooltip("Can only contain up to this number of unique stats in a single item instance.")]
public int TotalUniqueStats;
public void Equip(PlayerCharacterStats c)
{
if (StrengthBonus != 0)
c.Strength.AddModifier(new StatModifier(StrengthBonus, StatModType.Flat, this.ItemName));
if (AgilityBonus != 0)
c.Agility.AddModifier(new StatModifier(AgilityBonus, StatModType.Flat, this.ItemName));
if (IntelligenceBonus != 0)
c.Intelligence.AddModifier(new StatModifier(IntelligenceBonus, StatModType.Flat, this.ItemName));
if (SpiritBonus != 0)
c.Spirit.AddModifier(new StatModifier(SpiritBonus, StatModType.Flat, this.ItemName));
if (VitalityBonus != 0)
c.Vitality.AddModifier(new StatModifier(VitalityBonus, StatModType.Flat, this.ItemName));
if (StrengthPercentBonus != 0)
c.Strength.AddModifier(new StatModifier(StrengthPercentBonus, StatModType.PercentMult, this.ItemName));
if (AgilityPercentBonus != 0)
c.Agility.AddModifier(new StatModifier(AgilityPercentBonus, StatModType.PercentMult, this.ItemName));
if (IntelligencePercentBonus != 0)
c.Intelligence.AddModifier(new StatModifier(IntelligencePercentBonus, StatModType.PercentMult, this.ItemName));
if (SpiritPercentBonus != 0)
c.Spirit.AddModifier(new StatModifier(SpiritPercentBonus, StatModType.PercentMult, this.ItemName));
if (VitalityPercentBonus != 0)
c.Vitality.AddModifier(new StatModifier(VitalityPercentBonus, StatModType.PercentMult, this.ItemName));
if (AttackDamageBonus != 0)
c.AttackDamage.AddModifier(new StatModifier(AttackDamageBonus, StatModType.Flat, this.ItemName));
if (SpellDamageBonus != 0)
c.SpellDamage.AddModifier(new StatModifier(SpellDamageBonus, StatModType.Flat, this.ItemName));
if (CritChanceBonus != 0)
c.CritChance.AddModifier(new StatModifier(CritChanceBonus, StatModType.Flat, this.ItemName));
if (CritDamageBonus != 0)
c.CritDamage.AddModifier(new StatModifier(CritDamageBonus, StatModType.Flat, this.ItemName));
if (MaxHealthBonus != 0)
c.MaxHealth.AddModifier(new StatModifier(MaxHealthBonus, StatModType.Flat, this.ItemName));
if (ArmorBonus != 0)
c.Armor.AddModifier(new StatModifier(ArmorBonus, StatModType.Flat, this.ItemName));
if (MagicResistanceBonus != 0)
c.MagicResistance.AddModifier(new StatModifier(MagicResistanceBonus, StatModType.Flat, this.ItemName));
if (AttackDamagePercentBonus != 0)
c.AttackDamage.AddModifier(new StatModifier(AttackDamagePercentBonus, StatModType.PercentAdd, this.ItemName));
if (SpellDamagePercentBonus != 0)
c.SpellDamage.AddModifier(new StatModifier(SpellDamagePercentBonus, StatModType.PercentAdd, this.ItemName));
if (CritChancePercentBonus != 0)
c.CritChance.AddModifier(new StatModifier(CritChancePercentBonus, StatModType.PercentAdd, this.ItemName));
if (CritDamagePercentBonus != 0)
c.CritDamage.AddModifier(new StatModifier(CritDamagePercentBonus, StatModType.PercentAdd, this.ItemName));
if (MaxHealthPercentBonus != 0)
c.MaxHealth.AddModifier(new StatModifier(MaxHealthPercentBonus, StatModType.PercentAdd, this.ItemName));
if (ArmorPercentBonus != 0)
c.Armor.AddModifier(new StatModifier(ArmorPercentBonus, StatModType.PercentAdd, this.ItemName));
if (MagicResistancePercentBonus != 0)
c.MagicResistance.AddModifier(new StatModifier(MagicResistancePercentBonus, StatModType.PercentAdd, this.ItemName));
}
public void Unequip(PlayerCharacterStats c)
{
c.Strength.RemoveAllModifiersFromSource(this.ItemName);
c.Agility.RemoveAllModifiersFromSource(this.ItemName);
c.Intelligence.RemoveAllModifiersFromSource(this.ItemName);
c.Spirit.RemoveAllModifiersFromSource(this.ItemName);
c.Vitality.RemoveAllModifiersFromSource(this.ItemName);
c.AttackDamage.RemoveAllModifiersFromSource(this.ItemName);
c.SpellDamage.RemoveAllModifiersFromSource(this.ItemName);
c.CritChance.RemoveAllModifiersFromSource(this.ItemName);
c.CritDamage.RemoveAllModifiersFromSource(this.ItemName);
c.MaxHealth.RemoveAllModifiersFromSource(this.ItemName);
c.Armor.RemoveAllModifiersFromSource(this.ItemName);
c.MagicResistance.RemoveAllModifiersFromSource(this.ItemName);
}
public bool TryAddCraftingStone(CraftingStatStone stone)
{
if (!CraftableBase) return false;
var itemStats = GetNonZeroStats(this);
var stoneStats = GetNonZeroStats(stone);
// Calculate overlapping and new unique stats
int overlappingStats = itemStats.Intersect(stoneStats).Count();
int newUniqueStats = stoneStats.Except(itemStats).Count();
// Ensure we don't exceed the max unique stats cap
if (itemStats.Count + newUniqueStats > TotalUniqueStats)
{
return false; // Adding the crafting stone would exceed the cap
}
// Add stats from the stone to the item
AddStats(stone);
return true;
}
private List<string> GetNonZeroStats(object stats)
{
var nonZeroStats = new List<string>();
var fields = stats.GetType().GetFields();
foreach (var field in fields)
{
if (field.GetValue(stats) is int intValue && intValue != 0 && field.Name.ToLower().Contains("bonus"))
{
nonZeroStats.Add(field.Name);
}
else if (field.GetValue(stats) is float floatValue && !Mathf.Approximately(floatValue, 0f) && field.Name.ToLower().Contains("bonus"))
{
nonZeroStats.Add(field.Name);
}
}
return nonZeroStats;
}
private void AddStats(CraftingStatStone stone)
{
StrengthBonus += stone.StrengthBonus;
AgilityBonus += stone.AgilityBonus;
IntelligenceBonus += stone.IntelligenceBonus;
SpiritBonus += stone.SpiritBonus;
VitalityBonus += stone.VitalityBonus;
StrengthPercentBonus += stone.StrengthPercentBonus;
AgilityPercentBonus += stone.AgilityPercentBonus;
IntelligencePercentBonus += stone.IntelligencePercentBonus;
SpiritPercentBonus += stone.SpiritPercentBonus;
VitalityPercentBonus += stone.VitalityPercentBonus;
AttackDamageBonus += stone.AttackDamageBonus;
SpellDamageBonus += stone.SpellDamageBonus;
CritChanceBonus += stone.CritChanceBonus;
CritDamageBonus += stone.CritDamageBonus;
MaxHealthBonus += stone.MaxHealthBonus;
ArmorBonus += stone.ArmorBonus;
MagicResistanceBonus += stone.MagicResistanceBonus;
AttackDamagePercentBonus += stone.AttackDamagePercentBonus;
SpellDamagePercentBonus += stone.SpellDamagePercentBonus;
CritChancePercentBonus += stone.CritChancePercentBonus;
CritDamagePercentBonus += stone.CritDamagePercentBonus;
MaxHealthPercentBonus += stone.MaxHealthPercentBonus;
ArmorPercentBonus += stone.ArmorPercentBonus;
MagicResistancePercentBonus += stone.MagicResistancePercentBonus;
}
public EquippableItemInstance()
{
StrengthBonus = 0;
AgilityBonus = 0;
IntelligenceBonus = 0;
SpiritBonus = 0;
VitalityBonus = 0;
StrengthPercentBonus = 0;
AgilityPercentBonus = 0;
IntelligencePercentBonus = 0;
SpiritPercentBonus = 0;
VitalityPercentBonus = 0;
AttackDamageBonus = 0;
SpellDamageBonus = 0;
CritChanceBonus = 0;
CritDamageBonus = 0;
MaxHealthBonus = 0;
ArmorBonus = 0;
MagicResistanceBonus = 0;
AttackDamagePercentBonus = 0;
SpellDamagePercentBonus = 0;
CritChancePercentBonus = 0;
CritDamagePercentBonus = 0;
MaxHealthPercentBonus = 0;
ArmorPercentBonus = 0;
MagicResistancePercentBonus = 0;
EquipmentType = EquipmentType.Helmet;
CraftableBase = false;
TotalUniqueStats = 0;
}
public EquippableItemInstance(EquippableItem template)
{
ItemName = template.ItemName;
Icon = template.Icon;
sellPricePlayer = template.sellPricePlayer;
sellPriceVendor = template.sellPriceVendor;
description = template.description;
templateIndex = ItemIndexer.Instance.Items.IndexOf(template);
StrengthBonus = template.StrengthBonus;
AgilityBonus = template.AgilityBonus;
IntelligenceBonus = template.IntelligenceBonus;
SpiritBonus = template.SpiritBonus;
VitalityBonus = template.VitalityBonus;
StrengthPercentBonus = template.StrengthPercentBonus;
AgilityPercentBonus = template.AgilityPercentBonus;
IntelligencePercentBonus = template.IntelligencePercentBonus;
SpiritPercentBonus = template.SpiritPercentBonus;
VitalityPercentBonus = template.VitalityPercentBonus;
AttackDamageBonus = template.AttackDamageBonus;
SpellDamageBonus = template.SpellDamageBonus;
CritChanceBonus = template.CritChanceBonus;
CritDamageBonus = template.CritDamageBonus;
MaxHealthBonus = template.MaxHealthBonus;
ArmorBonus = template.ArmorBonus;
MagicResistanceBonus = template.MagicResistanceBonus;
AttackDamagePercentBonus = template.AttackDamagePercentBonus;
SpellDamagePercentBonus = template.SpellDamagePercentBonus;
CritChancePercentBonus = template.CritChancePercentBonus;
CritDamagePercentBonus = template.CritDamagePercentBonus;
MaxHealthPercentBonus = template.MaxHealthPercentBonus;
ArmorPercentBonus = template.ArmorPercentBonus;
MagicResistancePercentBonus = template.MagicResistancePercentBonus;
EquipmentType = template.EquipmentType;
CraftableBase = template.CraftableBase;
TotalUniqueStats = template.TotalUniqueStats;
}
public EquippableItemInstance(EquippableItem template, bool randomizeStats)
{
ItemName = template.ItemName;
Icon = template.Icon;
sellPricePlayer = template.sellPricePlayer;
sellPriceVendor = template.sellPriceVendor;
description = template.description;
templateIndex = ItemIndexer.Instance.Items.IndexOf(template);
if (randomizeStats)
{
StrengthBonus = Random.Range(template.MinStrengthBonus, template.MaxStrengthBonus);
AgilityBonus = Random.Range(template.MinAgilityBonus, template.MaxAgilityBonus);
IntelligenceBonus = Random.Range(template.MinIntelligenceBonus, template.MaxIntelligenceBonus);
SpiritBonus = Random.Range(template.MinSpiritBonus, template.MaxSpiritBonus);
VitalityBonus = Random.Range(template.MinVitalityBonus, template.MaxVitalityBonus);
StrengthPercentBonus = Mathf.Round(Random.Range(template.MinStrengthPercentBonus, template.MaxStrengthPercentBonus) * 100f) / 100f;
AgilityPercentBonus = Mathf.Round(Random.Range(template.MinAgilityPercentBonus, template.MaxAgilityPercentBonus) * 100f) / 100f;
IntelligencePercentBonus = Mathf.Round(Random.Range(template.MinIntelligencePercentBonus, template.MaxIntelligencePercentBonus) * 100f) / 100f;
SpiritPercentBonus = Mathf.Round(Random.Range(template.MinSpiritPercentBonus, template.MaxSpiritPercentBonus) * 100f) / 100f;
VitalityPercentBonus = Mathf.Round(Random.Range(template.MinVitalityPercentBonus, template.MaxVitalityPercentBonus) * 100f) / 100f;
AttackDamageBonus = Random.Range(template.MinAttackDamageBonus, template.MaxAttackDamageBonus);
SpellDamageBonus = Random.Range(template.MinSpellDamageBonus, template.MaxSpellDamageBonus);
CritChanceBonus = Random.Range(template.MinCritChanceBonus, template.MaxCritChanceBonus);
CritDamageBonus = Random.Range(template.MinCritDamageBonus, template.MaxCritDamageBonus);
MaxHealthBonus = Random.Range(template.MinMaxHealthBonus, template.MaxMaxHealthBonus);
ArmorBonus = Random.Range(template.MinArmorBonus, template.MaxArmorBonus);
MagicResistanceBonus = Random.Range(template.MinMagicResistanceBonus, template.MaxMagicResistanceBonus);
AttackDamagePercentBonus = Mathf.Round(Random.Range(template.MinAttackDamagePercentBonus, template.MaxAttackDamagePercentBonus) * 100f) / 100f;
SpellDamagePercentBonus = Mathf.Round(Random.Range(template.MinSpellDamagePercentBonus, template.MaxSpellDamagePercentBonus) * 100f) / 100f;
CritChancePercentBonus = Mathf.Round(Random.Range(template.MinCritChancePercentBonus, template.MaxCritChancePercentBonus) * 100f) / 100f;
CritDamagePercentBonus = Mathf.Round(Random.Range(template.MinCritDamagePercentBonus, template.MaxCritDamagePercentBonus) * 100f) / 100f;
MaxHealthPercentBonus = Mathf.Round(Random.Range(template.MinMaxHealthPercentBonus, template.MaxMaxHealthPercentBonus) * 100f) / 100f;
ArmorPercentBonus = Mathf.Round(Random.Range(template.MinArmorPercentBonus, template.MaxArmorPercentBonus) * 100f) / 100f;
MagicResistancePercentBonus = Mathf.Round(Random.Range(template.MinMagicResistancePercentBonus, template.MaxMagicResistancePercentBonus) * 100f) / 100f;
}
else
{
StrengthBonus = template.StrengthBonus;
AgilityBonus = template.AgilityBonus;
IntelligenceBonus = template.IntelligenceBonus;
SpiritBonus = template.SpiritBonus;
VitalityBonus = template.VitalityBonus;
StrengthPercentBonus = template.StrengthPercentBonus;
AgilityPercentBonus = template.AgilityPercentBonus;
IntelligencePercentBonus = template.IntelligencePercentBonus;
SpiritPercentBonus = template.SpiritPercentBonus;
VitalityPercentBonus = template.VitalityPercentBonus;
AttackDamageBonus = template.AttackDamageBonus;
SpellDamageBonus = template.SpellDamageBonus;
CritChanceBonus = template.CritChanceBonus;
CritDamageBonus = template.CritDamageBonus;
MaxHealthBonus = template.MaxHealthBonus;
ArmorBonus = template.ArmorBonus;
MagicResistanceBonus = template.MagicResistanceBonus;
AttackDamagePercentBonus = template.AttackDamagePercentBonus;
SpellDamagePercentBonus = template.SpellDamagePercentBonus;
CritChancePercentBonus = template.CritChancePercentBonus;
CritDamagePercentBonus = template.CritDamagePercentBonus;
MaxHealthPercentBonus = template.MaxHealthPercentBonus;
ArmorPercentBonus = template.ArmorPercentBonus;
MagicResistancePercentBonus = template.MagicResistancePercentBonus;
}
EquipmentType = template.EquipmentType;
CraftableBase = template.CraftableBase;
TotalUniqueStats = template.TotalUniqueStats;
}
}
[System.Serializable]
public class CraftingStatStone
{
public int StrengthBonus;
public int AgilityBonus;
public int IntelligenceBonus;
public int SpiritBonus;
public int VitalityBonus;
[Space]
public float StrengthPercentBonus;
public float AgilityPercentBonus;
public float IntelligencePercentBonus;
public float SpiritPercentBonus;
public float VitalityPercentBonus;
[Space]
public int AttackDamageBonus;
public int SpellDamageBonus;
public int CritChanceBonus;
public int CritDamageBonus;
public int MaxHealthBonus;
public int ArmorBonus;
public int MagicResistanceBonus;
[Space]
public float AttackDamagePercentBonus;
public float SpellDamagePercentBonus;
public float CritChancePercentBonus;
public float CritDamagePercentBonus;
public float MaxHealthPercentBonus;
public float ArmorPercentBonus;
public float MagicResistancePercentBonus;
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 67da004950510874d9b45cd829a33aec
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,190 @@
using System.Collections;
using System.Collections.Generic;
using System.Text;
using UnityEngine;
using UnityEngine.UI;
public class EquippedItemTooltip : MonoBehaviour
{
public static EquippedItemTooltip Instance;
[SerializeField] Text nameText;
[SerializeField] Text slotTypeText;
[SerializeField] Text sellPriceText;
[SerializeField] Text statsText;
private StringBuilder sb = new StringBuilder();
private string sellText = "Sell: ";
private void Awake()
{
if (Instance == null)
{
Instance = this;
}
else
{
Destroy(this);
}
gameObject.SetActive(false);
}
private void ShowNonEquippableItemTooltip(ItemInstance itemToShow, bool fromVendor = false)
{
if (itemToShow == null) return;
gameObject.SetActive(true);
nameText.text = itemToShow.ItemName;
slotTypeText.text = "";
if (fromVendor)
sellPriceText.text = sellText + itemToShow.sellPriceVendor.ToString();
else
sellPriceText.text = sellText + itemToShow.sellPricePlayer.ToString();
statsText.text = itemToShow.description;
}
public void ShowTooltip(ItemInstance itemToShow)
{
if (!(itemToShow is EquippableItemInstance))
{
ShowNonEquippableItemTooltip(itemToShow);
return;
}
EquippableItemInstance item = (EquippableItemInstance)itemToShow;
gameObject.SetActive(true);
nameText.text = item.ItemName;
slotTypeText.text = item.EquipmentType.ToString();
sellPriceText.text = sellText + item.sellPricePlayer.ToString();
sb.Length = 0;
AddStatText(item.StrengthBonus, " Strength");
AddStatText(item.AgilityBonus, " Agility");
AddStatText(item.IntelligenceBonus, " Intelligence");
AddStatText(item.SpiritBonus, " Spirit");
AddStatText(item.VitalityBonus, " Vitality");
sb.AppendLine();
AddStatText(item.StrengthPercentBonus * 100, "% Strength");
AddStatText(item.AgilityPercentBonus * 100, "% Agility");
AddStatText(item.IntelligencePercentBonus * 100, "% Intelligence");
AddStatText(item.SpiritPercentBonus * 100, "% Spirit");
AddStatText(item.VitalityPercentBonus * 100, "% Vitality");
sb.AppendLine();
AddStatText(item.AttackDamageBonus, " Attack Damage");
AddStatText(item.SpellDamageBonus, " Spell Damage");
AddStatText(item.CritChanceBonus, "% Base Crit Chance");
AddStatText(item.CritDamageBonus, "% Base Crit Damage");
AddStatText(item.MaxHealthBonus, " Max Health");
AddStatText(item.ArmorBonus, " Armor");
AddStatText(item.MagicResistanceBonus, " Magic Resistance");
sb.AppendLine();
AddStatText(item.AttackDamagePercentBonus * 100, " % Attack Damage");
AddStatText(item.SpellDamagePercentBonus * 100, " % Spell Damage");
AddStatText(item.CritChancePercentBonus * 100, "% Increased Crit Chance");
AddStatText(item.CritDamagePercentBonus * 100, "% Increased Crit Damage");
AddStatText(item.MaxHealthPercentBonus * 100, " % Max Health");
AddStatText(item.ArmorPercentBonus * 100, " % Armor");
AddStatText(item.MagicResistancePercentBonus * 100, " % Magic Resistance");
if (!string.IsNullOrEmpty(itemToShow.description))
{
sb.AppendLine();
sb.AppendLine();
sb.Append(itemToShow.description);
}
statsText.text = sb.ToString();
}
public void ShowTooltipVendor(ItemInstance itemFromVendor)
{
if (!(itemFromVendor is EquippableItemInstance))
{
ShowNonEquippableItemTooltip(itemFromVendor, true);
return;
}
EquippableItemInstance item = (EquippableItemInstance)itemFromVendor;
gameObject.SetActive(true);
nameText.text = item.ItemName;
slotTypeText.text = item.EquipmentType.ToString();
sellPriceText.text = sellText + item.sellPriceVendor.ToString();
sb.Length = 0;
AddStatText(item.StrengthBonus, " Strength");
AddStatText(item.AgilityBonus, " Agility");
AddStatText(item.IntelligenceBonus, " Intelligence");
AddStatText(item.SpiritBonus, " Spirit");
AddStatText(item.VitalityBonus, " Vitality");
sb.AppendLine();
AddStatText(item.StrengthPercentBonus * 100, "% Strength");
AddStatText(item.AgilityPercentBonus * 100, "% Agility");
AddStatText(item.IntelligencePercentBonus * 100, "% Intelligence");
AddStatText(item.SpiritPercentBonus * 100, "% Spirit");
AddStatText(item.VitalityPercentBonus * 100, "% Vitality");
sb.AppendLine();
AddStatText(item.AttackDamageBonus, " Attack Damage");
AddStatText(item.SpellDamageBonus, " Spell Damage");
AddStatText(item.CritChanceBonus, "% Base Crit Chance");
AddStatText(item.CritDamageBonus, "% Base Crit Damage");
AddStatText(item.MaxHealthBonus, " Max Health");
AddStatText(item.ArmorBonus, " Armor");
AddStatText(item.MagicResistanceBonus, " Magic Resistance");
sb.AppendLine();
AddStatText(item.AttackDamagePercentBonus * 100, " % Attack Damage");
AddStatText(item.SpellDamagePercentBonus * 100, " % Spell Damage");
AddStatText(item.CritChancePercentBonus * 100, "% Increased Crit Chance");
AddStatText(item.CritDamagePercentBonus * 100, "% Increased Crit Damage");
AddStatText(item.MaxHealthPercentBonus * 100, " % Max Health");
AddStatText(item.ArmorPercentBonus * 100, " % Armor");
AddStatText(item.MagicResistancePercentBonus * 100, " % Magic Resistance");
if (!string.IsNullOrEmpty(itemFromVendor.description))
{
sb.AppendLine();
sb.AppendLine();
sb.Append(itemFromVendor.description);
}
statsText.text = sb.ToString();
}
public void HideTooltip()
{
gameObject.SetActive(false);
}
private void AddStatText(float statBonus, string statName)
{
if (statBonus != 0)
{
if (sb.Length > 0)
sb.AppendLine();
if (statBonus > 0)
sb.Append("+");
sb.Append(statBonus);
sb.Append(statName);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6fd71483ced6e1e479ea344efd0fa806
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -15,3 +15,32 @@ public class HiddenMap : ConsumableItem
onMapZoneDiscovered.Raise((int)mapZone);
}
}
[System.Serializable]
public class HiddenMapInstance : ConsumableItemInstance
{
public HiddenMapZone mapZone;
public GameEvent_Int onMapZoneDiscovered;
public HiddenMapInstance(HiddenMap template)
{
ItemName = template.ItemName;
Icon = template.Icon;
sellPricePlayer = template.sellPricePlayer;
sellPriceVendor = template.sellPriceVendor;
description = template.description;
templateIndex = ItemIndexer.Instance.Items.IndexOf(template);
mapZone = template.mapZone;
onMapZoneDiscovered = template.onMapZoneDiscovered;
}
public override void Consume()
{
PlayerDataHandler.Instance.SaveMapUsedProgress(PlayerDataHandler.Instance.currentPlayerName.Value, mapZone);
onMapZoneDiscovered.Raise((int)mapZone);
}
}

View File

@ -7,7 +7,7 @@ namespace Kryz.CharacterStats.Examples
{
public class Inventory : MonoBehaviour
{
[SerializeField] List<Item> items;
[SerializeField] List<ItemInstance> items;
[SerializeField] Transform itemsParent;
[SerializeField] ItemSlot[] itemSlots;
[SerializeField] GameObject characterPanelUI;
@ -15,12 +15,14 @@ namespace Kryz.CharacterStats.Examples
[SerializeField] GameEventListener onJoinedRoom;
[SerializeField] GameEventListener OnGameOptionsOpenned;
public UnityEvent_Item OnItemRightClickedEvent = new UnityEvent_Item();
public UnityEvent_Item OnItemRightClickedEventWhileVendoring = new UnityEvent_Item();
public UnityEvent_ItemInstance OnItemRightClickedEvent = new UnityEvent_ItemInstance();
public UnityEvent_ItemInstance OnItemRightClickedEventWhileVendoring = new UnityEvent_ItemInstance();
public UnityEvent_ItemInstance OnItemRightClickedEventWhileCrafting = new UnityEvent_ItemInstance();
InventoryData inventoryData = new InventoryData();
InventoryInstanceData inventoryData = new InventoryInstanceData();
public bool isVendoring;
public bool isCrafting;
#region Singleton
private static Inventory _instance;
@ -50,11 +52,16 @@ namespace Kryz.CharacterStats.Examples
onJoinedRoom.Response.AddListener(LoadInventory);
OnGameOptionsOpenned.Response.AddListener(() => isVendoring = false);
OnGameOptionsOpenned.Response.AddListener(() => isCrafting = false);
}
private void HandleItemSlotOnRightClick(Item item)
private void HandleItemSlotOnRightClick(ItemInstance item)
{
if(isVendoring)
if(isCrafting)
{
OnItemRightClickedEventWhileCrafting.Invoke(item);
}
else if (isVendoring)
{
OnItemRightClickedEventWhileVendoring.Invoke(item);
}
@ -86,7 +93,8 @@ namespace Kryz.CharacterStats.Examples
itemSlots[i].Item = items[i];
if (ItemIndexer.Instance != null)
inventoryData.inventoryItems[i] = ItemIndexer.Instance.Items.IndexOf(items[i]);
inventoryData.inventoryItems[i] = items[i];
//inventoryData.inventoryItems[i] = ItemIndexer.Instance.Items.IndexOf(items[i]);
}
@ -94,7 +102,7 @@ namespace Kryz.CharacterStats.Examples
{
itemSlots[i].Item = null;
inventoryData.inventoryItems[i] = -1;
inventoryData.inventoryItems[i] = null;
}
if (!Application.isPlaying) return;
if (!PhotonNetwork.IsConnected) return;
@ -104,7 +112,7 @@ namespace Kryz.CharacterStats.Examples
PlayerDataHandler.Instance.SaveCharacterInventoryData(PlayerDataHandler.Instance.currentPlayerName.Value, PlayerDataHandler.Instance.currentCharacterName.Value, inventoryData);
}
public bool AddItem(Item item)
public bool AddItem(ItemInstance item)
{
if (IsFull())
return false;
@ -115,7 +123,7 @@ namespace Kryz.CharacterStats.Examples
return true;
}
public bool RemoveItem(Item item)
public bool RemoveItem(ItemInstance item)
{
if (items.Remove(item))
{
@ -127,7 +135,10 @@ namespace Kryz.CharacterStats.Examples
public bool IsFull()
{
Debug.Log("Is Full: item count = " + items.Count + " itemSlots lenght = " + itemSlots.Length + " findAllnull/empty names " + items.FindAll(x => string.IsNullOrEmpty(x.ItemName)).Count);
Debug.Log("Is Full: " + (items.Count >= itemSlots.Length || items.FindAll(x => string.IsNullOrEmpty(x.ItemName)).Count <= 0));
return items.Count >= itemSlots.Length;
//return items.FindAll(x => string.IsNullOrEmpty(x.ItemName)).Count <= 0;
}
public void LoadInventory()
@ -142,16 +153,18 @@ namespace Kryz.CharacterStats.Examples
Debug.Log("Success Loading Inventory");
for (int i = 0; i < inventoryData.inventoryItems.Length; i++)
{
if (inventoryData.inventoryItems[i] < 0) continue;
if (inventoryData.inventoryItems[i] == null) continue;
if (string.IsNullOrEmpty(inventoryData.inventoryItems[i].ItemName)) continue;
items.Add(ItemIndexer.Instance.Items[inventoryData.inventoryItems[i]]);
items.Add(inventoryData.inventoryItems[i]);
//items.Add(ItemIndexer.Instance.Items[inventoryData.inventoryItems[i]]);
}
RefreshUI(false);
}
else
{
inventoryData = new InventoryData();
inventoryData = new InventoryInstanceData();
RefreshUI(true);
//PlayerDataHandler.Instance.SaveCharacterInventoryData(PlayerDataHandler.Instance.currentPlayerName.Value, PlayerDataHandler.Instance.currentCharacterName.Value, inventoryData);

View File

@ -10,5 +10,26 @@ namespace Kryz.CharacterStats.Examples
public int sellPricePlayer;
public int sellPriceVendor;
public string description;
public static ItemInstance ConvertTemplateIntoInstance(Item template, bool randomizeStats = false)
{
if(template is EquippableItem item)
{
return new EquippableItemInstance(item, item.CraftableBase);
}
else if(template is HiddenMap map)
{
return new HiddenMapInstance(map);
}
return new ItemInstance(template);
}
public static ItemInstance ConvertTemplateIntoInstance(Item template, int templateIndex, bool randomizeStats = false)
{
if (template is EquippableItem item)
{
return new EquippableItemInstance(item, randomizeStats);
}
return new ItemInstance(template, templateIndex);
}
}
}

View File

@ -0,0 +1,45 @@
using Kryz.CharacterStats.Examples;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[System.Serializable]
public class ItemInstance
{
public string ItemName;
public Sprite Icon;
public int sellPricePlayer;
public int sellPriceVendor;
public string description;
public int templateIndex;
public ItemInstance()
{
ItemName = "";
Icon = null;
sellPricePlayer = 0;
sellPriceVendor = 0;
description = "";
templateIndex = 0;
}
public ItemInstance(Item template)
{
ItemName = template.ItemName;
Icon = template.Icon;
sellPricePlayer = template.sellPricePlayer;
sellPriceVendor = template.sellPriceVendor;
description = template.description;
templateIndex = ItemIndexer.Instance.Items.IndexOf(template);
}
public ItemInstance(Item template, int templateIndex)
{
ItemName = template.ItemName;
Icon = template.Icon;
sellPricePlayer = template.sellPricePlayer;
sellPriceVendor = template.sellPriceVendor;
description = template.description;
this.templateIndex = templateIndex;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: bf86b40aca6176849a51b2157332a427
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -10,17 +10,21 @@ namespace Kryz.CharacterStats.Examples
{
[SerializeField] protected Image image;
public UnityEvent_Item OnRightClickEvent = new UnityEvent_Item();
public UnityEvent_ItemInstance OnRightClickEvent = new UnityEvent_ItemInstance();
protected Item _item;
public Item Item {
protected ItemInstance _item;
public ItemInstance Item {
get { return _item; }
set {
_item = value;
if (_item == null) {
image.enabled = false;
} else {
} else if(_item.Icon == null) {
image.enabled = false;
}
else
{
image.sprite = _item.Icon;
image.enabled = true;
}
@ -51,11 +55,20 @@ namespace Kryz.CharacterStats.Examples
public virtual void OnPointerEnter(PointerEventData eventData)
{
ItemTooltip.Instance.ShowTooltip(Item);
if (Item is EquippableItemInstance ei)
{
EquippableItemInstance equippedInSameSlot = EquipmentPanel.Instance.GetEquippedItemOnSpecificSlot(ei.EquipmentType);
if (equippedInSameSlot != null)
{
EquippedItemTooltip.Instance.ShowTooltip(equippedInSameSlot);
}
}
}
public void OnPointerExit(PointerEventData eventData)
{
ItemTooltip.Instance.HideTooltip();
EquippedItemTooltip.Instance.HideTooltip();
}
}
}

View File

@ -29,7 +29,7 @@ namespace Kryz.CharacterStats.Examples
}
gameObject.SetActive(false);
}
private void ShowNonEquippableItemTooltip(Item itemToShow, bool fromVendor = false)
private void ShowNonEquippableItemTooltip(ItemInstance itemToShow, bool fromVendor = false)
{
if (itemToShow == null) return;
@ -44,15 +44,15 @@ namespace Kryz.CharacterStats.Examples
statsText.text = itemToShow.description;
}
public void ShowTooltip(Item itemToShow)
public void ShowTooltip(ItemInstance itemToShow)
{
if (!(itemToShow is EquippableItem))
if (!(itemToShow is EquippableItemInstance))
{
ShowNonEquippableItemTooltip(itemToShow);
return;
}
EquippableItem item = (EquippableItem)itemToShow;
EquippableItemInstance item = (EquippableItemInstance)itemToShow;
gameObject.SetActive(true);
@ -106,15 +106,15 @@ namespace Kryz.CharacterStats.Examples
statsText.text = sb.ToString();
}
public void ShowTooltipVendor(Item itemFromVendor)
public void ShowTooltipVendor(ItemInstance itemFromVendor)
{
if (!(itemFromVendor is EquippableItem))
if (!(itemFromVendor is EquippableItemInstance))
{
ShowNonEquippableItemTooltip(itemFromVendor, true);
return;
}
EquippableItem item = (EquippableItem)itemFromVendor;
EquippableItemInstance item = (EquippableItemInstance)itemFromVendor;
gameObject.SetActive(true);

View File

@ -167,32 +167,33 @@ namespace Kryz.CharacterStats.Examples
}
private void EquipFromInventory(Item item)
private void EquipFromInventory(ItemInstance item)
{
if (item is EquippableItem)
if (item is EquippableItemInstance)
{
Equip((EquippableItem)item);
Equip((EquippableItemInstance)item);
}
}
private void UnequipFromEquipPanel(Item item)
private void UnequipFromEquipPanel(ItemInstance item)
{
if (item is EquippableItem)
if (item is EquippableItemInstance)
{
Unequip((EquippableItem)item);
Unequip((EquippableItemInstance)item);
}
}
public void Equip(EquippableItem item)
public void Equip(EquippableItemInstance item)
{
if (inventory.RemoveItem(item))
{
ItemTooltip.Instance.HideTooltip();
EquippedItemTooltip.Instance.HideTooltip();
EquippableItem previousItem;
EquippableItemInstance previousItem;
if (equipmentPanel.AddItem(item, out previousItem))
{
if (previousItem != null)
if (previousItem != null && !string.IsNullOrEmpty(previousItem.ItemName))
{
inventory.AddItem(previousItem);
previousItem.Unequip(this);
@ -209,7 +210,7 @@ namespace Kryz.CharacterStats.Examples
}
}
public void Unequip(EquippableItem item)
public void Unequip(EquippableItemInstance item)
{
if (!inventory.IsFull() && equipmentPanel.RemoveItem(item))
{
@ -297,7 +298,7 @@ namespace Kryz.CharacterStats.Examples
break;
}
}
((EquippableItem)slots[i].Item).Equip(this);
((EquippableItemInstance)slots[i].Item).Equip(this);
statPanel.UpdateStatValues();
onUpdateStatValues.Invoke();
}

View File

@ -431,6 +431,86 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &123590469623239277
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3641119934303568818}
- component: {fileID: 6191071655151349044}
- component: {fileID: 7789239333373587013}
m_Layer: 5
m_Name: EquippedTag
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3641119934303568818
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 123590469623239277}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2959850296485017366}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 410, y: 0}
m_Pivot: {x: 0.5, y: 1}
--- !u!222 &6191071655151349044
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 123590469623239277}
m_CullTransparentMesh: 1
--- !u!114 &7789239333373587013
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 123590469623239277}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 12800000, guid: b3797d5d853d86945b0da6c9793549c9, type: 3}
m_FontSize: 25
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 2
m_MaxSize: 40
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: 'Equipped:'
--- !u!1 &185707331849063518
GameObject:
m_ObjectHideFlags: 0
@ -3795,6 +3875,465 @@ MonoBehaviour:
experienceBar: {fileID: 5985558802430895850}
experienceBarFill: {fileID: 9132331429105379675}
onPlayerSpawned: {fileID: 7475116342871483259}
--- !u!1 &2959850296496625622
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2959850296484922440}
- component: {fileID: 2959850296485087984}
- component: {fileID: 2959850296507485286}
m_Layer: 5
m_Name: Item Slot Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2959850296484922440
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496625622}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2959850296485017366}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 410, y: 0}
m_Pivot: {x: 0.5, y: 1}
--- !u!222 &2959850296485087984
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496625622}
m_CullTransparentMesh: 1
--- !u!114 &2959850296507485286
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496625622}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 0.19607843, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 12800000, guid: b3797d5d853d86945b0da6c9793549c9, type: 3}
m_FontSize: 22
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 10
m_MaxSize: 40
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: Slot
--- !u!1 &2959850296496721988
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2959850296484903916}
- component: {fileID: 2959850296485125332}
- component: {fileID: 2959850296507435462}
- component: {fileID: 2959850296507453084}
m_Layer: 5
m_Name: Background
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2959850296484903916
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496721988}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2959850296485017366}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2959850296485125332
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496721988}
m_CullTransparentMesh: 1
--- !u!114 &2959850296507435462
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496721988}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: b56c5c1572d7a9d44a96fce8f0a6bba7, type: 3}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &2959850296507453084
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496721988}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreLayout: 1
m_MinWidth: -1
m_MinHeight: -1
m_PreferredWidth: -1
m_PreferredHeight: -1
m_FlexibleWidth: -1
m_FlexibleHeight: -1
m_LayoutPriority: 1
--- !u!1 &2959850296496804030
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2959850296484906414}
- component: {fileID: 2959850296485109758}
- component: {fileID: 2959850296507443966}
m_Layer: 5
m_Name: Item Stats Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2959850296484906414
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496804030}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2959850296485017366}
m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 410, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2959850296485109758
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496804030}
m_CullTransparentMesh: 1
--- !u!114 &2959850296507443966
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496804030}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.19607843, g: 1, b: 0.19607843, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 28
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 10
m_MaxSize: 40
m_Alignment: 3
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1.25
m_Text: Stats
--- !u!1 &2959850296496806802
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2959850296485017366}
- component: {fileID: 2959850296507468170}
- component: {fileID: 2959850296507448014}
- component: {fileID: 2959850296507437766}
- component: {fileID: 4489233711721925659}
m_Layer: 5
m_Name: EquippedItem Tooltip
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2959850296485017366
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496806802}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.74999994, y: 0.74999994, z: 0.74999994}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 2959850296484903916}
- {fileID: 3641119934303568818}
- {fileID: 2959850296484889860}
- {fileID: 2959850296484922440}
- {fileID: 4379688128455002370}
- {fileID: 2959850296484906414}
m_Father: {fileID: 4340701886936047322}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 522.35, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0}
--- !u!114 &2959850296507468170
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496806802}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Padding:
m_Left: 20
m_Right: 20
m_Top: 10
m_Bottom: 15
m_ChildAlignment: 0
m_Spacing: 10
m_ChildForceExpandWidth: 1
m_ChildForceExpandHeight: 0
m_ChildControlWidth: 0
m_ChildControlHeight: 1
m_ChildScaleWidth: 0
m_ChildScaleHeight: 0
m_ReverseArrangement: 0
--- !u!114 &2959850296507448014
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496806802}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
m_Name:
m_EditorClassIdentifier:
m_HorizontalFit: 1
m_VerticalFit: 2
--- !u!114 &2959850296507437766
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496806802}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreLayout: 0
m_MinWidth: 450
m_MinHeight: 280
m_PreferredWidth: -1
m_PreferredHeight: -1
m_FlexibleWidth: -1
m_FlexibleHeight: -1
m_LayoutPriority: 1
--- !u!114 &4489233711721925659
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496806802}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6fd71483ced6e1e479ea344efd0fa806, type: 3}
m_Name:
m_EditorClassIdentifier:
nameText: {fileID: 2959850296507479872}
slotTypeText: {fileID: 2959850296507485286}
sellPriceText: {fileID: 1158006711533175311}
statsText: {fileID: 2959850296507443966}
--- !u!1 &2959850296496814974
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2959850296484889860}
- component: {fileID: 2959850296485207308}
- component: {fileID: 2959850296507479872}
m_Layer: 5
m_Name: Item Name Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2959850296484889860
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496814974}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2959850296485017366}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 410, y: 0}
m_Pivot: {x: 0.5, y: 1}
--- !u!222 &2959850296485207308
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496814974}
m_CullTransparentMesh: 1
--- !u!114 &2959850296507479872
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2959850296496814974}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 12800000, guid: b3797d5d853d86945b0da6c9793549c9, type: 3}
m_FontSize: 40
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 3
m_MaxSize: 40
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: Item Name
--- !u!1 &3044780664683882875
GameObject:
m_ObjectHideFlags: 0
@ -3848,6 +4387,71 @@ MonoBehaviour:
- {fileID: 3005345654528102386}
- {fileID: 6460065817480779508}
onPlayerSpawned: {fileID: 7475116342871483259}
--- !u!1 &3052407112493533417
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4340701886936047322}
- component: {fileID: 7032400310085581781}
m_Layer: 5
m_Name: ItemTooltipsGroup
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4340701886936047322
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3052407112493533417}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 7475116342296380174}
- {fileID: 2959850296485017366}
m_Father: {fileID: 7475116342604559439}
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0}
m_AnchorMax: {x: 0.5, y: 0}
m_AnchoredPosition: {x: 0, y: 49.999958}
m_SizeDelta: {x: 810, y: 600}
m_Pivot: {x: 0.5, y: 0}
--- !u!114 &7032400310085581781
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3052407112493533417}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Padding:
m_Left: 0
m_Right: 140
m_Top: 0
m_Bottom: 0
m_ChildAlignment: 7
m_Spacing: 0
m_ChildForceExpandWidth: 0
m_ChildForceExpandHeight: 0
m_ChildControlWidth: 0
m_ChildControlHeight: 0
m_ChildScaleWidth: 1
m_ChildScaleHeight: 0
m_ReverseArrangement: 0
--- !u!1 &3209634625877957679
GameObject:
m_ObjectHideFlags: 0
@ -4396,6 +5000,108 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4148797534487268632
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4379688128455002370}
- component: {fileID: 7703136614739697559}
- component: {fileID: 1158006711533175311}
- component: {fileID: 6335949577219542693}
m_Layer: 5
m_Name: Value Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4379688128455002370
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4148797534487268632}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 7552423618112014175}
m_Father: {fileID: 2959850296485017366}
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 380, y: 0}
m_Pivot: {x: 0, y: 1}
--- !u!222 &7703136614739697559
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4148797534487268632}
m_CullTransparentMesh: 1
--- !u!114 &1158006711533175311
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4148797534487268632}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 0.19607843, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 22
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 10
m_MaxSize: 40
m_Alignment: 5
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: 'Sell: X'
--- !u!114 &6335949577219542693
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4148797534487268632}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreLayout: 0
m_MinWidth: -1
m_MinHeight: -1
m_PreferredWidth: 380
m_PreferredHeight: -1
m_FlexibleWidth: 0
m_FlexibleHeight: -1
m_LayoutPriority: 1
--- !u!1 &4154880102837703214
GameObject:
m_ObjectHideFlags: 0
@ -6514,6 +7220,18 @@ MonoBehaviour:
- {fileID: 11400000, guid: 54e1bf68d0f57a240a6234a5c66f4d25, type: 2}
- {fileID: 11400000, guid: 85e280a601d74214881a22493d1b38cf, type: 2}
- {fileID: 11400000, guid: 1f0db102aa4283049a5a884470b4957b, type: 2}
- {fileID: 11400000, guid: 5b802f347f7753d49a3a8427c71d6e42, type: 2}
- {fileID: 11400000, guid: 906dd41cf68ae944a81aea528bdab077, type: 2}
- {fileID: 11400000, guid: 401b486cea6d8df45924fdcf57e4b2af, type: 2}
- {fileID: 11400000, guid: b1c9b085cdd8bdc44bbe585bbba4c187, type: 2}
- {fileID: 11400000, guid: a9111f49f48fdc84ea5d6432fb240b9c, type: 2}
- {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- {fileID: 11400000, guid: be9886b162cf8ec408546d7efcb4ea62, type: 2}
- {fileID: 11400000, guid: 2b511380fccb3a84b8b057ac6a571950, type: 2}
- {fileID: 11400000, guid: 1a978966e0f4e374ba79ba557e8f762f, type: 2}
- {fileID: 11400000, guid: acd83131fcbffa9438937e119884e1dc, type: 2}
- {fileID: 11400000, guid: f8d7d9d387f13364e89147083e476ffa, type: 2}
- {fileID: 11400000, guid: 65a96a6b8c9196841b545beff92eee98, type: 2}
--- !u!1 &6001753816787427263
GameObject:
m_ObjectHideFlags: 0
@ -9700,7 +10418,11 @@ MonoBehaviour:
OnItemRightClickedEventWhileVendoring:
m_PersistentCalls:
m_Calls: []
OnItemRightClickedEventWhileCrafting:
m_PersistentCalls:
m_Calls: []
isVendoring: 0
isCrafting: 0
--- !u!1 &7475116342385688833
GameObject:
m_ObjectHideFlags: 0
@ -9960,7 +10682,7 @@ RectTransform:
- {fileID: 2306657105594587368}
- {fileID: 1083758498388601188}
- {fileID: 7475116342305776693}
- {fileID: 7475116342296380174}
- {fileID: 4340701886936047322}
- {fileID: 7475116340865517212}
- {fileID: 7475116342128910726}
- {fileID: 8303459673738591506}
@ -10089,6 +10811,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
itemTooltip: {fileID: 7475116342276730762}
equippedItemTooltip: {fileID: 2959850296496806802}
statTooltip: {fileID: 7475116340887898890}
keyBinder: {fileID: 7475116340942364666}
--- !u!1 &7475116342612539502
@ -12063,6 +12786,82 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: be11e87282fdea645a60f6c7575bc0b0, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &9059627393518490427
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7552423618112014175}
- component: {fileID: 3668201335071149038}
- component: {fileID: 5378828740748686631}
m_Layer: 5
m_Name: Image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7552423618112014175
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9059627393518490427}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4379688128455002370}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 1, y: 0.5}
m_AnchorMax: {x: 1, y: 0.5}
m_AnchoredPosition: {x: 40, y: 0}
m_SizeDelta: {x: 50, y: 50}
m_Pivot: {x: 1, y: 0.5}
--- !u!222 &3668201335071149038
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9059627393518490427}
m_CullTransparentMesh: 1
--- !u!114 &5378828740748686631
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9059627393518490427}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 9d5365d85f9ac2e46b561528dae6e5ab, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &9120684351508125223
GameObject:
m_ObjectHideFlags: 0
@ -18721,7 +19520,7 @@ PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 7475116342604559439}
m_TransformParent: {fileID: 4340701886936047322}
m_Modifications:
- target: {fileID: 118308, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_Name
@ -18753,11 +19552,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_RootOrder
value: 8
value: 0
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_AnchorMax.y
@ -18765,7 +19564,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_AnchorMin.y
@ -18781,15 +19580,15 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_LocalScale.x
value: 0.75
value: 0.74999994
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_LocalScale.y
value: 0.75
value: 0.74999994
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_LocalScale.z
value: 0.75
value: 0.74999994
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_LocalPosition.x
@ -18821,11 +19620,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
value: 184.85002
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 50
value: 0
objectReference: {fileID: 0}
- target: {fileID: 22405792, guid: 98484fbd97870af4d8569162460a89bb, type: 3}
propertyPath: m_LocalEulerAnglesHint.x

View File

@ -1289,6 +1289,10 @@ PrefabInstance:
propertyPath: nonEquippablesDrops.Array.size
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.size
value: 13
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: nonEquippablesDrops.Array.data[0]
value:
@ -1297,6 +1301,962 @@ PrefabInstance:
propertyPath: nonEquippablesDrops.Array.data[1]
value:
objectReference: {fileID: 11400000, guid: a6c738232ec60474f8edc7718e576d07, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[0].drop
value:
objectReference: {fileID: 11400000, guid: 1f0db102aa4283049a5a884470b4957b, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[1].drop
value:
objectReference: {fileID: 11400000, guid: 5b802f347f7753d49a3a8427c71d6e42, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[2].drop
value:
objectReference: {fileID: 11400000, guid: 906dd41cf68ae944a81aea528bdab077, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[3].drop
value:
objectReference: {fileID: 11400000, guid: 401b486cea6d8df45924fdcf57e4b2af, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[4].drop
value:
objectReference: {fileID: 11400000, guid: b1c9b085cdd8bdc44bbe585bbba4c187, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[5].drop
value:
objectReference: {fileID: 11400000, guid: a9111f49f48fdc84ea5d6432fb240b9c, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[6].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[7].drop
value:
objectReference: {fileID: 11400000, guid: be9886b162cf8ec408546d7efcb4ea62, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[8].drop
value:
objectReference: {fileID: 11400000, guid: 2b511380fccb3a84b8b057ac6a571950, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[9].drop
value:
objectReference: {fileID: 11400000, guid: 1a978966e0f4e374ba79ba557e8f762f, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[10].drop
value:
objectReference: {fileID: 11400000, guid: acd83131fcbffa9438937e119884e1dc, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[11].drop
value:
objectReference: {fileID: 11400000, guid: f8d7d9d387f13364e89147083e476ffa, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[12].drop
value:
objectReference: {fileID: 11400000, guid: 65a96a6b8c9196841b545beff92eee98, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[13].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[14].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[15].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[16].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[17].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[18].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[19].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[20].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[21].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[22].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[23].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[24].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[25].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[26].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[27].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[28].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[29].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[30].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[31].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[32].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[33].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[34].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[35].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[36].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[37].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[38].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[39].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[40].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[41].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[42].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[43].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[44].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[45].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[46].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[47].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[48].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[49].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[50].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[51].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[52].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[53].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[54].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[55].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[56].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[57].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[58].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[59].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[60].drop
value:
objectReference: {fileID: 11400000, guid: e2293ab47a0a29843bfa6efaee4202a1, type: 2}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[0].weight
value: 6
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[1].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[2].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[3].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[4].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[5].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[6].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[7].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[8].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[9].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[10].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[11].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[12].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[13].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[14].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[15].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[16].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[17].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[18].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[19].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[20].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[21].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[22].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[23].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[24].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[25].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[26].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[27].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[28].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[29].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[30].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[31].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[32].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[33].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[34].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[35].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[36].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[37].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[38].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[39].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[40].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[41].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[42].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[43].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[44].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[45].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[46].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[47].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[48].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[49].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[50].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[51].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[52].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[53].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[54].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[55].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[56].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[57].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[58].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[59].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[60].weight
value: 35
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[0].lowestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[1].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[2].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[3].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[4].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[5].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[6].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[7].lowestPossibleDifficulty
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[8].lowestPossibleDifficulty
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[9].lowestPossibleDifficulty
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[0].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[10].lowestPossibleDifficulty
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[11].lowestPossibleDifficulty
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[12].lowestPossibleDifficulty
value: 2
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[13].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[14].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[15].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[16].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[17].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[18].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[19].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[1].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[20].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[21].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[22].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[23].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[24].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[25].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[26].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[27].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[28].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[29].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[2].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[30].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[31].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[32].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[33].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[34].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[35].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[36].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[37].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[38].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[39].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[3].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[40].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[41].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[42].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[43].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[44].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[45].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[46].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[47].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[48].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[49].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[4].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[50].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[51].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[52].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[53].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[54].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[55].lowestPossibleDifficulty
value: 0
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[5].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[6].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[7].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[8].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[9].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[10].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[11].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[12].highestPossibleDifficulty
value: 3
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[13].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[14].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[15].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[16].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[17].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[18].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[19].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[20].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[21].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[22].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[23].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[24].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[25].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[26].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[27].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[28].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[29].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[30].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[31].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[32].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[33].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[34].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[35].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[36].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[37].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[38].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[39].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[40].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[41].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[42].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[43].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[44].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[45].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[46].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[47].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[48].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[49].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[50].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[51].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[52].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[53].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[54].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[55].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[56].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[57].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[58].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[59].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 320740188261888096, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: weightedDropLootTable.Array.data[60].highestPossibleDifficulty
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2366098426994065154, guid: b6c7760f01532fc4a96882ae1816ae05, type: 3}
propertyPath: m_Name
value: DropTable

View File

@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.05706269, g: 0.114712454, b: 0.119711496, a: 1}
m_IndirectSpecularColor: {r: 0.064229995, g: 0.12856054, b: 0.13422458, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@ -1539,6 +1539,90 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484889860, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484889860, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484889860, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484889860, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484889860, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484906414, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484906414, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484906414, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484906414, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484906414, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484922440, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484922440, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484922440, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484922440, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296484922440, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 506.24997
objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3015579015349867821, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@ -1575,6 +1659,10 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3470614162302931561, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3572373654598039533, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@ -1599,6 +1687,26 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3641119934303568818, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3641119934303568818, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3641119934303568818, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3641119934303568818, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3641119934303568818, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3698633681225247539, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@ -1639,6 +1747,26 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4379688128455002370, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4379688128455002370, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4379688128455002370, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4379688128455002370, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4379688128455002370, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4759723387849467176, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@ -2047,6 +2175,14 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_SizeDelta.x
value: 0
@ -2055,6 +2191,14 @@ PrefabInstance:
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x
value: 168.74998
objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7475116342305655975, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchorMax.y
value: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ee359261a1411c14d8304b50c5cf6b47
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 1-CraftableHelmet
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Basic Modular Helmet</color>
Icon: {fileID: 21300000, guid: a6b25bb935e92234ebcfd2bcbcd3717a, type: 3}
sellPricePlayer: 75
sellPriceVendor: 1500
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 0
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 4
MinAgilityBonus: 0
MaxAgilityBonus: 4
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 4
MinSpiritBonus: 0
MaxSpiritBonus: 4
MinVitalityBonus: 0
MaxVitalityBonus: 4
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.05
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.05
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.05
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.05
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.05
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 6
MinArmorBonus: 0
MaxArmorBonus: 6
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 6
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 6

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5b802f347f7753d49a3a8427c71d6e42
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 2-CraftableChest
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Basic Modular Chest</color>
Icon: {fileID: 21300000, guid: cb1f494c783e3d04fa51b6f6947e9053, type: 3}
sellPricePlayer: 75
sellPriceVendor: 1500
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 1
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 4
MinAgilityBonus: 0
MaxAgilityBonus: 4
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 4
MinSpiritBonus: 0
MaxSpiritBonus: 4
MinVitalityBonus: 0
MaxVitalityBonus: 4
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.05
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.05
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.05
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.05
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.05
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 6
MinArmorBonus: 0
MaxArmorBonus: 6
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 6
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 6

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 906dd41cf68ae944a81aea528bdab077
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 3-CraftableMainWeapon
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Basic Modular Main Weapon</color>
Icon: {fileID: 21300000, guid: e340668a0e4bac1438e6a9d1340f8fc2, type: 3}
sellPricePlayer: 75
sellPriceVendor: 1500
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 4
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 4
MinAgilityBonus: 0
MaxAgilityBonus: 4
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 4
MinSpiritBonus: 0
MaxSpiritBonus: 4
MinVitalityBonus: 0
MaxVitalityBonus: 4
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.05
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.05
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.05
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.05
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.05
MinAttackDamageBonus: 2
MaxAttackDamageBonus: 9
MinSpellDamageBonus: 2
MaxSpellDamageBonus: 9
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 7

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 401b486cea6d8df45924fdcf57e4b2af
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 4-CraftableOffWeapon
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Basic Modular Off Weapon</color>
Icon: {fileID: 21300000, guid: d8db194edb7474d4d8a987ccadb2bf68, type: 3}
sellPricePlayer: 75
sellPriceVendor: 1500
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 5
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 4
MinAgilityBonus: 0
MaxAgilityBonus: 4
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 4
MinSpiritBonus: 0
MaxSpiritBonus: 4
MinVitalityBonus: 0
MaxVitalityBonus: 4
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.05
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.05
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.05
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.05
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.05
MinAttackDamageBonus: 1
MaxAttackDamageBonus: 6
MinSpellDamageBonus: 1
MaxSpellDamageBonus: 6
MinCritChanceBonus: 0
MaxCritChanceBonus: 3
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0.01
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0.01
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 7

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b1c9b085cdd8bdc44bbe585bbba4c187
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 5-CraftableAccessory
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Basic Modular Accessory</color>
Icon: {fileID: 21300000, guid: 1452a12a81d2d974b93e9241fc5d104b, type: 3}
sellPricePlayer: 75
sellPriceVendor: 1500
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 6
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 4
MinAgilityBonus: 0
MaxAgilityBonus: 4
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 4
MinSpiritBonus: 0
MaxSpiritBonus: 4
MinVitalityBonus: 0
MaxVitalityBonus: 4
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.05
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.05
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.05
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.05
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.05
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 1
MaxCritChanceBonus: 4
MinCritDamageBonus: 1
MaxCritDamageBonus: 6
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0.01
MaxCritChancePercentBonus: 0.02
MinCritDamagePercentBonus: 0.01
MaxCritDamagePercentBonus: 0.03
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0.02
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 7

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a9111f49f48fdc84ea5d6432fb240b9c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 6-CraftableAmulet
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Basic Modular Amulet</color>
Icon: {fileID: 21300000, guid: a542cad5a59326d488840d84c4306771, type: 3}
sellPricePlayer: 75
sellPriceVendor: 1500
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 7
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 4
MinAgilityBonus: 0
MaxAgilityBonus: 4
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 4
MinSpiritBonus: 0
MaxSpiritBonus: 4
MinVitalityBonus: 0
MaxVitalityBonus: 4
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.05
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.05
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.05
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.05
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.05
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 1
MaxCritChanceBonus: 4
MinCritDamageBonus: 1
MaxCritDamageBonus: 6
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0.01
MaxCritChancePercentBonus: 0.02
MinCritDamagePercentBonus: 0.01
MaxCritDamagePercentBonus: 0.03
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0.02
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 7

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e2293ab47a0a29843bfa6efaee4202a1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -42,3 +42,52 @@ MonoBehaviour:
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 0
MinStrengthBonus: 0
MaxStrengthBonus: 0
MinAgilityBonus: 0
MaxAgilityBonus: 0
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 0
MinSpiritBonus: 0
MaxSpiritBonus: 0
MinVitalityBonus: 0
MaxVitalityBonus: 0
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 4

View File

@ -42,3 +42,53 @@ MonoBehaviour:
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 5
CraftableBase: 0
MinStrengthBonus: 0
MaxStrengthBonus: 0
MinAgilityBonus: 0
MaxAgilityBonus: 0
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 0
MinSpiritBonus: 0
MaxSpiritBonus: 0
MinVitalityBonus: 0
MaxVitalityBonus: 0
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 4

View File

@ -42,3 +42,52 @@ MonoBehaviour:
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 7
MinStrengthBonus: 0
MaxStrengthBonus: 0
MinAgilityBonus: 0
MaxAgilityBonus: 0
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 0
MinSpiritBonus: 0
MaxSpiritBonus: 0
MinVitalityBonus: 0
MaxVitalityBonus: 0
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 4

View File

@ -42,3 +42,52 @@ MonoBehaviour:
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 6
MinStrengthBonus: 0
MaxStrengthBonus: 0
MinAgilityBonus: 0
MaxAgilityBonus: 0
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 0
MinSpiritBonus: 0
MaxSpiritBonus: 0
MinVitalityBonus: 0
MaxVitalityBonus: 0
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 4

View File

@ -42,3 +42,52 @@ MonoBehaviour:
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 1
MinStrengthBonus: 0
MaxStrengthBonus: 0
MinAgilityBonus: 0
MaxAgilityBonus: 0
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 0
MinSpiritBonus: 0
MaxSpiritBonus: 0
MinVitalityBonus: 0
MaxVitalityBonus: 0
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 4

View File

@ -42,3 +42,52 @@ MonoBehaviour:
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 4
MinStrengthBonus: 0
MaxStrengthBonus: 0
MinAgilityBonus: 0
MaxAgilityBonus: 0
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 0
MinSpiritBonus: 0
MaxSpiritBonus: 0
MinVitalityBonus: 0
MaxVitalityBonus: 0
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 4

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d97220b3839b01d4698de56e3ce177d3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 1-CraftableHelmet-Mid
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Standard Modular Helmet</color>
Icon: {fileID: 21300000, guid: a6b25bb935e92234ebcfd2bcbcd3717a, type: 3}
sellPricePlayer: 1000
sellPriceVendor: 20000
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 0
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 25
MinAgilityBonus: 0
MaxAgilityBonus: 25
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 25
MinSpiritBonus: 0
MaxSpiritBonus: 25
MinVitalityBonus: 0
MaxVitalityBonus: 25
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.1
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.1
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.1
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.1
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.1
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 51
MinArmorBonus: 15
MaxArmorBonus: 100
MinMagicResistanceBonus: 15
MaxMagicResistanceBonus: 100
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0.02
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0.02
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0.02
TotalUniqueStats: 12

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: be9886b162cf8ec408546d7efcb4ea62
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 2-CraftableChest-Mid
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Standard Modular Chest</color>
Icon: {fileID: 21300000, guid: cb1f494c783e3d04fa51b6f6947e9053, type: 3}
sellPricePlayer: 1000
sellPriceVendor: 20000
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 1
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 25
MinAgilityBonus: 0
MaxAgilityBonus: 25
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 25
MinSpiritBonus: 0
MaxSpiritBonus: 25
MinVitalityBonus: 0
MaxVitalityBonus: 25
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.1
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.1
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.1
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.1
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.1
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 51
MinArmorBonus: 15
MaxArmorBonus: 100
MinMagicResistanceBonus: 15
MaxMagicResistanceBonus: 100
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0.02
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0.02
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0.02
TotalUniqueStats: 12

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2b511380fccb3a84b8b057ac6a571950
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 3-CraftableMainWeapon-Mid
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Standard Modular Main Weapon</color>
Icon: {fileID: 21300000, guid: e340668a0e4bac1438e6a9d1340f8fc2, type: 3}
sellPricePlayer: 1000
sellPriceVendor: 20000
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 4
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 25
MinAgilityBonus: 0
MaxAgilityBonus: 25
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 25
MinSpiritBonus: 0
MaxSpiritBonus: 25
MinVitalityBonus: 0
MaxVitalityBonus: 25
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.1
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.1
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.1
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.1
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.1
MinAttackDamageBonus: 10
MaxAttackDamageBonus: 41
MinSpellDamageBonus: 10
MaxSpellDamageBonus: 41
MinCritChanceBonus: 0
MaxCritChanceBonus: 0
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 15

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1a978966e0f4e374ba79ba557e8f762f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 4-CraftableOffWeapon-Mid
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Standard Modular Off Weapon</color>
Icon: {fileID: 21300000, guid: d8db194edb7474d4d8a987ccadb2bf68, type: 3}
sellPricePlayer: 1000
sellPriceVendor: 20000
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 5
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 25
MinAgilityBonus: 0
MaxAgilityBonus: 25
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 25
MinSpiritBonus: 0
MaxSpiritBonus: 25
MinVitalityBonus: 0
MaxVitalityBonus: 25
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.1
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.1
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.1
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.1
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.1
MinAttackDamageBonus: 8
MaxAttackDamageBonus: 31
MinSpellDamageBonus: 8
MaxSpellDamageBonus: 31
MinCritChanceBonus: 1
MaxCritChanceBonus: 5
MinCritDamageBonus: 0
MaxCritDamageBonus: 0
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0.05
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0.05
MinCritChancePercentBonus: 0
MaxCritChancePercentBonus: 0
MinCritDamagePercentBonus: 0
MaxCritDamagePercentBonus: 0
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0
TotalUniqueStats: 15

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: acd83131fcbffa9438937e119884e1dc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 5-CraftableAccessory-Mid
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Standard Modular Accessory</color>
Icon: {fileID: 21300000, guid: 1452a12a81d2d974b93e9241fc5d104b, type: 3}
sellPricePlayer: 1000
sellPriceVendor: 20000
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 6
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 25
MinAgilityBonus: 0
MaxAgilityBonus: 25
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 25
MinSpiritBonus: 0
MaxSpiritBonus: 25
MinVitalityBonus: 0
MaxVitalityBonus: 25
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.1
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.1
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.1
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.1
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.1
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 1
MaxCritChanceBonus: 4
MinCritDamageBonus: 1
MaxCritDamageBonus: 6
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0.02
MaxCritChancePercentBonus: 0.05
MinCritDamagePercentBonus: 0.05
MaxCritDamagePercentBonus: 0.1
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0.1
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0.05
TotalUniqueStats: 15

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f8d7d9d387f13364e89147083e476ffa
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7a67ee28b6adf441814e60bcb404307, type: 3}
m_Name: 6-CraftableAmulet-Mid
m_EditorClassIdentifier:
ItemName: <color=#F5DEB3>Standard Modular Amulet</color>
Icon: {fileID: 21300000, guid: a542cad5a59326d488840d84c4306771, type: 3}
sellPricePlayer: 1000
sellPriceVendor: 20000
description: <color=#F5DEB3>It seems to be designed with adaptability in mind,
though its effectiveness remains to be tested</color>
StrengthBonus: 0
AgilityBonus: 0
IntelligenceBonus: 0
SpiritBonus: 0
VitalityBonus: 0
StrengthPercentBonus: 0
AgilityPercentBonus: 0
IntelligencePercentBonus: 0
SpiritPercentBonus: 0
VitalityPercentBonus: 0
AttackDamageBonus: 0
SpellDamageBonus: 0
CritChanceBonus: 0
CritDamageBonus: 0
MaxHealthBonus: 0
ArmorBonus: 0
MagicResistanceBonus: 0
AttackDamagePercentBonus: 0
SpellDamagePercentBonus: 0
CritChancePercentBonus: 0
CritDamagePercentBonus: 0
MaxHealthPercentBonus: 0
ArmorPercentBonus: 0
MagicResistancePercentBonus: 0
EquipmentType: 7
CraftableBase: 1
MinStrengthBonus: 0
MaxStrengthBonus: 25
MinAgilityBonus: 0
MaxAgilityBonus: 25
MinIntelligenceBonus: 0
MaxIntelligenceBonus: 25
MinSpiritBonus: 0
MaxSpiritBonus: 25
MinVitalityBonus: 0
MaxVitalityBonus: 25
MinStrengthPercentBonus: 0
MaxStrengthPercentBonus: 0.1
MinAgilityPercentBonus: 0
MaxAgilityPercentBonus: 0.1
MinIntelligencePercentBonus: 0
MaxIntelligencePercentBonus: 0.1
MinSpiritPercentBonus: 0
MaxSpiritPercentBonus: 0.1
MinVitalityPercentBonus: 0
MaxVitalityPercentBonus: 0.1
MinAttackDamageBonus: 0
MaxAttackDamageBonus: 0
MinSpellDamageBonus: 0
MaxSpellDamageBonus: 0
MinCritChanceBonus: 1
MaxCritChanceBonus: 4
MinCritDamageBonus: 1
MaxCritDamageBonus: 6
MinMaxHealthBonus: 0
MaxMaxHealthBonus: 0
MinArmorBonus: 0
MaxArmorBonus: 0
MinMagicResistanceBonus: 0
MaxMagicResistanceBonus: 0
MinAttackDamagePercentBonus: 0
MaxAttackDamagePercentBonus: 0
MinSpellDamagePercentBonus: 0
MaxSpellDamagePercentBonus: 0
MinCritChancePercentBonus: 0.02
MaxCritChancePercentBonus: 0.05
MinCritDamagePercentBonus: 0.05
MaxCritDamagePercentBonus: 0.1
MinMaxHealthPercentBonus: 0
MaxMaxHealthPercentBonus: 0.1
MinArmorPercentBonus: 0
MaxArmorPercentBonus: 0
MinMagicResistancePercentBonus: 0
MaxMagicResistancePercentBonus: 0.05
TotalUniqueStats: 15

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 65a96a6b8c9196841b545beff92eee98
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -67,7 +67,7 @@ public class DropTable : MonoBehaviour
{
instantiatedDrop = Instantiate(interactableDropPrefab, spawnPosition, this.transform.rotation);
itemDrop = instantiatedDrop.GetComponent<EquippableItemDrop>();
itemDrop.itemDrop = guaranteedItemDrop[i];
itemDrop.itemDrop = Item.ConvertTemplateIntoInstance(guaranteedItemDrop[i]);
}
if (!lootDrop) return;
@ -100,6 +100,6 @@ public class DropTable : MonoBehaviour
spawnPosition.y = 0f;
instantiatedDrop = Instantiate(interactableDropPrefab, spawnPosition, this.transform.rotation);
itemDrop = instantiatedDrop.GetComponent<EquippableItemDrop>();
itemDrop.itemDrop = possibleItem;
itemDrop.itemDrop = Item.ConvertTemplateIntoInstance(possibleItem, true);
}
}

View File

@ -5,14 +5,19 @@ using UnityEngine;
public class EquippableItemDrop : Interactable
{
public Item itemDrop;
public ItemInstance itemDrop;
public override void Interact(bool melee)
{
base.Interact(melee);
Debug.Log("Interacting with item: " + this.name + " " + itemDrop.ItemName);
if (FindObjectOfType<Inventory>().AddItem(itemDrop))
{
Debug.Log("Interacting with item: " + this.name + " " + itemDrop.ItemName + " found inventory and added it");
Destroy(this.gameObject);
}
}

View File

@ -42,7 +42,7 @@ public class FishingSpotInteractable : Interactable
if(drop != null)
{
Inventory.Instance.AddItem(drop);
Inventory.Instance.AddItem(Item.ConvertTemplateIntoInstance(drop));
}
Destroy(this.gameObject);

View File

@ -10,12 +10,12 @@ public class ConsumableItemHandler : MonoBehaviour
Inventory.Instance.OnItemRightClickedEvent.AddListener(OnItemRightClicked);
}
private void OnItemRightClicked(Item clickedItem)
private void OnItemRightClicked(ItemInstance clickedItem)
{
if(clickedItem is ConsumableItem)
if(clickedItem is ConsumableItemInstance)
{
if (Inventory.Instance.RemoveItem(clickedItem))
((ConsumableItem)clickedItem).Consume();
((ConsumableItemInstance)clickedItem).Consume();
}
}
}

View File

@ -27,3 +27,28 @@ public class EquipmentData
}
}
}
[System.Serializable]
public class EquipmentInstanceData
{
public EquippableItemInstance[] equippedItems;
public EquipmentInstanceData()
{
equippedItems = new EquippableItemInstance[GameConstants.Sizes.TotalEquipmentSlots];
for (int i = 0; i < equippedItems.Length; i++)
{
equippedItems[i] = null;
}
}
public EquipmentInstanceData(EquippableItemInstance[] equippedItems)
{
this.equippedItems = new EquippableItemInstance[GameConstants.Sizes.TotalEquipmentSlots];
for (int i = 0; i < equippedItems.Length; i++)
{
this.equippedItems[i] = equippedItems[i];
}
}
}

View File

@ -26,3 +26,30 @@ public class InventoryData
}
}
}
[System.Serializable]
public class InventoryInstanceData
{
[SerializeReference]
public ItemInstance[] inventoryItems;
public InventoryInstanceData()
{
inventoryItems = new ItemInstance[GameConstants.Sizes.TotalInventorySlots];
for (int i = 0; i < inventoryItems.Length; i++)
{
inventoryItems[i] = null;
}
}
public InventoryInstanceData(ItemInstance[] inventoryItems)
{
this.inventoryItems = new ItemInstance[GameConstants.Sizes.TotalInventorySlots];
for (int i = 0; i < inventoryItems.Length; i++)
{
this.inventoryItems[i] = inventoryItems[i];
}
}
}

View File

@ -44,10 +44,10 @@ public class PlayerDataHandler : MonoBehaviour
CoinData coinData = new CoinData();
string playerCoinKey;
EquipmentData equipmentData = new EquipmentData();
EquipmentInstanceData equipmentData = new EquipmentInstanceData();
string equipmentDataKey;
InventoryData inventoryData = new InventoryData();
InventoryInstanceData inventoryData = new InventoryInstanceData();
string inventoryDataKey;
BuildData buildData = new BuildData();
@ -125,18 +125,18 @@ public class PlayerDataHandler : MonoBehaviour
// Character Equipment Data (equipped items)
public EquipmentData LoadCharacterEquipmentData(string playerName, string characterName)
public EquipmentInstanceData LoadCharacterEquipmentData(string playerName, string characterName)
{
equipmentDataKey = GameConstants.PlayerPrefsKeys.GetCharacterEquipmentDataKey(playerName, characterName);
if (GameStatePersistenceManager.Instance.HasDataForKey(equipmentDataKey))
{
equipmentData = GameStatePersistenceManager.Instance.LoadData<EquipmentData>(equipmentDataKey);
equipmentData = GameStatePersistenceManager.Instance.LoadData<EquipmentInstanceData>(equipmentDataKey);
return equipmentData;
}
else return null;
}
public void SaveCharacterEquipmentData(string playerName, string characterName, EquipmentData equipmentData)
public void SaveCharacterEquipmentData(string playerName, string characterName, EquipmentInstanceData equipmentData)
{
equipmentDataKey = GameConstants.PlayerPrefsKeys.GetCharacterEquipmentDataKey(playerName, characterName);
@ -145,18 +145,18 @@ public class PlayerDataHandler : MonoBehaviour
// Character Inventory Data (items on inventory)
public InventoryData LoadCharacterInventoryData(string playerName, string characterName)
public InventoryInstanceData LoadCharacterInventoryData(string playerName, string characterName)
{
inventoryDataKey = GameConstants.PlayerPrefsKeys.GetCharacterInventoryDataKey(playerName, characterName);
if (GameStatePersistenceManager.Instance.HasDataForKey(inventoryDataKey))
{
inventoryData = GameStatePersistenceManager.Instance.LoadData<InventoryData>(inventoryDataKey);
inventoryData = GameStatePersistenceManager.Instance.LoadData<InventoryInstanceData>(inventoryDataKey);
return inventoryData;
}
else return null;
}
public void SaveCharacterInventoryData(string playerName, string characterName, InventoryData inventoryData)
public void SaveCharacterInventoryData(string playerName, string characterName, InventoryInstanceData inventoryData)
{
inventoryDataKey = GameConstants.PlayerPrefsKeys.GetCharacterInventoryDataKey(playerName, characterName);

View File

@ -95,6 +95,20 @@ public class RiftRaidEnemySpawner : MonoBehaviour
unitDifficultySetter = spawnedEnemy.GetComponentInChildren<UnitDifficultySetter>(true);
unitDifficultySetter.InitializeUnitDifficulty(unitDifficultySettings);
yield return null;
spawnedEnemy = PhotonNetwork.Instantiate("Bosses/" + bossPrefabs[Random.Range(0, bossPrefabs.Count)].name, bossSpawnpoint.position, bossSpawnpoint.rotation);
totalEnemies++;
unitDifficultySetter = spawnedEnemy.GetComponentInChildren<UnitDifficultySetter>(true);
unitDifficultySetter.InitializeUnitDifficulty(unitDifficultySettings);
yield return null;
spawnedEnemy = PhotonNetwork.Instantiate("Bosses/" + bossPrefabs[Random.Range(0, bossPrefabs.Count)].name, bossSpawnpoint.position, bossSpawnpoint.rotation);
totalEnemies++;
unitDifficultySetter = spawnedEnemy.GetComponentInChildren<UnitDifficultySetter>(true);
unitDifficultySetter.InitializeUnitDifficulty(unitDifficultySettings);
yield return new WaitForSeconds(0.5f);
photonView.RPC(nameof(RPC_UpdateTotalEnemies), RpcTarget.Others, totalEnemies);

View File

@ -5,6 +5,7 @@ using UnityEngine;
public class TooltipDisabler : MonoBehaviour
{
[SerializeField] private GameObject itemTooltip;
[SerializeField] private GameObject equippedItemTooltip;
[SerializeField] private GameObject statTooltip;
[SerializeField] private UIKeyBinder keyBinder;
@ -17,6 +18,7 @@ public class TooltipDisabler : MonoBehaviour
itemTooltip.SetActive(isVisible);
statTooltip.SetActive(isVisible);
equippedItemTooltip.SetActive(isVisible);
});
}
}

View File

@ -8,3 +8,8 @@ using UnityEngine.Events;
public class UnityEvent_Item : UnityEvent<Item>
{
}
[System.Serializable]
public class UnityEvent_ItemInstance : UnityEvent<ItemInstance>
{
}

View File

@ -8,6 +8,9 @@ public class VendorController : Interactable
public VendorData VendorData => vendorData;
private VendorDataInstance vendorDataInstance;
public VendorDataInstance VendorDataInstance => vendorDataInstance;
[Header("Events:")]
[SerializeField] private GameEvent_VendorData onVendorInteracted;
[SerializeField] private GameEvent onVendorReleased;
@ -23,6 +26,8 @@ public class VendorController : Interactable
{
base.Awake();
vendorDataInstance = new VendorDataInstance(vendorData);
onVendorUIClosed.Response.AddListener(CloseInteraction);
}
@ -33,7 +38,7 @@ public class VendorController : Interactable
if (!melee) return;
isUIOpen = true;
onVendorInteracted.Raise(vendorData);
onVendorInteracted.Raise(vendorDataInstance);
}
public override void OnFocused(Transform playerTransform, PlayerController playerController)

View File

@ -15,3 +15,39 @@ public class VendorItem
public Item item;
public bool soldMultipleTimes = true;
}
[System.Serializable]
public class VendorDataInstance
{
public List<VendorItemInstance> items = new List<VendorItemInstance>();
public VendorDataInstance(VendorData template)
{
for (int i = 0; i < template.items.Count; i++)
{
this.items.Add(new VendorItemInstance(template.items[i]));
}
}
}
[System.Serializable]
public class VendorItemInstance
{
public ItemInstance item;
public bool soldMultipleTimes = true;
public VendorItemInstance(VendorItem template)
{
if(template.item is EquippableItem)
{
EquippableItem templateItem = template.item as EquippableItem;
this.item = new EquippableItemInstance(templateItem);
}
else
{
this.item = new ItemInstance(template.item);
}
soldMultipleTimes = template.soldMultipleTimes;
}
}

View File

@ -12,7 +12,7 @@ public class VendorUI : MonoBehaviour
[SerializeField] private GameEventListener_VendorData onVendorInteracted;
[SerializeField] private GameEventListener onVendorReleased;
private VendorData currentOpenVendor;
private VendorDataInstance currentOpenVendor;
private void Awake()
{
@ -28,7 +28,7 @@ public class VendorUI : MonoBehaviour
vendorUI.SetActive(false);
}
private void InitializeVendorUI(VendorData vendorData)
private void InitializeVendorUI(VendorDataInstance vendorData)
{
for (int i = 0; i < slots.Count; i++)
{
@ -41,7 +41,7 @@ public class VendorUI : MonoBehaviour
}
public void OpenVendor(VendorData vendor)
public void OpenVendor(VendorDataInstance vendor)
{
currentOpenVendor = vendor;
InitializeVendorUI(vendor);
@ -49,6 +49,7 @@ public class VendorUI : MonoBehaviour
vendorUI.SetActive(true);
Inventory.Instance.isVendoring = true;
Inventory.Instance.isCrafting = false;
Inventory.Instance.OpenInventory();
}
@ -63,12 +64,13 @@ public class VendorUI : MonoBehaviour
onVendorUIClosed.Raise();
}
private void SellItem(Item item)
private void SellItem(ItemInstance item)
{
if (Inventory.Instance.RemoveItem(item))
{
CoinBag.Instance.ChangeAmount(item.sellPricePlayer);
ItemTooltip.Instance.HideTooltip();
EquippedItemTooltip.Instance.HideTooltip();
}
}
}

View File

@ -94,7 +94,7 @@ Material:
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Rotation: 1644.4651
- _Rotation: 6.23695
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1

File diff suppressed because one or more lines are too long

View File

@ -7,7 +7,7 @@ using UnityEngine.Events;
public class GameEventListener_VendorData : MonoBehaviour
{
public GameEvent_VendorData Event;
public UnityEvent_VendorData Response;
public UnityEvent_VendorDataInstance Response;
private void OnEnable()
{
@ -19,13 +19,13 @@ public class GameEventListener_VendorData : MonoBehaviour
Event.UnRegisterListener(this);
}
public void OnEventRaised(VendorData vendorData)
public void OnEventRaised(VendorDataInstance vendorData)
{
Response.Invoke(vendorData);
}
}
[System.Serializable]
public class UnityEvent_VendorData : UnityEvent<VendorData>
public class UnityEvent_VendorDataInstance : UnityEvent<VendorDataInstance>
{
}

View File

@ -8,7 +8,7 @@ public class GameEvent_VendorData : ScriptableObject
{
private List<GameEventListener_VendorData> listeners = new List<GameEventListener_VendorData>();
public void Raise(VendorData vendorData)
public void Raise(VendorDataInstance vendorData)
{
for (int i = listeners.Count - 1; i >= 0; i--)
{