Нам потребуются файлы:
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
1. Разбиваем в любом gif редакторе наш смайлик на спрайты (кадры):
2.Далее, подчищаем фон кадров (делаем его прозрачным) и изменяем размер спрайтов - делаем его 32х32 пиксела (это важно)
Естественно, все это делается в графическом редакторе (любом, на ваш вкус)
3. В том же графическом редакторе, создаем новый рисунок размером 512х512 пикселов с прозрачным фоном. Советую заранее настроить шаг сетки на 32 пиксела. Получается что-то похожее на это:
[Ссылки могут видеть только зарегистрированные пользователи. ]
4. Перетаскиваем по-порядку наши 13 спрайтов полученных ранее на сделанную выше основу. Ход размещения - слева на право и сверху в низ. Вот как должно получиться в конечном итоге:
Сетка не позволяет промахнуться) (точное расположение спрайтов очень важно).
5. С графической частью закончили. Любым удобным способом создаем из получившегося рисунка dds файл (будь-то фотошоп или конвертер). Имеет смысл поэксперементировать с настройками dds.
6. Не для кого не секрет, что наборы смайлов хранятся в клиенте игры в Perfect World\element\surfaces.pck. Распаковываем его и лезем в папку /ingame/
Сами наборы смайлов представлены 2 мя файлами - emotionsХ.dds (который мы уже сделали выше) и emotionsХ.txt, немного о формате последнего.
непосредственно для нашего изготовленного смайла emotionsХ.txt выглядит следующим образом:
условно формат можно разбить на 4 области (на примере первой строки):
0 - порядковый номер области начала смайла (первый спрайт, счет начинается с 0)... можно назвать это номер места в "шахматной доске" 16х16 квадратов, счет начинается слева на право и сверху вниз.
(если бы у меня был 2й смайл допустим, с 2 спрайтами, то 2я строка выглядела бы так:
13 2 "02hi2" 10 20, естественно, что сдвинется вся последующая нумерация).
13 - количество кадров (спрайтов) в смайле
"01hi" - наименование (произвольное значение)
10 20 30 40 50 60 70 80 90 100 110 120 130 - временные интервалы отображения каждого спрайта (точно не уверен, но, похоже что в десятых секунды) по нарастающей, т.е. время показа спрайта будет разницой между соседними соответствующими цифрами (знаю, не очень популярно объяснил ))), но как умею, поэкспериментируйте и сами разберетесь со временем .)
Важно, emotionsХ.txt должен быть заполнен для всех 50-ти смайлов из набора (у меня это "пустышки" 03test) даже если в текущем наборе всего 1 смайл, в противном случае - "светофор".