📊 Статистика: 28 коммитов, ~8700 добавлений, ~1600 удалений
Кто-то на прошлой неделе писал, что поста не будет, не верьте ему, это был вброс! 👍
За эту неделю я
Но это только начало, в скриптовом языке Katari теперь поддерживаются xml-литералы для интерфейсов, а также json-подобные структуры данных для передачи между клиентом и сервером (а также позже их можно будет использовать и для настройки тегов предметов)
Выглядит это всё примерно так:
val dialog = ui(
<box id="dialog" layout="column" size="300px auto" padding="12px" gap="8px">
<text value="Привет, игрок!" foreground="#FFFFFF" font-size="16px" />
<button id="accept" background="#339933" onPressed='emit(struct { event: "accept" })'>Принять</button>
<button id="cancel" background="#993333" onPressed='emit(struct { event: "cancel" })'>Отмена</button>
</box>
)
dialog.showScreen(player)
Или же вот так:
val tag = struct {
custom_name: {text:"Рандомный меч", color:"gold", bold:true},
lore: [
{text:"Это легендарное оружие найденное в каком-то прогнившем подвале", color:"dark_purple", italic:true}
],
enchantments: {
levels: {'minecraft:sharpness':5, 'minecraft:unbreaking':3}
},
unbreakable:{}
}
player.give("minecraft:diamond_sword", tag)Как мне кажется, это куда удобнее, чем писать всё внутри одной строки и выделять кавычки символом:
'\'.Кроме того, по мелочи была исправлена большая часть багов с редактором, добавлена пара новых функций и местами доработан дизайн.
На текущий момент всё уже готово и лежит на гитхабе (в том числе и система катсцен, которая ранее была доступна только бустерам), и на этом я пожалуй могу сказать, что всё что я хотел добавить в движок в первую очередь - реализовано 🎉
Поэтому, теперь я уже займусь стабильностью, мелкими исправлениями багов и доработками, так что пишите если что, исправлять буду сразу пачками 🙃
P.S. Интерфейс в ролике если что я корявый сделал за пару мину, так там понятное дело можно каждую мелочь настроить)
P.S.S. По поводу обновления документации пинайте @algorithmlx_today, я уже под UI большую часть написал, просто кто-то всё ещё не обновил Docker контейнер 🧮