Как вариант: У тебя должен быть отдельный файл с данными на диске, например:
public class Disc
{
public string Name { get; set; }
public string Description { get; set; }
}
потом у своих дисков(они же у тебя как префабы, наверняка) меняешь название на подобие Disc1, Disc2, Disc3 и т.д.
Создаешь отдельный файл DiscList в котором указываешь что за диски, что на них:
public static class DiscList
{
public static List<Disc> list = new List<Disc>()
{
new Disc()
{
Name = "Disc1",
Description = "Длинный текст который хранит диск"
}
};
}
Затем, в методе OnCollisionEnter проверяешь название диска, с которым столкнулась твоя кассетница, получаешь его имя. Затем достаешь из списка таким вот образом
var discInfo = DiscList.list.Where(x => x.Name == "Disc1").FirstOrDefault();
- Как получить в скрипт кассеты переменную диска который с ней соприкоснулся?
- Как достать конкретный диск из кассетницы?
- Как намертво привязать диск к кассетнице на свободный слот? (не могу передать в скрипт кассеты RB и BC диска который с ней соприкоснулся)
В качестве ответа подойдёт более оптимизированный алгоритм решения (подкреплённый конкретными функциями) или код.