Добрый день, дамы и дамовладельцы. Сегодня я покажу вам, как назначить отдельный прицел на каждое оружие в HL2DM (спасибо FENIX'у и z4kky за помощь). Сначала вам нужна прога под названием "GCFScape". Откройте ею .gcf файл "source engine". В нем зайдите в папку "scripts" и распакуйте 11 файлов: "weapon_crowbar.txt", "weapon_stunstick.txt", "weapon_pistol.txt", "weapon_smg1.txt", "weapon_ar2.txt", "weapon_physcannon.txt", "weapon_357.txt", "weapon_rpg.txt", "weapon_shotgun.txt", "weapon_crossbow.txt" и "weapon_frag.txt". Скопируйте их все в папку "scripts", что лежит в директории "hl2mp" (если таковой нет, просто создайте). Затем откройте те файлы, что хотели бы изменить (смотрите по названию оружия) и найдите блок "crosshair". Тут начинается самое интересное - есть два способа назначить прицел.
Первый способ: изображение. Да, вы можете взять свой собственный рисунок и поставить его как прицел. Но с недавних пор (а точнее когда в моду ввели переменную "sv_pure 2") на всех КВ ваша картинка будет заменяться пикчей из файла "crosshairs.vtf", лежащего по адресу "source materials.gcf/Sprites". Так что не советую рисовать собственный прицел, все равно бесполезно.
Итак, вот переконвертированный в .png формат и увеличенный для наглядности вдвое файл "crosshairs.vtf":
.
Выберите нужный прицел (пусть "N" будет его номером), у любого из них размер равен 24*24 пикселя (кроме нижних двух - там, по-моему, 104*16. Или нет. В любому случае фиг кто их ставить будет). Чтобы установить выбранный, вставьте следующий текст под строчку "crosshairs" (но сначала удалите все в этом блоке, иначе ничего не получится):
Code
{
"file" "sprites/crosshairs"
"x" ""
"y" ""
"width" "24"
"height" "24"
}
.
Тут нужно заполнить поля "x" и "y". Для подсчета координат воспользуйтесь уравнениеми x=(X(N)-1)*24 , y=(Y(N)-1)*24 (тут X(N) - номер строки нужного прицела, Y(N) - столбец). Пример: второй прицел в третьей строке. Блок будет выглядеть так:
Code
{
"file" "sprites/crosshairs"
"x" "24"
"y" "48"
"width" "24"
"height" "24"
}
.
Получиться что-то вроде этого: .
По аналогии действуйте с каждым другим оружием, для которого хотите поставить прицел.
Лично я не рекомендую следовать первому пути - на рисунке можно увидеть, что края прицела обрезаются и сглаживаются, поэтому остается довольно мало тех, что будут выглядеть нормально на мониторе (а не просто как точка): четвертый во второй строке, третий, четвертый и пятый в третьей. Но если вы предпочтете имеено эти, то на этом все заканчивается, запускайте игру и наслаждайтесь результатом.
Второй способ: файл шрифта. Именно так, можно использовать отдельный файл шрифта для прицелов, и он не будет заменен на стандартный даже при включенном "sv_pure 2". Этот способ сложнее, но если вам хочется использовать именно свой личный прицел, рекомендую читать крайне внимательно и четко следовать каждому пункту. Сначала нужно создать (или отредактировать, сам я изменял существующий шрифт halflife2.ttf из папки "resource") файл шрифта и нарисовать там нужный прицел (или прицелы). Рекомендую для этого прогу под названием "Font Creator Program". Готовый файл положите в папки C:/WINDOWS/Fonts и "resource".
Важно: нужно обязательно указать имя файла шрифта, отлчное от halflife2.ttf и задать "Family Name" шрифта отличающимся от HalfLife2, иначе получится шляпа и будете играть с прицелами вместо, скажем, иконок оружия и патронов.
Так, предположим, что вы намутили .ttf шрифт, назвали его, скажем, "mycros", и даже кинули в обе папки. Если вы лишь меняли файл "halflife2.ttf", как это делал я, то в редакторе шрифтов будет нечто вроде этого (я использовал несколько своих прицелов и один из hl2dmPro):
Сейчас идете в папочку "recource" по адресу :\Steam\steamapps\*name*\half-life 2 deathmatch\hl2mp\ и ищете там файл под названием "clientscheme.res". Не бойтесь расширения, тупо откройте "Блокнотом" и найдите блок "crosshairs":
Code
Crosshairs
{
"1"
{
"name" "HalfLife2"
"tall" "40"
"weight" " 0"
" ant ialias" "0"
"additive" "0"
"custom" "1"
"yres" "1 10000"
}
}
.
Скопируйте весь блок и вставьте его прямо под последним символом "}", потом переименуйте его в "Mycros" и измените имя шрифта на "mycros" (см. картинку): .
Сохраните "clientscheme.res", предварительно сделав копию на всякий случай, и идите в папку "scripts". Здесь откройте нужный файл, найдите блок "crosshair" и вставьте вот такой текст:
Code
"Mycros"
{
"font" "mycros"
"character" "<charname>"
.
Где - имя символа, который будет использоваться в качестве прицела. Например, "a".
Если все сделано верно, получится примерно такое (несколько примеров):
.
Все, готово. Запускайте игру и веселитесь .