|
Наипростейшая гонка
|
|
| OKStyle™ | Дата: Понедельник, 02.06.2008, 06:25 | Сообщение # 1 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| Долго читал все форумы и всё-таки решил спросить. Как можно создать трассу по чекпоинтам? Всегда на радаре появляется только последний из всех. К тому же игра не реагирует на нахождение в гоночном чекпоинте. Прошу подробно объяснить технологию создания гонки. Как должно быть: больше 1 чекпоинта на радаре не поставить, поэтому так: въезжаешь в чекпоинт, он удаляется, и появляется следующий, и т.д.
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
Сообщение отредактировал okstyle - Понедельник, 02.06.2008, 09:36 |
| |
|
|
| XAOC | Дата: Понедельник, 02.06.2008, 07:44 | Сообщение # 2 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| Quote public OnPlayerEnterRaceCheckpoint(playerid) - обработка "входа" в рейс-чекпойнт { return 1;[l] } //--------------------------------------------------- public OnPlayerLeaveRaceCheckpoint(playerid) - обработка "выхода" из рейс-чекпойнт { return 1; } SetPlayerRaceCheckpoint(playerid, type, Float:x, Float:y, Float:z, Float:nextx, Float:nexty, Float:nextz, Float:size); DisablePlayerRaceCheckpoint(playerid); IsPlayerInRaceCheckpoint(playerid); последние 3 строки объяснять надеюсь не надо ?
|
| |
|
|
| OKStyle™ | Дата: Понедельник, 02.06.2008, 08:23 | Сообщение # 3 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| XAOC, когда игрок в шахматы просит научить его ставить "детский" мат, не надо ему правила игры рассказывать. Эти функции я знаю. Я хотел пример. Ну всё-равно спасибо. Я уже сам разобрался. Вот: В начало ставим: Code new j=0; // переменная начала чекпоинтов
new Float:RaceCheckpoints[...][6] = { // координаты чекпоинтов {1798.3396,843.5301,10.6253, 2057.3245,842.7838,6.7031}, {2057.3245,842.7838,6.7031, 2058.2078,973.1601,10.5138}, ... }; Это можно на любое условие: Code for(new i=0;i<MAX_PLAYERS;i++) { SetPlayerRaceCheckpoint(i,0,RaceCheckpoints[0][0],RaceCheckpoints[0][1],RaceCheckpoints[0][2],RaceCheckpoints[0][3],RaceCheckpoints[0][4],RaceCheckpoints[0][5],8.0); // начальный чекпоинт } В любое место: Code public OnPlayerEnterRaceCheckpoint(playerid) { DisablePlayerRaceCheckpoint(playerid); j++; SetPlayerRaceCheckpoint(playerid,0,RaceCheckpoints[j][0],RaceCheckpoints[j][1],RaceCheckpoints[j][2],RaceCheckpoints[j][3],RaceCheckpoints[j][4],RaceCheckpoints[j][5],8.0); // удаление старого и установка нового чекпоинта в связи с увеличением j return 1; } Модифицируйте как угодно 
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
Сообщение отредактировал okstyle - Понедельник, 02.06.2008, 08:39 |
| |
|
|
| XAOC | Дата: Понедельник, 02.06.2008, 08:33 | Сообщение # 4 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| К этому : Code SetPlayerRaceCheckpoint(i,0,RaceCheckpoints[0][0],RaceCheckpoints[0][1],RaceCheckpoints[0][2],RaceCheckpoints[0][3],RaceCheckpoints[0][4],RaceCheckpoints[0][5],8.0); // начальный чекпоинт нужно добавить цикл for: Code for(new i=0;i<MAX_PLAYERS;i++)
|
| |
|
|
| OKStyle™ | Дата: Понедельник, 02.06.2008, 11:53 | Сообщение # 5 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| Quote (XAOC) нужно добавить цикл for да, согласен. Исправил код. Просто он у меня выше описан (в моде) и я забыл его указать здесь на форуме. Но столкнулся с проблемой: чем больше народу проезжает через чекпоинт, тем больше число j. Как "персонализировать" его? Чтобы только твои вхождения в чекпоинты считало?
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
Сообщение отредактировал okstyle - Понедельник, 02.06.2008, 11:54 |
| |
|
|
| XAOC | Дата: Понедельник, 02.06.2008, 16:29 | Сообщение # 6 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| new j[MAX_PLAYERS]; задаём массив j[playerid]++; записываем в ячейку массива эквивалентную playerid
|
| |
|
|
| OKStyle™ | Дата: Вторник, 03.06.2008, 00:01 | Сообщение # 7 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| XAOC, мм... а начальное значение задать как? j[playerid]=0; ?
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
|
| |
|
|
| XAOC | Дата: Вторник, 03.06.2008, 19:09 | Сообщение # 8 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| XAOC, при создании переменной ей задаётся значение 0
|
| |
|
|
| OKStyle™ | Дата: Вторник, 03.06.2008, 20:08 | Сообщение # 9 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| А, понятно. Спасибо.
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
|
| |
|
|
| Knief | Дата: Пятница, 26.06.2009, 03:22 | Сообщение # 10 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 79
Награды: 2
Город: Ульяновск
Репутация: 39
Замечания: 0%
Статус: 
| всё понятно, и делается, но тока чеков не видно и всё. даже пробывал элементарно создать 1 чек, и то не показыает. Что нужно сделать?
|
| |
|
|
| heufix | Дата: Пятница, 26.06.2009, 03:31 | Сообщение # 11 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 995
Награды: 22
Репутация: 231
Замечания: 80%
Статус: 
| Quote (Knief) Что нужно сделать? Нужно посмотреть на дату последнего сообщения в этой теме.
Радость
|
| |
|
|
| Knief | Дата: Пятница, 26.06.2009, 11:46 | Сообщение # 12 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 79
Награды: 2
Город: Ульяновск
Репутация: 39
Замечания: 0%
Статус: 
| Quote (Schwan) Нужно посмотреть на дату последнего сообщения в этой теме посмотрел ), но вопрос остался открытым, и и не потеме, ты больше насчет тюрьмы ничего не сделал?
|
| |
|
|
| heufix | Дата: Пятница, 26.06.2009, 15:44 | Сообщение # 13 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 995
Награды: 22
Репутация: 231
Замечания: 80%
Статус: 
| Quote (Knief) посмотрел ), но вопрос остался открытым, и и не потеме, ты больше насчет тюрьмы ничего не сделал? На счёт тюрмы я тебе всё сделал, если у тебя кривые руки в этом виноват только ты. Браток, ты помоему забываешся, тебе тут никто нечем не обязан.
Радость
|
| |
|
|