ModLoader для GTA San Andreas
Описание
ModLoader – это плагин, который помогает ставить любые модификации для ГТА Сан Андреас, не редактируя оригинальные файлы игры и не заменяя их. Приспособление позволяет устанавливать моды, которые обычно требуют редактирования gta3.img с помощью сторонних программ. Теперь это не нужно делать!
Есть аналогичный МодЛоадер для ГТА Вайс Сити.
Преимущества:





Как установить ModLoader для GTA San Andreas?
Скачиваем и копируем файлы c архива в папку с игрой.
Как установить моды с помощью Mod Loader?
Скачать Мод Лоадер для ГТА Сан Андреас / САМП 0.3.7 бесплатно и без вирусов можно у нас.
Установка любых модификаций через Modloader
Прочитав данное руководство Вы научитесь без труда устанавливать модификации любых масштабов через программу Mod Loader. Данный способ установки модификаций подходит также и для GTA III и GTA Vice City.
1. Что такое Modloader?
2. Установка Modloader.
3. Установка модификаций через Modloader.
4. Включение и отключение модификаций через игру.
Что такое Modloader?
В отличии от ручной установки и автоинсталляторов, Modloader не затрагивает оригинальные файлы игры, что сводит на нет возможные последствия после установки модификаций в игру. Забудьте о создании бэкапах оригинальных файлов, возможных крашей при перегрузке архивов игры и других неприятных вещах, с которыми сталкивался абсолютно каждый.
Переместить файлы Modloader и папку Modloader в папку, где установлена GTA San Andreas.
Установка модификаций через Modloader.
1. Создать в папке «Modloader» пустую папку (примечание: название должно быть на английском языке!).
2. Переместить все файлы мода в эту папку.
Рекомендуется для каждого мода использовать отдельную папку.
Включение и отключение модификаций через игру.
После загрузки игры зайти в меню паузы, выбрать пункт «Настройки», «Mod Configuration», «Modifications».
Здесь будет полный список всех модификаций. Вы можете включать и выключать их прямо через это меню, выбирая соответствующий мод.
Создание модификаций с помощью ModLoader
В этой статье будет рассказано о том, как создать модификацию используя ModLoader. Уроки очень просты, рассчитаны на новичка, который никогда не создавал модификации для Minecraft. При этом важно отметить, что ModLoader является безнадежно устаревшим средством загрузки модов, и не актуален для версий выше 1.7.
Настоятельно рекомендуется проходить учебник последовательно!
| Название раздела | Статус |
| Начало Работы | Готов |
| Блок | Готов |
| Предмет | Готов |
| Еда | Готов |
| Инструмент | Готов |
| Команды для чата | Частично готов |
| Генерация объектов | Пишется |
| Товар у жителей | Готов |
Содержание
Начало работы [ ]
Подготовка [ ]
| Нужно | Для последней версии MineCraft |
| MineCraft (чистый) | Скачать |
| ModLoader | Скачать |
| MineCraft Coder Pack | Скачать |
| NotePad++ (не обязательно) | Скачать |
| JDK 8 | Скачать |
Написание стартового кода [ ]
Если вы используете NotePad++, то откройте его, по умолчанию у вас будет открыт файл new 1. Выбираете Файл>Сохранить как… и сохраняете по уже известному пути \src\minecraft\net\minecraft\src (там, где все файлы лежат). (Если у вас нет Notepad++, вы должны сами создать этот файл. В имя файла вписываем mod_***.java.
mod_ — обязательная приставка. *** — любое название (выберите что попроще и без пробелов (пример: mod_block)). И нажимаем сохранить. Пишем в файл:
Это базовый шаблон для любой модификации.
Эта строчка должна присутствовать в каждом файле в самом верху. Это указание директории вашей модификации(если вы используете ModLoader, то все модификации должны находиться в этой директории).
Эта строчка нужна, когда вы используете расширенные возможности моддинга, о них позже.
Это объявление класса mod_*** (везде меняйте *** на имя вашей модификации).
Здесь, в public void load() пишутся текстуры для блоков, рецепты, и ещё много чего.
return «1.5.2»; — Версию в кавычках можно менять на любую другую. Обычно используют для обозначения версии Minecraft’а.
Компиляция и создание готовой модификации [ ]
Чтобы проверить код на наличие ошибок необходимо запустить файл recompile.bat. Он заново компилирует игру. Если ошибок нет, то консоль закроется.
После запускаем startclient.bat, после чего запускается игра, где можно опробовать модификацию прямо в игре.
Если вы создали готовую модификацию, и хотите получить готовые рабочие файлы, то
Если у вас ошибка при рекомпиляции [ ]
Очень часто бывает, что при рекомпиляции возникают ошибки. В таком случае надо:
Декомпиляция с модификациями [ ]
Благо и это сделать тоже можно, и многие наверняка уже догадались как.
Находим нужную модификацию (обязательно на ModLoader), дальше делаем по инструкции выше и, в уже модифицированный minecraft.jar кладем файлы модификации, а после уже запускаем decompile.bat.
Готово! Теперь вы легко сможете изменить чужую модификацию.
Добавление рецептов [ ]
Сразу отметим, что рецепты надо вставлять или так:
Простой крафт [ ]
Рассмотрим такую строчку:
— ввод рецепта в код;
— Результат крафта — один алмазный блок;
— Первое «###» обозначает верхнюю строчку верстака, следующие — среднюю и нижнюю. ‘#’, Block.dirt — принятие символа # за блок земли. Можно использовать вместо # любые буквы и многие символы, а пробел заменяет пустую клетку. Результат:
| Ингредиенты | Рецепты крафта | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Земля | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Ингредиенты | Рецепты крафта | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Алмазный блок + Обсидиан | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Ингредиенты | Рецепты крафта | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Земля + Семена пшеницы | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Ингредиенты | Процесс | Результат | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Золотой блок | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Код | Звук |
| soundWoodFootstep | Звук при ходьбе по дереву |
| soundGravelFootstep | Звук при ходьбе по гравию |
| soundGrassFootstep | Звук при ходьбе по траве |
| soundStoneFootstep | Звук при ходьбе по камню |
| soundMetalFootstep | Звук при ходьбе по драгоценным блокам |
| soundGlassFootstep | Звук при ходьбе по стеклу |
| soundClothFootstep | Звук при ходьбе по шерсти |
| soundSandFootstep | Звук при ходьбе по песку |
| soundSnowFootstep | Звук при ходьбе по снегу |
| soundLadderFootstep | Звук при движении на лестнице |
| soundAnvilFootstep | Звук при движении по наковальне |
.setBlockName(«NewBlock») — тоже самое что и в строчке public static final Block NewBlock. Просто копируем наше кодовое название и вставляем в кавычки.
.setHardness(4.5F) — это время, которое требуется долбить блок, чтобы его добыть. Ориентируетесь на то, что устойчивость земли равна 0.5F.
.setResistance(5F) — это взрывоустойчивость блока. Например у обсидиана (не разрушается TNT) взрывоустойчивость равна 6000F.
.setLightValue(0.375F) — можно убрать этот параметр. Определяет светимость блока. 1F — свет как от светокамня.
В итоге должно получиться так
Имя, текстура, крафт блока [ ]
Теперь приступаем к самому главному. К строчке
Внутри этих скобок мы и запишем путь к текстуре, присвоим имя блоку уже в игре, добавим ему крафт.
Итак для начала создадим нашему блоку имя в игре
Обратите внимание, что в (NewBlock, «New Block») NewBlock — этот как раз наше кодовое имя блока. А в кавычках у нас имя блока в игре. В кавычках действуют знаки форматирования кода. Это означает, что если вы напишите «§ 6NewBlock», то цвет имени вашего блока будет золотым. В таблице указаны свойства, которые мы можем применить к нашему блоку(исключительно визуальные).
| Sample | Code | Common Name | Foreground Color | Background Color | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| R | G | B | HEX | R | G | B | HEX | |||
| § 0 | Черный | 0 | 0 | 0 | #000000 | 0 | 0 | 0 | #000000 | |
| § 1 | Темно-Синий | 0 | 0 | 170 | #0000AA | 0 | 0 | 42 | #00002A | |
| § 2 | Темно-Зеленый | 0 | 170 | 0 | #00AA00 | 0 | 42 | 0 | #002A00 | |
| § 3 | Темная Вода | 0 | 170 | 170 | #00AAAA | 0 | 42 | 42 | #002A2A | |
| § 4 | Темно-Красный | 170 | 0 | 0 | #AA0000 | 42 | 0 | 0 | #2A0000 | |
| § 5 | Пурпурный | 170 | 0 | 170 | #AA00AA | 42 | 0 | 42 | #2A002A | |
| § 6 | Золотой | 255 | 170 | 0 | #FFAA00 | 42 | 42 | 0 | #2A2A00 | |
| § 7 | Серый | 170 | 170 | 170 | #AAAAAA | 42 | 42 | 42 | #2A2A2A | |
| § 8 | Темно-Серый | 85 | 85 | 85 | #555555 | 21 | 21 | 21 | #151515 | |
| § 9 | Цвет Индиго | 85 | 85 | 255 | #5555FF | 21 | 21 | 63 | #15153F | |
| §a | Ярко-Зеленый | 85 | 255 | 85 | #55FF55 | 21 | 63 | 21 | #153F15 | |
| §b | Водяной | 85 | 255 | 255 | #55FFFF | 21 | 63 | 63 | #153F3F | |
| §c | Красный | 255 | 85 | 85 | #FF5555 | 63 | 21 | 21 | #3F1515 | |
| §d | Розовый | 255 | 85 | 255 | #FF55FF | 63 | 21 | 63 | #3F153F | |
| §e | Желтый | 255 | 255 | 85 | #FFFF55 | 63 | 63 | 21 | #3F3F15 | |
| §f | Белый | 255 | 255 | 255 | #FFFFFF | 63 | 63 | 63 | #3F3F3F | |
| Код | Описание |
|---|---|
| §l | Выделение |
| §m | |
| §n | Подчеркнутое |
| §o | Наклонный |
Далее зададим путь к текстуре
Итак «/textures/New Block.png». /textures это папка в minecraft.jar, которая, как вы помните находится в jars. Можно изменить на любое. /New Block.png это картинка 16×16, положенная в эту папку. Имя и формат должны В ТОЧНОСТИ совпадать с указанными в коде.
И, наконец, наше любимое — рецепт:
Вот пример готового кода:
Создание файла блока [ ]
Создаем новый файл BlockNewBlock.java в той же директории src\minecraft\net\minecraft\src. Пишем в него:
return mod_***.NewBlock.shiftedIndex — Что будет выпадать из блока при разрушении.
return 1 — Количество выпадающего блока или предмета.
Обращаю ваше внимание на строчку
| Код | Вкладка Creative |
| tabBlock | Добавляет объект во вкладку «Блок» |
| tabDecorations | Добавляет объект во вкладку «Декоративные» |
| tabRedstone | Добавляет объект во вкладку «Механизмы» |
| tabTransport | Добавляет объект во вкладку «Транспортировка» |
| tabMisc | Добавляет объект во вкладку «Разное» |
| tabFood | Добавляет объект во вкладку «Еда» |
| tabTools | Добавляет объект во вкладку «Инструменты» |
| tabCombat | Добавляет объект во вкладку «Оружие» |
| tabBrewing | Добавляет объект во вкладку «Зельеварение» |
| tabMaterials | Добавляет объект во вкладку «Материалы» |
Генерация блока [ ]
Этот раздел нужен для тех, кто хочет, чтобы их блок генерировался в мире (или в аду). Например при создании руды.
Генерация в обычном мире.
Итак сразу под строчкой
for(int k = 0; k Мульти-текстура [ ]
Чтобы у нашего блока были разные текстуры с разных сторон, надо немного изменить код.
— все также как и с обычным блоком.
— тут текстура на нижнюю сторону блока
Далее все как и с обычным блоком. Загружаем картинки, рекомпилируем и радуемся мульти-текстурным блоком.
Падающий блок [ ]
В mod_*** все также, а в BlockNewBlock.java вставляем
extends BlockSand — этот параметр и заставляет наш блок падать, так как копирует гравитационные свойства у песка.
Блок готов. Можно рекомпилировать и проверять в игре (см. 1.1 Компиляция и создание готового мода).
Блок, наносящий урон [ ]
Работать мы будем исключительно в BlockNewBlock.java.
onEntityCollidedWithBlock — условие, при котором игрок находится вплотную к блоку
par5Entity.attackEntityFrom(DamageSource.cactus, 1); — урон типа cactus (кактус) в полсердца (цифра 1).
Теперь, когда вы подойдете к блоку вам будет наносится урон в 1 полсердце.
Блок, испускающий частицы [ ]
В файле блока вставляем эту строчку
Этот код заставляет наш блок испускать частицы, как блок красного камня.
par1World.spawnParticle(«reddust» — reddust — собственно тип частиц.
Вот так будет выглядеть код появления частиц вокруг блока грязи
Таблица кодов частиц:
| Вид частиц | Код |
|---|---|
| Дым | «smoke» |
| Частицы разрушения блока (имя блока после _). | «iconcrack_» |
| Частицы разбитого яйца | «snowballpoof» |
| Частицы разрушения инструмента (имя инструмента после _) | «tilecrack_» |
| Частицы портала | «portal» |
| Частицы, появляющиеся под водой | «splash» |
| Пузырьки воды | «bubble» |
| Споры мицелия | «townaura» |
| Анимация взрыва | «hugeexplosion» |
| Огонь | «flame» |
| Частицы в виде сердечек | «heart» |
| Критический урон | «crit» |
| Магический критический урон | «magicCrit» |
| Ноты | «note» |
| Частицы магических рун | «enchantmenttable» |
| Частицы лавы | «lava» |
| Частицы следов во время ходьбы | «footstep» |
| Редстоун частицы | «reddust» |
| Капли воды | «dripWater» |
| Капли лавы | «dripLava» |
| Куски слизня | «slime» |
Предмет [ ]
Добавление предмета [ ]
Как и в разделе «Блок», для удобства мы будем создавать предмет NewItem.
Долго разбираться в коде не будем, так как все разобрано в разделе «Блок».
Тут все параметры абсолютно совпадают с параметрами создания блока:
final Item — создание предмета, final Block — создания блока.
NewItem = new ItemNewItem(5000) и NewBlock = new BlockNewBlock(160, 0) — тут все также. ID у предмета 5000. Не забываем с каждым предметом увеличивать ID.
Как видите код создания блока и предмета почти одинаковы.
Вот как должен выглядеть код
Имя, текстура, крафт предмета [ ]
Тут смотрите подраздел «Имя, текстура, крафт блока» в разделе «Блок». Всё в точности так же, только NewBlock заменяем на NewItem.
Вот так в конечном итоге выглядит код:
Единственное отличие: не нужно добавлять ModLoader.registerBlock(NewBlock);.
Создание файла предмета [ ]
Создаем новый файл ItemNewItem.java. Вспомните new ItemNewItem(5000) в строке добавления мода — ItemNewItem и определяет название нашего нового файла.
maxStackSize = 64 — Количество предметов в одном слоте.
this.setCreativeTab(CreativeTabs.tabMaterials); — добавление во вкладку в креативе. Смотрите «Создание файла блока».
Предмет готов. Запускаем recompile, затем startclient и проверяем. Если есть ошибки, то ещё раз читаем статью.
Создание еды [ ]
Создать еду очень просто: надо заменить код определения предмета
6, 1F, true — 6 — сколько восстанавливает еда восстанавливает половинок очков голода (соответственно число 20 полностью восстанавливает голод), 1F — время до момента, когда персонаж снова начнет голодать, true — false — можно/нельзя приручить едой волка.
Инструмент [ ]
Создание инструмента [ ]
Туда же, куда мы вписывали код для создания блока и предмета вписываем
yourSword — кодовое имя.
(new ItemSword — созданием меча.
203, EnumToolMaterial.EMERALD — тут ID и очень важная вещица, о которой позже.
.setItemName(«yourSword») — снова кодовое имя.
Теперь подробнее о EnumToolMaterial.***. *** — это материал нашего инструмента. Переходим в EnumToolMaterial.java и видим различные материалы нашего инструмента. Приведу табличку материалов.
| Код | Материал |
| WOOD | Дерево |
| STONE | Камень |
| IRON | Железо |
| GOLD | Золото |
| EMERALD | Изумруд |
| DIAMOND | Алмаз |
Но это не конец, вы можете создать собственный материал, просто под имеющимися пишем большими буквами имя, например, NEW.
Теперь разберем эти странные цифры: 3, 1561, 8.0F, 3, 10 (в пример я взял EMERALD). 3 — уровень разрушения блоков, насколько серьёзные блоки можно добыть. 1561 — количество использований. 8.0F — скорость разрушения блоков. 3 — урон мобам. 10 — шанс на хорошее зачаровывание.
В этом примере мы создали меч. Следующие строки создают мотыгу, лопату, кирку, топор соответственно.
MATERIALNAME заменяете на нужный или созданный вами.
Имя, текстура, крафт инструмента [ ]
Вот код для всего tool сета. Пишем в public void <
Вот собственно и все (не забудьте добавить текстуры).
Вот так будет выглядеть полностью код, добавляющий целый комплект предметов:
Товар у жителей [ ]
Если вы хотите, чтобы ваши предметы|блоки продавались у жителей, то в mod_*** пишем
TradeEntry test = new TradeEntry(Item.gunpowder.itemID, 0.5f, false, 2, 4); — Item.gunpowder.itemID — тут ваш предмет, блок и т. д.
0.5f — шанс появления в продаже у жителей
ModLoader.addTrade(1, test); — 1 — профессия жителя
Цифры 2, 4 — это курс валюты для продажи, то есть, товар будет продаваться от 2 до 4 изумрудов.
False — это значит что житель продает товар вам, соответственно true — это значит что товар продаете вы.
| Код профессии | Название профессии жителя | Цвет одежды |
| 0 | Фермер | Коричневый |
| 1 | Библиотекарь | Белый |
| 2 | Священник | Фиолетовый |
| 3 | Кузнец | Черный |
| 4 | Мясник | Белый |
Генерация объектов [ ]
Команды для чата [ ]
Изменение существующих команд [ ]
Названия всех команд в игре (и сервера) начинается с Command.
Например открыв файл CommandKill.java мы увидим такой код
return «kill»; — kill — это строка после /. Можем изменить её например для краткости на k. В таком случае при вводе в игре /kill нам сообщат, что такой команды не существует, а при вводе /k команда выполнится.
public int getRequiredPermissionLevel() — пока что не разобрался (предположительно уровень доступа, то есть, например 0, значит, могут использовать обычные игроки, а 2 — только админы.
var3.attackEntityFrom(DamageSource.outOfWorld, 1000); — эффект от команды — урон в 1000 единиц вида outOfWorld (падение в пустоту).
par1ICommandSender.sendChatToPlayer(«Ouch. That looks like it hurt.»); — в кавычках сообщение при смерти в чат.
Создание своих команд [ ]
В mod_***, как уже для многих стало привычно, пишем под public class mod_test extends BaseMod <
NewCommand — кодовое название команды.








