all of the properties that the error are showing for are lol.
public class ArmorCore : MonoBehaviour
{
public int armorIndex; //points to which armor in the save file
//Lookup table for the base stats
public int armorLevel; //armor's level, 1-300
public int armorRank; //armor's 'star rank', 0-20
public int armorQuality; //armor's color quality, 0-5 (grey, green, blue, purple, red, rainbow)
public int damageType;
protected virtual int[] rankHPArray { get; set; }// = { 180, 315, 315, 441, 441, 441, 594, 594, 594, 594, 756, 756, 756, 756, 756, 927, 927, 927, 927, 927, 927 };
protected virtual float rankArmorAmount { get; set; }//= 1f; //rank 20 = 20%
protected virtual float rankDodgeAmount { get; set; }//= 0.5f; //rank 20 = 10%
protected virtual float rankCritAvoid { get; set; }//= 0.5f;
protected virtual float rankCritReduction { get; set; }//= 0.2f;
protected virtual int baseHPPerLevel { get; set; }//= 13;
protected virtual float armorPerLevel { get; set; }//= 0.1f; //lv 300 = 30%
protected virtual float dodgePerLevel { get; set; }//= 0.025f; //lv 300 = 7.5%
protected virtual float levelCritAvoid { get; set; }//= 0.025f;
protected virtual float levelCritReduction { get; set; }//= 0.05f;
private float[] qualityLevelHPMultiplier = { 1f, 1.5f, 2f, 2.5f, 3f, 3.5f };
private int totalHull; //hull amount
private float totalArmor; //percentage reduction
private float totalDodge; //percent chance to dodge
private float totalCritAvoid;
private float totalCritReduction;
public Sprite icon;
public Sprite[] sprites;
public Sprite backSprite;
//public Sprite star;
public int stars;
public class ArmorType1 : ArmorCore
{
protected override int[] rankHPArray { get; set; } = { 180, 315, 315, 441, 441, 441, 594, 594, 594, 594, 756, 756, 756, 756, 756, 927, 927, 927, 927, 927, 927 };
protected override float rankArmorAmount { get; set; } = 1f; //rank 20 = 20%
protected override float rankDodgeAmount { get; set; } = 0.5f; //rank 20 = 10%
protected override float rankCritAvoid { get; set; } = 0.5f;
protected override float rankCritReduction { get; set; } = 0.2f;
protected override int baseHPPerLevel { get; set; } = 13;
protected override float armorPerLevel { get; set; } = 0.1f; //lv 300 = 30%
protected override float dodgePerLevel { get; set; } = 0.025f; //lv 300 = 7.5%
protected override float levelCritAvoid { get; set; } = 0.025f;
protected override float levelCritReduction { get; set; } = 0.05f;
The same field name is serialized multiple times in the class or its parent class. This is not supported: Base(ArmorType6) k__BackingField
that is very specifically pointed at the final property.
possibly no need, true, but it should also just be as simple as this with no need to keep going with more and more scripts, to fill up my IDE with, when it can all be handled like this very easily lol