HLFX.Ru Forum Страницы (2): [1] 2 »
Показать все 28 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Технические вопросы (https://hlfx.ru/forum/forumdisplay.php?forumid=20)
-- Нужна помощь в кодинге под Quake 2 (https://hlfx.ru/forum/showthread.php?threadid=1118)


Отправлено JoJo 19-01-2008 в 14:53:

Нужна помощь в кодинге под Quake 2

Делаем мод по сабж. Необходимо реализовать следующее:

В Quake 2 всегда игроку дается пистолет и никак не сделать, чтобы в начале игры ему он не давался (без кодинга имею ввиду). Там даже энтити такой для пистолета нет. Необходимо сделать, чтобы игроку в начале игры не давался пистолет, а подбирал он его о время игры.

Кто заинтересовался и может помочь, напишите в приват или стукните в асю (в профиле). Сорцы кваки 2 я дам если что.

__________________
Вафли правят миром!!!


Отправлено Дядя Миша 19-01-2008 в 16:20:

В p_client.c

code:
/* ============== InitClientPersistant This is only called when the game first initializes in single player, but is called after each death and level change in deathmatch ============== */ void InitClientPersistant (gclient_t *client) { gitem_t *item; memset (&client->pers, 0, sizeof(client->pers)); item = FindItem("Blaster"); client->pers.selected_item = ITEM_INDEX(item); client->pers.inventory[client->pers.selected_item] = 1; client->pers.weapon = item; client->pers.health = 100; client->pers.max_health = 100; client->pers.max_bullets = 200; client->pers.max_shells = 100; client->pers.max_rockets = 50; client->pers.max_grenades = 50; client->pers.max_cells = 200; client->pers.max_slugs = 50; }

Собственно FindItem("blaster");
И дает игроку в руки пистолет.

Добавлено 19-01-2008 в 19:20:

Да и насчет вафлей - ты это, не прав вообщем


Отправлено JoJo 19-01-2008 в 17:00:

Дядя Миша
Дык я с этим местом и ковырялся!!! Если я не даю игроку бластер - при загрузки карты игра тупо вылетает и вылезает отчет об ошибке.

Напиши плиз как правильно по твоему надо написать. Может я что-то не так делаю.

ЗЫ
Если можешь, то зайди в асю.

__________________
Вафли правят миром!!!


Отправлено Дядя Миша 19-01-2008 в 18:10:

Ну значит надо в void PutClientInServer (edict_t *ent)
сделать проверку:
Вот это барахло

code:
client->ps.gunindex = gi.modelindex(client->pers.weapon->view_model);

заменить на
code:
if(client->pers.weapon) client->ps.gunindex = gi.modelindex(client->pers.weapon->view_model); else client->ps.gunindex = 0;


Добавлено 19-01-2008 в 21:10:

Должно все заработать.


Отправлено JoJo 19-01-2008 в 22:48:

Цитата:
Дядя Миша писал:
Вот это барахло заменить на
code:
if(client->pers.weapon) client->ps.gunindex = gi.modelindex(client->pers.weapon->view_model); else client->ps.gunindex = 0;



Какое именно "барахло" надо заменить на код в цитате?

__________________
Вафли правят миром!!!


Отправлено XaeroX 20-01-2008 в 06:09:

JoJo тебе же написали две цитаты - старую и новую. Содержимое старой меняешь на содержимое новой. Видимо, ты начал читать пост с середины.

__________________

xaerox on Vivino


Отправлено Дядя Миша 20-01-2008 в 08:52:

Немножко поправил пост. Я думал ты догадаешься.


Отправлено JoJo 20-01-2008 в 09:34:

Спасибо большое! Работает!

У меня одна загвоздка уже в маппинге. Вот у меня есть func_train. Он в начале должен быть невидимым, а потом когда его активируют он должен появиться и ехать по path_corner'ам. Вот как заставить func_train вначале быть невидимым?

__________________
Вафли правят миром!!!


Отправлено FiEctro 20-01-2008 в 09:40:

JoJo в ку2 есть env_rendener ? Если да то поставь один со значением 0 , ну а когда захочешь сделать видимымым то 255

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 20-01-2008 в 11:07:

ку2 вообще полностью opensource - если чего-то не хватает, всегда можно добавить.
env_render там нету.


Отправлено JoJo 20-01-2008 в 11:47:

Дядя Миша
Можешь помочь?
Ну например не энв_рендер сделать, а к функ_треин сделать дополнительный пункт, например "invsible" с параметрами "yes" и "no" или просто сделать дополнительный флаг "invisible". И если я его установлю, то в начале игры этот объект не будет виден и через него можно будет пройти. А когда его активируют триггером, он появлялся как визуально, так и физически, ну и начинает выполнять скрипт.

А если поможешь, то я по аналогии к другим энтитям если понадобиться сделаю.

Я так подумал будет все таки удобнее энтитю енв_рендер сделать, но чтобы можно было не только делать прозрачность объекта, но и была возможность проходить через объект (те же параметры "yes" и "no"). Думаю это будет намного лучше. Ну в общем ты понял ))))

__________________
Вафли правят миром!!!


Отправлено Дядя Миша 20-01-2008 в 12:17:

Слишком долго там ковырятцо.
Но есть мнение, что если добавить в renderfx трейна флаг
RF_TRANSLUCENT, а alpha выставить в ноль, то это будет именно то что нужно. Но опять-таки - насколько я помню ку2 не реагирует на значение alpha и не передает его на клиент.
Точнее делает это очень и очень избирательно.
К тому же alpha должна быть в диапазоне от нуля до еденички.
Ку2 в первичном виде мало подходит для моддинга, ИМХО.


Отправлено JoJo 20-01-2008 в 12:22:

Дядя Миша
Чел, если сможешь помочь, то мы в долгу не останемся! Кароче забошляем)))

__________________
Вафли правят миром!!!


Отправлено XaeroX 20-01-2008 в 13:01:

JoJo ну ты учти, что час работы среднего программиста типа меня или Дяди Миши стоит в районе 150 рублей

__________________

xaerox on Vivino


Отправлено Дядя Миша 20-01-2008 в 13:01:

Моя онлайн помощь стоит порядка 500 евро в час, если ты об этом)))


Временная зона GMT. Текущее время 00:25. Страницы (2): [1] 2 »
Показать все 28 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024