| 
					| Nanotech_ua | Дата: Четверг, 08.12.2011, 13:20 | Сообщение # 1 |  |  Майор Группа: Администраторы Сообщений: 95 Статус:   | В этом уроке вы узнаете как можно заменить стандартные биллборды на свои. Вот то, что у нас в итоге получится:
 
 
   
 А работать мы будем вот с этим биллбордом:
 
 
   
 Он находится чуть южнее аэропорта Лас Вентураса.
 
 Часть 1 – используем MED
 
 Прежде всего нам необходимо узнать название и идентификатор этого объекта в ГТА.
 Для этого мы будем использовать MED (скачать можно по ссылке, данной ниже).
 Открываем MED. Перед вами откроется окошко, в котором вы должны нажать кнопку Add.
 В Type the name... вводим GTA SA, и нажимаем на кнопку Browse...
 Здесь выбираем папку, в которую у вас установлена GTA SA. После чего три раза нажимаете OK, если все хорошо — то начнется загрузка. Теперь надо загрузить карту. Мышкой двигайте в левый верхний угол экрана. Видим кнопку File, опускаемся чуть чуть, видим домик, опускаемся еще чуть чуть и видим надпись IDE. Теперь идем мышкой вправо, видим надпись IPL, еще чуть двигаем вправо, и видим, наконец, Scene, нажимаем на нее. У вас появится список частей карты. Сейчас нам необходима часть DATA/MAPS/vegas/vegasS.ipl. Выбираем ее и нажимаем на кнопку Render (внизу). У нас появится карта. Как по ней перемещаться я не буду рассказывать, сами разберетесь. Ищем наш биллборд и кликаем на него два раза. Слева у вас появится небольшое окошко, в котором нам важно две вещи:
 Строка Identifier: и DFF File. Запоминаем что там написанно (8331 и vgsbboardsigns18).
 Закрываем MED.
 
 Часть 2 — находим картинку биллборда
 
 Дальше открываем программу IDEditor (скачать можно по ссылке, данной ниже).
 В ней нажимаем File → Open и переходим в папку папка гта са\data\maps\vegas.
 Здесь выбираем выбираем VegasS.ide
 Теперь нажимаем на клавиатуре Ctrl + F, в поиск вводим vgsbboardsigns18 (это то, что мы видели в строке DFF File) и нажимаем кнопку Find Next. Нам выдаст строку 8331, vgsbboardsigns18, vgsssignage03, 149, 2097152. В этой строке нам важно лишь vgsssignage03.
 
 Закрываем IDEditor. Открываем программу TXD Workshop (тоже скачивайте по ссылке, данной ниже). Нажимаем кнопку Open IMG (это под кнопкой File, в левом верхнем углу программы). В открывшимся окне переходим в папку папка гта са\models и выбираем файл gta3.img. Сейчас самое сложное: смотрим в левый нижний угол программы и нажимаем на него. Оказывается это текстовое поле! Все, сложное кончилось. Вводим туда vgsssignage03 и нажимаем на найденный результат. Дальше, если я ничего не путаю, то нам необходима вот эта картинка:
 
 
   
 Выбираем ее, и нажимаем сверху кнопку Export. Теперь нажимаем BMP (если честно, то я не знаю какой формат из этих лучше, но я пользовался BMP) и выбираем, куда будет сохранена картинка.
 
 Часть 3 — изменяем и сохраняем картинку
 
 Переходим в папку, в которой вы сохранили эту картинку. Теперь в этой папке создаете еще папку под названием back. В нее копируете картинку. Теперь возвращайтесь в ту папку, куда вы изначально сохранили картинку и можете как хотите изменить эту картинку, у меня вот что получилось:
 
 
   
 Возвращайтесь обратно в TXD Workshop. Нажимаем на кнопку Import (чуть левее кнопки Export) и выбираем нашу измененную картинку. Если у вас получилось что то такое (ну кроме самой картинки), значит вы на верном пути:
 
 
   
 Теперь нажимайте кнопку Save TXD (чуть левее кнопки Import). И идите еще левее, пока не наткнетесь на кнопку Action, нажимаем на нее, затем Export
 и выбирайте куда сохранить ваш TXD файл (я обычно сохраняю в ту же папку, куда сохранял картинки). Все, проверьте только, нормально ли экспортировалось. Сейчас опять нажимайте кнопку Import и выбирайте исходную картинку (помните когда я сказал вам создать папку back?). Нажимаем опять Save TXD.
 
 Часть 4 — код
 
 Закрывайте все программы из этого урока, которые вы открыли до этого. Переходим в папку вашего ресурса. Открываем meta.xml и вписываем туда:
 
 
 Code <file src="vgsssignage03.txd" /> 
 Сохраняем файл, закрываем. Копируем в папку с ресурсом наш файл vgsssignage03.t:D, полученный в пред. Части. Открываем клиентский скрипт. И вписываем в него:
 
 
 Code addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()),     function ()
 txd_floors = engineLoadTXD ( "vgsssignage03.txd" )
 engineImportTXD ( txd_floors, 8331 )
 end
 )
 Здесь мы, когда у игрока стартует этот ресурс, подгружаем ему нашу новую модель и заменяем ее. Где 8331 — это номер, полученный в строке Identifier части 1.
 Все сохраняем, запускаем сервер и заходим на него.
 
 
   
 Ссылки:
 TXD Workshop
 MED
 IDEditor
 
 
 Урок был взят с pawno.ru |  |  |  |  |