SAMP/SetPlayerRaceCheckpoint
Материал из Wikipedia Pi
SetPlayerRaceCheckpoint
Описание:
Создает контрольную точку гонки. Когда игрок входит в него, вызывается обратный вызов OnPlayerEnterRaceCheckpoint.
Параметры:
((playerid, type, Float: x, Float: y, Float: z, Float: nextx, Float: nexty, Float: nextz, Float: size)
playerid | ID игрока, для которого нужно установить контрольную точку.. |
type | Тип КПП. 0 - Нормально , 1 - Готово, 2 - Ничего (только контрольная точка без чего-либо), 3 - Нормальный воздух, 4 - Финиш, 5 - Воздух (вращается и останавливается), 6 - Воздух (увеличивается, уменьшается и исчезает) , 7 - Воздух (качается вниз и вверх), 8 - Воздух (качается вверх и вниз). |
x | X-координата. |
y | Y-координата. |
z | Z-координата. |
nextx | X-координата следующей точки для направления стрелки. |
nexty | Y-координата следующей точки для направления стрелки. |
nextz | Z-координата следующей точки для направления стрелки. |
size | Размер (диаметр) КПП. |
Возвращаемые значения:
- 1: функция успешно выполнена.
- 0: функция не выполнена. Это означает, что указанный игрок не существует.
Предупреждение |
Известные ошибки:
|
Важное |
Контрольные точки гонки являются асинхронными, то есть одновременно может отображаться только одна. Чтобы «транслировать» контрольные точки гонки (показывать их только тогда, когда игроки достаточно близко), используйте стример контрольных точек гонки. |
Пример использования:
public SetRaceCheckpoint(playerid, Airrace, target, next)
{
if(next == -1 && Airrace == 0)
SetPlayerRaceCheckpoint(playerid,1,RaceCheckpoints[target][0],RaceCheckpoints[target][1],RaceCheckpoints[target][2],
0.0,0.0,0.0,CPsize);
else if(next == -1 && Airrace == 1)
SetPlayerRaceCheckpoint(playerid,4,RaceCheckpoints[target][0],RaceCheckpoints[target][1],RaceCheckpoints[target][2],
0.0,0.0,0.0,CPsize);
else if(Airrace == 1)
SetPlayerRaceCheckpoint(playerid,3,RaceCheckpoints[target][0],RaceCheckpoints[target][1],RaceCheckpoints[target][2],
RaceCheckpoints[next][0],RaceCheckpoints[next][1],RaceCheckpoints[next][2],CPsize);
else
SetPlayerRaceCheckpoint(playerid,0,RaceCheckpoints[target][0],RaceCheckpoints[target][1],RaceCheckpoints[target][2],
RaceCheckpoints[next][0],RaceCheckpoints[next][1],RaceCheckpoints[next][2],CPsize);
}
Связанные функции
Следующие функции также могут быть полезны, поскольку они так или иначе связаны с рассматриваемой функцией.
- SetPlayerCheckpoint - Создать контрольную точку для игрока.
- DisablePlayerCheckpoint - Отключение текущей контрольной точки игрока.
- IsPlayerInCheckpoint - Проверьте, находится ли игрок на контрольной точке.
- IsPlayerInRaceCheckpoint - Проверяет, находится ли игрок на контрольной точке гонки.
- DisablePlayerRaceCheckpoint - Отключить текущую контрольную точку гонки игрока.
Связанные обратные вызовы
Следующие обратные вызовы также могут быть полезны, поскольку они так или иначе связаны с рассматриваемым обратным вызовом.
- OnPlayerEnterCheckpoint - Вызывается, когда игрок входит в контрольную точку.
- OnPlayerLeaveCheckpoint - Вызывается, когда игрок покидает контрольную точку.
- OnPlayerEnterRaceCheckpoint - Вызывается, когда игрок входит в контрольную точку гонки.
- OnPlayerLeaveRaceCheckpoint - Вызывается, когда игрок покидает контрольную точку гонки.