Сделал проверку на объект, но все равно, даже если этого объекта нету, команда срабатывает.
Можно ли с этим что-нибудь поделать ?PHP код:
if(IsValidPlayerObject(playerid,18632) && !BoatVeh(Veh))
Сделал проверку на объект, но все равно, даже если этого объекта нету, команда срабатывает.
Можно ли с этим что-нибудь поделать ?PHP код:
if(IsValidPlayerObject(playerid,18632) && !BoatVeh(Veh))
PHP код:
if(IsValidPlayerObject(playerid,18632) && !BoatVeh(Veh)) return 0;
Вы не совсем правильно поняли, сейчас покажу на примере небольшого кода:
Создаёте глобальный массив для игроков, в котором будет хранить ID объекта. Каждому элементу в массиве присвоим значение несуществующего объекта:
Далее, когда вы создаёте объект игрока, не просто создавайте его, а присваивайте значение элемента массива playerid, тому значение, которое хранит только что созданный объект:PHP код:
new
player_obj[MAX_PLAYERS] = { INVALID_OBJECT_ID, ... };
При удалении объекта игрока, не нужно ничего присваивать к значению функции.PHP код:
player_obj[playerid] = CreatePlayerObject(...); // где ... это параметры
Вы просто удаляйте и снизу устанавливайте значение объекта на несуществующий ID:
Теперь можно не использовать функцию IsValidPlayerObject.PHP код:
DestroyPlayerObject(playerid, player_obj[playerid]);
player_obj[playerid] = INVALID_OBJECT_ID;
Вместо старой проверки используйте это:
PHP код:
if(player_obj[playerid] == INVALID_PLAYER_ID)
// объекта не существует
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)