Переменную tpres объявляй и инициализируй сразу (перед main(), в самом начале скрипта). Ну и все остальные переменные.
Также советую везде создавать локальные переменные. Это не засоряет глобальное пространство имён и повышает быстродействие.
Ну и блиииин. Засовывать в каждый кадр такой кусок кода.. Ёмаё, сделай функцию и всунь это всё туда, и в команду засунь вызов этой функции.
playerPed уже устарело, надо юзать PLAYER_PED.
Короче я переделал, так куда производительней. Работоспособность не проверял, если что подправь.
local tpres = false
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(200) end
sampAddChatMessage("{019829}[TPGRP]: {019829}Загружен!", -1)
sampAddChatMessage("{019829}[TPGRP]: {FFFFFF}Скрафтил: {019829}Odelyaz!", -1)
sampAddChatMessage("{019829}[TPGRP]: {FFFFFF}Скрипт создан для: {FDFF01}Cluckin Killa", -1)
sampAddChatMessage("{019829}[TPGRP]: {FFFFFF}Канал YouTube: {FF5656}www.youtube.com/channel/UCmgP5nBO8CgXlfEvIRQrscw", -1)
sampRegisterChatCommand("tpgrp", function()
local coords, posX, posY, posZ = getTargetBlipCoordinates()
if coords then
tpres = true
local z = getGroundZFor3dCoord(posX, posY, posZ)
if isCharInAnyCar(PLAYER_PED) then
if getDriverOfCar(storeCarCharIsInNoSave(PLAYER_PED)) == PLAYER_PED then
z = z + 2.5
end
end
sampSendSpawn()
setCharCoordinates(PLAYER_PED, posX, posY, z)
printStringNow("~g~successfully teleported :)", 1000)
tpres = false
else
sampAddChatMessage("[Teleport For GRP]: Поставьте метку!", 0x00FFAA00)
end
end)
wait(-1)
end
function onSendPacket(id)
if id == PACKET_VEHICLE_SYNC and tpres then
return false
end
end