Jump to content


Photo

[Без ModLoader] Основы программирования для Minecraft


  • Please log in to reply
382 replies to this topic

#121 WDkun

WDkun

    Зачарователь

  • Пользователи
  • Active Posts1939

Posted 11.05.2011 - 08:17

Пофиксил.
package net[paste][/paste]minecraft[paste][/paste]src;import java[paste][/paste]io[paste][/paste]PrintStream;import java[paste][/paste]util[paste][/paste]Calendar;import java[paste][/paste]util[paste][/paste]Random;import java[paste][/paste]util[paste][/paste]Map;public class mod_Flowerpot extends BaseMod{        public static final Block flowerpot = new Block(140, 0)[paste][/paste]setHardness(0[paste][/paste]3F)[paste][/paste]setResistance(0[paste][/paste]7F)[paste][/paste]setStepSound(Block[paste][/paste]soundGrassFootstep)[paste][/paste]setLightValue(0[paste][/paste]10F)[paste][/paste]setBlockName("flowerpot");			public String Version()	{		return "0[paste][/paste]0[paste][/paste]2";	}		public mod_Flowerpot()        {			ModLoader[paste][/paste]RegisterBlock(flowerpot);			flowerpot[paste][/paste]blockIndexInTexture = ModLoader[paste][/paste]addOverride("/terrain[paste][/paste]png", "/flowerpot");			ModLoader[paste][/paste]AddName(Peat, "Peat");						        }			private Random rand;	private World worldObj;}


#122 LordKmon

LordKmon

    Странник

  • Пользователи
  • Active Posts24

Posted 15.05.2011 - 20:20

Нотч Доброго вам Всем вечера =)

Недавно у меня Возник вопрос, Как изменить длину стрелы ? [Ниже написан ответ на этот вопрос]
Смысл в том, чтобы сделать бывшую "стрелу" настолько короткой, чтобы текстура ее "конца оперения" была практически в точке застревания стрелы в блоке.

Первое предположение было относительно функции setSize(0.5F, 0.5F); которая находится в файле EntityBullet (EntityArrow). Но экспериментальным путем, я установил, что аргументы этой функции влияют только на РАДИУС подбирания объекта в инвентарь. Чем больше будет значение, например 2.0F, 2.0F - тем с более большего расстояния предмет будет автоматически подбираться в инвентарь игрока. Длина стрелы при этом никак не меняется.

Дальше я начал проверять файл RenderBullet (renderArrow) и там нашел следующее:


^ Переменная f10 - отвечает общий размер стрелы, т.е если хотите пулять малюсенькими стрелочками, то измените значение с f10= 0.05... на f10= 0.016
^ Переменная f3 отвечает за - сколько начиная с левого края картинки arrows.png брать изображения на текстуру "Стрела-Вид Сбоку". Логический размер стрелы не меняется, если значение меньше чем 0.5, то что попадет из файла arrow.png будет просто растянуто по стреле.

^ И вот долгожданный ответ - для того, чтобы сместить положение прорисовки Оперения стрелы, надо в файле внести следующие изменения:
меняем первые 8 строчек такого типа:

tessellator.addVertexWithUV(<расстояние от наконечника стрелы до оперения>,....
-7D - расстояние по умолчанию в конце стрелы, -1D середина стрелы, 4D наконечник стрелы

первые 4 строчки отвечают за положение прорисовки оперения стрелы, когда игрок смотрит спереди на нее, а вторые 4 строчки - когда игрок смотрит сзади на нее. Звучит бредово, но знать надо.

#123 LordKmon

LordKmon

    Странник

  • Пользователи
  • Active Posts24

Posted 16.05.2011 - 18:27

Следующая тема Моддинга - звуки: [notch]

Если, создав новый предмет указать стандартный звук , например world.playSoundAtEntity(entityplayer, "random.bow",....
то звук нормально проигрывается.
Однако, если же указать добавленный собственноручно новый ogg-файл , world.playSoundAtEntity(entityplayer, "random.NewSound",.... - то ничего проигрываться не будет, причем это не зависит от качества ogg-файла. Потому что, можно тот же самый bow.ogg переименовать в NewSound.ogg и все равно он также проигрываться не будет.
Отсюда следует вывод, что существует некий список, в котором перечислены все имена ogg файлов, которые могут проигрываться.

Помогите мне найти этот список... Или хотя бы показать пример успешного
проигрывания нового звука
, при помощи метода playSoundAtEntity. [pig]

Вот тут пути моего копания в java-коде:

Скрытый текст


#124 WDkun

WDkun

    Зачарователь

  • Пользователи
  • Active Posts1939

Posted 16.05.2011 - 20:08

Modloader и AudioMod засунь в minecraft.jar и декомпиль заново.

#125 LordKmon

LordKmon

    Странник

  • Пользователи
  • Active Posts24

Posted 17.05.2011 - 09:28

Modloader и AudioMod засунь в minecraft.jar и декомпиль заново.

УРа, всё заработало! Нотч
Спасибо WDkun


Что я сделал :

1. Папки bin и resources из ЧИСТОЙ версии МК поместил в MCP/jars
2. Добавил содержимое модов Modloader и AudioMod в архив MCP/jars/Minecraft.jar
3. Декомпилировал - причем в процессе декомпиляции выдало:
== ERRORS FOUND ===
2 out of 2 hunks FAILED

вот тут полный скрин лога:
Скрытый текст


4. Добавил в src свои файлы, entityBullet , itemPistol и т.д. дописав все что не доставало
5. Запустил recompile.bat и reobfuscate.bat

6. Из папки reobf получившиеся class-файлы добавил в .minecraft/bin/minecraft.jar
( это тот же самый архив, который был изначально ЧИСТЫЙ с содержимым в нем двух модов (Modloader и AudioMod ).

7. Добавил в .minecraft/bin/minecraft.jar файл item.png и bullets.png - текстуры
8. Удалил META

После этих операций работать звук НЕ БУДЕТ. Потому что надо прочесть описание audioModa. Общий смысл такой, что свои ауди звуки надо положить в .minecraft/resources/mod/sound

и мало того, в
строчке EntityBullet ( или какой у вас там файл снарядов) указать вот так имя файла без всяких там слов random.

примерно так -

world.playSoundAtEntity(entityplayer, "pistol", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 0.8F));

#126 Dan4eg

Dan4eg

    Добытчик дерева

  • Пользователи
  • Active Posts193

Posted 31.05.2011 - 10:31

Вопрос:если я сделаю новый верстак можно ли будет добавить рецепт для него через ML?
Нотч знает яву.Нотч любит Яву.Нотч ничего и не знает кроме явы.Нотч пишет игры.Получаются неплохие игры, но на яве.Кто виноват и что делать?

#127 CryDeS

CryDeS

    Странник

  • Пользователи
  • Active Posts6

Posted 31.05.2011 - 19:48

А где первые посты?Я хотел начать мучать майн,а смотрю теперь постов то нету :(

#128 WDkun

WDkun

    Зачарователь

  • Пользователи
  • Active Posts1939

Posted 31.05.2011 - 19:56

Я выпилил их, когда у меня отняли модера. Читайте теперь буржуйские, чо

#129 Dirty Dwarf

Dirty Dwarf

    Алхимик

  • Пользователи
  • Active Posts4297
  • Откуда: Мир Магии и Дружбы

Posted 31.05.2011 - 19:58

Я выпилил их, когда у меня отняли модера. Читайте теперь буржуйские, чо

Это так по взрослому. Так держать, сударь.

32302.png


When you get it hard, masterbate...


#130 CryDeS

CryDeS

    Странник

  • Пользователи
  • Active Posts6

Posted 31.05.2011 - 19:59

Это ппц.Верни их пожалуйста.Ведь у тебя одного статьи в рунете были :( А если есть у кого то еще статьи такие прошу ткнуть меня носом :)

#131 WDkun

WDkun

    Зачарователь

  • Пользователи
  • Active Posts1939

Posted 31.05.2011 - 20:42

Okay

#132 Sekai

Sekai

    Добытчик обсидиана

  • Пользователи
  • Active Posts1163
  • Откуда: Тольятти

Posted 31.05.2011 - 20:56

вдкун ты няшка ^_^ спс что вернул я тебя люблю
Noblesse oblige
ЧЕЕЕЕЕЕЕЕЕЕЕЕН! ^_,^

#133 SuperNintendo

SuperNintendo

    Добытчик обсидиана

  • Пользователи
  • Active Posts1413
  • Откуда: Scotland~

Posted 31.05.2011 - 21:05

я тебя люблю

SUDDENLY! Изображение
ИзображениеИзображениеИзображение

#134 WDkun

WDkun

    Зачарователь

  • Пользователи
  • Active Posts1939

Posted 31.05.2011 - 21:08

Я потерял бэкап с туториалом по модлоадеру, поэтому придётся восстанавливать по памяти.

#135 CryDeS

CryDeS

    Странник

  • Пользователи
  • Active Posts6

Posted 31.05.2011 - 21:11

Спасибо что вернул :)

#136 SuperNintendo

SuperNintendo

    Добытчик обсидиана

  • Пользователи
  • Active Posts1413
  • Откуда: Scotland~

Posted 31.05.2011 - 21:15

Я потерял бэкап с туториалом по модлоадеру, поэтому придётся восстанавливать по памяти.

Вай-вай как старается. :з Поблагодарите няшу ВД-куна за его старание как следует. Изображение
ИзображениеИзображениеИзображение

#137 Oflor

Oflor

    Тонущий в песках душ

  • Пользователи
  • Active Posts2327

Posted 31.05.2011 - 21:50

Запили потом туториал по добавлению и спауну моба, а? :3

#138 Sekai

Sekai

    Добытчик обсидиана

  • Пользователи
  • Active Posts1163
  • Откуда: Тольятти

Posted 01.06.2011 - 05:41

как делать гуи?
Noblesse oblige
ЧЕЕЕЕЕЕЕЕЕЕЕЕН! ^_,^

#139 Trylyly

Trylyly

    Странник

  • Пользователи
  • Active Posts69

Posted 01.06.2011 - 06:04

Sekai, вот

#140 Sekai

Sekai

    Добытчик обсидиана

  • Пользователи
  • Active Posts1163
  • Откуда: Тольятти

Posted 01.06.2011 - 06:29

а можно сделать это без изменения стандартных классов?
Noblesse oblige
ЧЕЕЕЕЕЕЕЕЕЕЕЕН! ^_,^


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users