diff --git a/src/main/java/io/github/reoseah/magisterium/Magisterium.java b/src/main/java/io/github/reoseah/magisterium/Magisterium.java index 323fd03..c6174a3 100644 --- a/src/main/java/io/github/reoseah/magisterium/Magisterium.java +++ b/src/main/java/io/github/reoseah/magisterium/Magisterium.java @@ -30,7 +30,6 @@ import net.minecraft.registry.Registry; import net.minecraft.screen.NamedScreenHandlerFactory; import net.minecraft.screen.ScreenHandler; -import net.minecraft.server.world.ServerWorld; import net.minecraft.sound.BlockSoundGroup; import net.minecraft.sound.SoundCategory; import net.minecraft.text.Text; @@ -184,12 +183,12 @@ public Text getDisplayName() { } private static boolean tryPlaceGlyph(PlayerEntity player, World world, Hand hand, BlockHitResult hitResult, ItemStack stack) { - ItemPlacementContext context = new ItemPlacementContext(player, hand, stack, hitResult); + var context = new ItemPlacementContext(player, hand, stack, hitResult); if (!context.canPlace()) { return false; } - BlockState placementState = GlyphBlock.INSTANCE.getPlacementState(context); - BlockPos placementPos = context.getBlockPos(); + var placementState = GlyphBlock.INSTANCE.getPlacementState(context); + var placementPos = context.getBlockPos(); if (!placementState.canPlaceAt(world, placementPos)) { return false; } @@ -199,7 +198,7 @@ private static boolean tryPlaceGlyph(PlayerEntity player, World world, Hand hand return false; } } - BlockSoundGroup sounds = placementState.getSoundGroup(); + var sounds = placementState.getSoundGroup(); world.playSound(player, placementPos, sounds.getPlaceSound(), SoundCategory.BLOCKS, (sounds.getVolume() + 1.0F) / 2.0F, sounds.getPitch()); world.emitGameEvent(player, GameEvent.BLOCK_PLACE, placementPos); diff --git a/src/main/java/io/github/reoseah/magisterium/spellbook/SpellDataLoader.java b/src/main/java/io/github/reoseah/magisterium/spellbook/SpellDataLoader.java index 05d73b9..208769c 100644 --- a/src/main/java/io/github/reoseah/magisterium/spellbook/SpellDataLoader.java +++ b/src/main/java/io/github/reoseah/magisterium/spellbook/SpellDataLoader.java @@ -130,19 +130,11 @@ private static BookElement readElement(JsonObject json) { yield new BookInventory(height, background, slots); } -// case "illustration" -> { -// Identifier texture = new Identifier(JsonHelper.getString(json, "texture")); -// int u = JsonHelper.getInt(json, "u"); -// int v = JsonHelper.getInt(json, "v"); -// int width = JsonHelper.getInt(json, "width"); -// int height = JsonHelper.getInt(json, "height"); -// yield new Illustration(texture, u, v, width, height); -// } default -> throw new JsonParseException("Unknown element type: " + type); }; } - private static SimpleBlock[] readSimpleElements(JsonArray elementsJson) { + public static SimpleBlock[] readSimpleElements(JsonArray elementsJson) { var elements = new SimpleBlock[elementsJson.size()]; for (int i = 0; i < elementsJson.size(); i++) { var element = readElement(JsonHelper.asObject(elementsJson.get(i), "element")); diff --git a/src/main/resources/assets/magisterium/lang/en_us.json b/src/main/resources/assets/magisterium/lang/en_us.json index 6a38893..ec9584f 100644 --- a/src/main/resources/assets/magisterium/lang/en_us.json +++ b/src/main/resources/assets/magisterium/lang/en_us.json @@ -5,6 +5,8 @@ "item.magisterium.spell_book": "Spell Tome", "item.magisterium.spell_page": "Spell Page", "item.magisterium.bookmark": "Silk Bookmark", + "tags.item.magisterium.spell_book_components": "Spell Book Components", + "tags.item.magisterium.conflagrate_ingredients": "Conflagrate Ingredients", "container.magisterium.arcane_table": "Arcane Table", "gamerule.enableMagisteriumPlaygrounds": "Enable Magisterium playgrounds (block most spells outside the designated areas, see /magisterium playgrounds)", "commands.magisterium.playgrounds.list.success": "Available playgrounds: %s", diff --git a/src/main/resources/assets/magisterium/lang/ru_ru.json b/src/main/resources/assets/magisterium/lang/ru_ru.json new file mode 100644 index 0000000..aa8773d --- /dev/null +++ b/src/main/resources/assets/magisterium/lang/ru_ru.json @@ -0,0 +1,44 @@ +{ + "itemGroup.magisterium": "Magisterium", + "block.magisterium.arcane_table": "Мистический стол", + "block.magisterium.glyph": "Мистический глиф", + "item.magisterium.spell_book": "Книга заклинаний", + "item.magisterium.spell_page": "Страница заклинания", + "item.magisterium.bookmark": "Шелковая закладка", + "tags.item.magisterium.spell_book_components": "Части книги заклинаний", + "tags.item.magisterium.conflagrate_ingredients": "Ингредиенты для заклинания конфлаграция", + "container.magisterium.arcane_table": "Мистический стол", + "magisterium.gui.untitled_section": "Без названия", + "magisterium.gui.untitled_section.description": "Переименуйте закладкy, чтобы дать разделу название.", + "magisterium.gui.only_first_seven_bookmarks_will_show": "Отображаются только первые семь закладок", + "magisterium.gui.name_bookmarks_to_give_title": "Назовите закладкy, чтобы дать разделам название", + "magisterium.gui.no_glyphs_found": "В радиусе заклинания нет глифов", + "magisterium.gui.invalid_illusion_block": "Нельзя создать иллюзию этого блока", + "magisterium.gui.no_targets": "Не удалось найти цели для заклинания", + "magisterium.gui.partial_success": "Не удалось изменить некоторые блоки", + "magisterium.gui.no_success": "Не удалось изменить блоки", + "magisterium.spell.magisterium.awaken_the_flame": "Пробуждение пламени", + "magisterium.spell.magisterium.awaken_the_flame.heading": "sᴜsᴄɪᴛᴀ ɪɢɴᴇᴍ", + "magisterium.spell.magisterium.awaken_the_flame.description": "Зажигает свечи, костры и другие источники света рядом.", + "magisterium.spell.magisterium.awaken_the_flame.utterance": "Iɢɴɪs ᴅᴏʀᴍɪᴇɴs, ɴᴜɴᴄ sᴜʀɢᴇ!\n\nLᴜᴍᴇɴ ᴛɪʙɪ ɪᴍᴘᴇʀᴏ, ꜰʟᴀᴍᴍᴀᴇ ʀᴇᴠᴇʟᴇᴛᴇ!", + "magisterium.spell.magisterium.quench_the_flame": "Погашение пламени", + "magisterium.spell.magisterium.quench_the_flame.heading": "ᴇxᴛɪɴɢᴜᴇʀᴇ ɪɢɴᴇᴍ", + "magisterium.spell.magisterium.quench_the_flame.description": "Погашает свечи, костры и другие источники света рядом.", + "magisterium.spell.magisterium.quench_the_flame.utterance": "Iɢɴɪs ᴠɪᴠᴇɴs, ɴᴜɴᴄ ǫᴜɪᴇsᴄᴇ!\n\nLᴜᴍᴇɴ ᴛɪʙɪ ɴᴇɢᴀᴛᴜʀ, ꜰʟᴀᴍᴍᴀᴇ ᴇxᴛɪɴɢᴜᴇᴛᴇ!", + "magisterium.spell.magisterium.glyphic_ignition": "Глифическое воспламенение", + "magisterium.spell.magisterium.glyphic_ignition.heading": "ɪɢɴɪʀᴇ sɪɢɪʟʟᴀ", + "magisterium.spell.magisterium.glyphic_ignition.components": "Компоненты: глифы, размещенные на земле поблизости", + "magisterium.spell.magisterium.glyphic_ignition.description": "Воспламеняет мистические глифы, уничтожая их в процессе.", + "magisterium.spell.magisterium.glyphic_ignition.utterance": "Sɪɢɪʟʟᴀ ɪɢɴᴇs sᴜsᴄɪᴘɪᴛᴇ!\n\nRᴜᴘᴛɪs ɪɢɴɪʙᴜs ᴀᴄᴄᴇɴᴅɪᴛᴇ!", + "magisterium.spell.magisterium.conflagrate": "Конфлаграция", + "magisterium.spell.magisterium.conflagrate.heading": "ᴄᴏɴꜰʟᴀɢʀᴀʀᴇ", + "magisterium.spell.magisterium.conflagrate.components": "Компоненты: до трех предметов, пропитанных элементом огня", + "magisterium.spell.magisterium.conflagrate.description.0": "Вызывает взрыв палящего огня, поджигая всю область вокруг заклинателя.", + "magisterium.spell.magisterium.conflagrate.description.1": "Предметы сильно увеличивают дальность заклинания.", + "magisterium.spell.magisterium.conflagrate.utterance": "Iɢɴɪs ᴅᴏᴍɪɴᴀᴛᴜʀ, ɴɪʜɪʟ ʀᴇʟɪɴǫᴜᴇ ɪɴ ᴄɪɴᴇʀɪʙᴜs!\n\nMᴀᴛᴇʀɪᴀ ᴀʀᴅᴇᴀᴛ, sɪᴛ ꜰʟᴀᴍᴍɪs ᴄᴏɴsᴜᴍᴘᴛᴀ!\n\nOᴍɴɪᴀ ᴇᴛ sɪɴɢᴜʟᴀ ɪɴꜰʟᴀᴍᴍᴀʀᴇ!", + "magisterium.spell.magisterium.illusory_wall": "Иллюзорная стена", + "magisterium.spell.magisterium.illusory_wall.heading": "ɪʟʟᴜsᴏʀɪᴀ ᴍᴜʀᴜs", + "magisterium.spell.magisterium.illusory_wall.components": "Компоненты: материал, из которого должна быть сделана стена, линия мистических глифов на земле", + "magisterium.spell.magisterium.illusory_wall.description": "Создает иллюзорную стену, которая кажется твердой, но может быть пройдена.", + "magisterium.spell.magisterium.illusory_wall.utterance": "Pᴀʀɪᴇs ꜰᴀʟʟᴀx, ᴠɪᴅᴇᴀʀɪs ꜰɪʀᴍᴜs ᴇᴛ ᴀʟᴛᴜs!\n\nTᴀɴɢᴀɴᴛ ᴛᴇ ꜰʀᴜsᴛʀᴀ, sᴏʟɪᴅᴜᴍ ᴠɪᴅᴇʀᴇ sᴇᴅ ᴜᴍʙʀᴀ sɪs.\n\nVᴇʀɪᴛᴀs ᴀʙsᴄᴏɴᴅɪᴛᴀ, ᴜᴍʙʀᴀ ᴘᴇʀᴍᴀɴᴇ!" +} \ No newline at end of file