Эта функция возвращает INVALID_VEHICLE_ID, если в транспорте нет водителя
Эта функция возвращает INVALID_VEHICLE_ID, если в транспорте нет водителя
Nash_Brigers (02.09.2016) VVWVV (02.09.2016)
Всем привет х2. Имеются 4 точки и их координаты (высоту пока не беру в расчёт) образующие прямоугольник. Как узнать стоит ли игрок в этом прямоугольнике?
Член сообщества Green Square.
Если проверка нужна на постоянной основе (та же GreenZone, где нельзя драться), то подойдёт вариант, что предоставили выше.
А вообще вычислить можно по формуле:
Где:PHP код:
(p_x <= max_x && p_x >= min_x) && (p_y <= max_y && p_y >= min_y)
p_x - Позиция игрока относительно X координаты
p_y - Позиция игрока относительно Y координаты
Ну а "max_x/min_x" и прочее и так понятно. Можно сделать как-то так:
Собственно, если игрок внутри квадрата - вернёт 1. Иначе 0PHP код:
stock IsPlayerInRectangle(playerid, Float:min_x, Float:min_y, Float:max_x, Float:max_y)
{
new Float: p_x,
Float: p_y,
Float: p_z;
GetPlayerPos(playerid, p_x, p_y, p_z);
return (p_x <= max_x && p_x >= min_x) && (p_y <= max_y && p_y >= min_y);
}
Последний раз редактировалось DeimoS; 02.09.2016 в 19:43.
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
Nash_Brigers (02.09.2016)
Как я понял, это для красивого, аккуратного квадрата? А если прямоугольник повёрнут и т.д.? Зоны не вариант ибо для машин запиливаю, их края и есть прямоугольник (хотя можно подумать про AttachDynamicAreaToVehicle).
Добавлено: А не.. Там вообще всё плохо..
Код:*** Streamer Plugin: AttachDynamicAreaToVehicle: Only circles and spheres may be attached to vehicles
Последний раз редактировалось Nash_Brigers; 02.09.2016 в 20:40.
Член сообщества Green Square.
Допустим есть отрезок чисел 0..100
1) Нужно загадать число в этом отрезке
2) Нужно найти минимальное и максимальное число для проверки на интервал в этом же отрезке
Как грамотно такой рандом можно оформить? Подскажет кто?)
[Anticheat]___Invisible Fly Hack
[Anticheat]____Weapon/Ammo Hack
[Function]______ResetPlayerWeaponSlot
[Function]_______FIX_SetPlayerAmmo
[ServerMod]______TDM | Zombie Apokalypse
Скорее всего имеется ввиду что-то вроде этого:
PHP код:
new array[] = {44, 51, 22, 53};
printf("random: %d", GetArrayRandom(array));
printf(" min: %d", GetArrayMin(array));
printf(" max: %d", GetArrayMax(array));
PHP код:
stock GetArrayRandom(array[], const size = sizeof(array))
{
return array[ random(size) ];
}
stock GetArrayMax(array[], const size = sizeof(array))
{
new
max = array[0],
i = 1;
while (i < size) {
if (max < array[i]) {
max = array[i];
}
i++;
}
return max;
}
stock GetArrayMin(array[], const size = sizeof(array))
{
new
min = array[0],
i = 1;
while (i < size) {
if (min > array[i]) {
min = array[i];
}
i++;
}
return min;
}
vovandolg (03.09.2016)
UPD: только сейчас понял это не то что мне нужно,
ziggi, мне надо чтобы минимальное и максимальное число находили рандомы,
а находили так чтобы первое число было минимальным, а второе максимальным,
а третье число для проверки попало ли оно в этот отрезок =)
То есть что то вроде
Минимальное число из рандома
Максимальное число из рандома
Простое любое число находящееся на отрезке
Допустим запустил функцию она сгенерировала 2 числа мин, макс, далее генерирует любое число от 0-100
В итоге такую проверку хочу:
PHP код:
//Отрезок 0..100
//Пусть randmin будет определено из отрезка как 12
//Пусть randmax будет определено из отрезка как 35
//Пусть randnumber будет определено из отрезка как 30
switch(randnumber)
{
case randmin..randmax: //Ура рандомное число попало в рандом =)
}
//Пусть randmin будет определено из отрезка как 52
//Пусть randmax будет определено из отрезка как 66
//Пусть randnumber будет определено из отрезка как 77
switch(randnumber)
{
case randmin..randmax: //Увы рандомное число НЕ попало в рандом =(
}
//P.S. Длину между минимальным и максимальным рандомом тоже хотелось бы видеть в настройках
Последний раз редактировалось vovandolg; 03.09.2016 в 13:04.
[Anticheat]___Invisible Fly Hack
[Anticheat]____Weapon/Ammo Hack
[Function]______ResetPlayerWeaponSlot
[Function]_______FIX_SetPlayerAmmo
[ServerMod]______TDM | Zombie Apokalypse
Эту тему просматривают: 8 (пользователей: 0 , гостей: 8)