Существует как минимум 2 способа сделать свой курсор в Tremulous.
Способ первый. Самый простой.
Для этого нам понадобиться стикер (такая липкая ерунда на которой заметки пишут) или кусочек пластилина. Вырезаем из нашего стикера аккуратно квадратик с дырочкой посередине, берем фламастер и расскрашиваем оставшуюся часть как нам угодно. Анналогично можно сделать с пластелином - вылепим из него какой нибудь оригинальный курсор.
Заходим в Tremulous за людей, берем рифл, и лепим на место его наш изготовленный курсор. Все, - готово. За все классы людей и все классы алиенов у нас есть свой оригинальный кросс.
Недостатка два - перекрестие работает теперь не только в Tremulous но и браузере, в редакторах, при просмотре фильмов. А второе - при замене кросса приходиться чистить монитор от пластилина или клея. Но есть способо лучше но чуть сложнее.
Способ второй. HUD`ожественный.
Свой кросс можно сделать с помощью HUD`а. Tremulous, как внучок quake3, поддерживает смену интерфейса в игре - меню (cg_menuFiles), декоративных элементов (cg_hudFiles). Кросс относиться как раз к декоартивным элементам. Что ж, пришло время начать делать свой hud.
Во-первых нам понадобиться болванка - готовый стандартный hud, который мы будем изменять по нашему усмотрению. Для этого откроем файл base-1.1.0.pk3 архиварором (угу, это просто файл формата zip) и вытащим от туда следующие файлы -
Эти 5 файлов отвечают за элементы дизайна в треме в режиме игры. Создадим папку в base папку под названием ui и положим туда эти файлы. Переименуем файл hud.txt в j4funhud.cfg. Теперь осталось сделать свой курсор и немного настроить конфиг.
Курсор у меня получился вот таким (файл own_cross4rle.tga, я его положил в папку ui/assets/ - assets создал) -
Не скажу что он играбельный. Просто как пример =) Файл должен быть в формате RLE, без сжатия! И запомните размеры всего полотна и точку перекрестия.
Теперь откроем файл tremulous_human_hud.menu. Секция menuDef - она объединяет несколько элементов itemDef в одну группу. Нам нужно будет добавить свой элемент - кросс. Что б не морочиться с типами курсоров для каждого оружия, наш курсор будет статическим объектом, без функции обработки, тупо будет рисоваться в центре экрана =). Для этого добавим в секцию STATIC OBJECTS
// Own Cursor itemDef { name "own-cursor" rect 303.5 223.5 137 33 visible 1 decoration forecolor 1 1 1 1 style WINDOW_STYLE_SHADER background "ui/assets/own_cross4rle.tga" }
Теперь опишу по строчкам что здесь. Первое это имя - уникальный идентификатор нашего объекта.
Далее положение и размер. Так как у меня файл 137 на 33, и перекрестие находится по координатам полтона (16,5;16,5) то точка на экране будет (303.5;223.5). Дело в том, что все элементы интерфеса рисуются исходя из того что наш размер экрана - 640 на 480. Середина - (320;240), и с учетом смещения полотна получаем точную середину перекрестия - (303.5;223.5).
Параметр visible - отвечает за то виден ли объект или нет.
Парметр decoration - наличие его говорит о том что это эелемент декорации (hud), а не меню.
Параметры forecolor 1 1 1 1 - это смещения цветовой гаммы и прозрачность объекта. Первые три - это смещения по цветам. Последний прозрачность, 0 - полностю прозрачный, 1 - полностью не прозрачный.
Парметр style WINDOW_STYLE_SHADER - указавыаетна на то кто будет отрисовывать элемент интерфейса.
Ну и параметр background "ui/assets/own_cross4rle.tga" задает фон. У нас это и есть наша картинка.
Сохраняем изменения. Прописываем в autoexec.cfg строчку cg_hudFiles j4funhud.cfg. И отключаем стандартный курсор cg_drawCrosshair 0.
Вот как это выглядит в игре -
Список полезной литературы (источники с описанием парамктров конфига HUD`а).