Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Мануал Spawner vehicles.

Статус
В этой теме нельзя размещать новые ответы.

Hикита

Умник
Ку.

Написал систему, благодаря которой, транспортное средство спавнится в том случае, если стоит не на начальных координатах и отсутствовал/отсутствует водитель.


Всё довольно-таки просто.

При создании тс, записывается его начальная координата X. Затем, в колбэке, который срабатывает ежесекундно, происходит сверка нынешнего значения координаты X с начальным. И, если в транспорте, который расположен не в начальных координатах (+- 2), не было водителя, то производим респавн.

Функция:
PHP:
stock _CreateVehicle ( type, Float: x, Float: y, Float: z, Float: rotation, color1, color2, respawn_delay )
{
    new vehicleid = CreateVehicle ( type, x, y, z, rotation, color1, color2, respawn_delay );
    
    vehicle_coor_x [ vehicleid ] = x;
    vehicle_coor_y [ vehicleid ] = y;

    return vehicleid;
}
#define CreateVehicle _CreateVehicle
Проверка и респавн (ежесекундно):
PHP:
for ( new i = GetVehiclePoolSize (); i != -1; i -- )
{
	if ( GetVehicleModel ( i ) )
	{
	    new

	        Float:  x,
	        Float:  y,
	        Float:  z

		;

		GetVehiclePos ( i, x, y, z );

		if (	floatround ( x ) != floatround ( vehicle_coor_x [ i ] ) ||
				floatround ( y ) != floatround ( vehicle_coor_y [ i ] ) )
				SetVehicleToRespawn ( i );
	}
}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу