Generic Arrays

Each Tile has “tags” that is a list that contains its name and its value that can be an int, a float… everything.
Like “Seeds” that contains a Grow tag that contains an int.

I tried public Tag[] tags; but threw me an error.
How could I do it?

public class Tag <T>{
		public string name;
		public T value;

		public Tag(T v){
			value = v;
		}
	}

I’m not 100% sure, but I’d think you’d have to do it something like this:

public Tag<float>[] tags; 

Where of course you replace float with whatever data type you’re interested in using.

Have you tried that?

I just did a thing like this

public List<Tag> tags;
public class Tag {
		public string name;

		public Tag(string name_){
			name = name_;
		}
	}

	public class TagInt : Tag{
		public int value;

		public TagInt(string name_, int value_){
			name = name_;
			value = value_;
		}
	}

	public class TagFloat : Tag{
		public float value;

		public TagFloat(string name_, float value_){
			name = name_;
			value = value_;
		}
	}

	public class TagBool : Tag{
		public bool value;

		public TagBool(string name_, bool value_){
			name = name_;
			value = value_;
		}
	}

	public class TagString : Tag{
		public string value;

		public TagString(string name_, string value_){
			name = name_;
			value = value_;
		}
	}