Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
Да я питух и пиздабол. Но это не исключает факта одного.
Чому синтаксис так скачет data.raw["pipe"]["pipe"].fast_replaceable_group
Почему не data["raw"]["pipe"]["pipe"]["fast_replaceable_group"]?
Почему не data.raw.pipe.pipe.fast_replaceable_grou p?
Причем если глянуть то во всех модах которые я глянул такая хуита.
Это как писать _G["_G"]._G["_G"]._G._G["_G"]._G["_G"]._G._G["_G"]["_G"]["_G"]._G["_G"]._G._G["_G"]._G._G["_G"]._G["_G"]._G["_G"]._G
Удобно и привлекательно а главное читаемо.
>> Чому синтаксис так скачет data.raw["pipe"]["pipe"].fast_replaceable_group
все дело в том, как описана таблица data.raw: https://wiki.factorio.com/Data.raw#pipe
в ней есть некоторые ключи, которые нельзя в коде отобразить. например produce-achievement, луа будет интерпретировать data.raw.produce-achievement как вычитание
data.raw.produce - achievement
. потому вcе, что добывается из data.raw по конвеншну тянется через индексатор [].
а
Если разрабтчку так хотелось через дефис делать, то сделал бы для этого метатаблицу, чтоб produce-achievement отрабатывало нормально.
Да жействительно странное решение делать наименование через дефисы
Целый трубопровод.
Чому синтаксис так скачет data.raw["pipe"]["pipe"].fast_replaceable_group
Почему не data["raw"]["pipe"]["pipe"]["fast_replaceable_group"]?
Почему не data.raw.pipe.pipe.fast_replaceable_grou p?
Причем если глянуть то во всех модах которые я глянул такая хуита.
Это как писать _G["_G"]._G["_G"]._G._G["_G"]._G["_G"]._G._G["_G"]["_G"]["_G"]._G["_G"]._G._G["_G"]._G._G["_G"]._G["_G"]._G["_G"]._G
Удобно и привлекательно а главное читаемо.
поссы.конарду.на.рот
все дело в том, как описана таблица data.raw: https://wiki.factorio.com/Data.raw#pipe
в ней есть некоторые ключи, которые нельзя в коде отобразить. например produce-achievement, луа будет интерпретировать data.raw.produce-achievement как вычитание
. потому вcе, что добывается из data.raw по конвеншну тянется через индексатор [].
а это уже конкретное проперти з класса entity: https://wiki.factorio.com/Prototype/Entity. потому и юзается как проперти.
Да жействительно странное решение делать наименование через дефисы
https://ideone.com/YhiBgw
https://ideone.com/CMIGKA
Мосивы для питухов, в общем.