Необходимо Передать в метод string[], а на выходе получить значение объекта.
location _locations;
public string city_location_data(string[] args)
{
TextAsset mytxtData = (TextAsset)Resources.Load("locations");
location _location = JsonUtility.FromJson<location>(mytxtData.text);
var prop_value0 = _location.locations.GetType().GetProperty(args[0]).GetValue(_locations.locations);
var prop_value1 = prop_value0.GetType().GetProperty(args[1]).GetValue(prop_value0);
var prop_value2 = prop_value1.GetType().GetProperty(args[2]).GetValue(prop_value1);
}
Exception:
NullReferenceException: Object reference not set to an instance of an object
Структура настроена верно. Вот так все работает:
_locations.locations.city.tavern.guild;
Сборка персонального компьютера от Artline: умный выбор для современных пользователей