помогите со скриптом

shuzaru

Потрачен
Автор темы
162
37
Версия SA-MP
  1. Любая
Что я не так написал я не могу телепортироватся и пишет команда неверная.
require "MoonAdditions"

local TELEPORT_DELAY = 3000 -- задержка телепортации в миллисекундах
local TELEPORT_COMMAND = "/tpk" -- команда для телепортации

local teleportCoords = { -- координаты для телепортации на карте
{"Рыболовный порт", 1372.451171875, -1488.5141601563, 13.546875},
{"Сверхмаркет", 682.46875, -460.501953125, 16.3359375},
{"Аэропорт", 1661.8588867188, -2396.3588867188, 13.546875},
{"Полицейский участок", 246.9482421875, 63.376953125, 1002.640625},
{"Больница", 1179.109375, -1323.212890625, 13.34375},
}

function teleportPlayer(playerid, coordinates)
if IsPlayerConnected(playerid) then -- Проверяет, подключён ли игрок перед телепортацией
SetPlayerPos(playerid, coordinates[1], coordinates[2], coordinates[3])
SendClientMessage(playerid, 0xFFFFAA00, "Вы телепортированы на " .. coordinates[4] .. "!")
end
end

function onPlayerCommandText(playerid, cmdtext)
if cmdtext:sub(1, #TELEPORT_COMMAND) == TELEPORT_COMMAND then
local playerCoords = {GetPlayerPos(playerid)}
local destinationIndex = tonumber(cmdtext:sub(#TELEPORT_COMMAND+1))

if destinationIndex and teleportCoords[destinationIndex] then
local destinationCoords = teleportCoords[destinationIndex]
if IsPointInWater(destinationCoords[2], destinationCoords[3], destinationCoords[4]) or IsPointInAirportArea(destinationCoords[2], destinationCoords[3], destinationCoords[4]) then
SendClientMessage(playerid, 0xFFFFAA00, "Невозможно телепортироваться в эту область.")
return false
end
if GetPlayerTargetActor(playerid) ~= INVALID_ACTOR_ID or GetPlayerTargetPlayer(playerid) ~= INVALID_PLAYER_ID or GetPlayerTargetVehicle(playerid) ~= INVALID_VEHICLE_ID then
SendClientMessage(playerid, 0xFFFFAA00, "Невозможно телепортироваться, пока вы находитесь в транспорте / стреляете в обьекты / игроков.")
return false
end
if GetPlayerAttachedObject(playerid, 0) == 1 then
SendClientMessage(playerid, 0xFFFFAA00, "Невозможно телепортироваться, пока вы держите предмет.")
return false
end

local string = string.format("Телепортация через %.2f секунд...", TELEPORT_DELAY/1000)
SendClientMessage(playerid, 0xFFFFAA00, string)
SetTimerEx("teleportPlayer", TELEPORT_DELAY, false, "if", playerid, destinationCoords)
return true
else
SendClientMessage(playerid, 0xFFFFAA00, "Некорректный выбор точки телепортации.")
end
end
return false
end

AddEvent("OnPlayerCommandText", onPlayerCommandText)
 
  • Bug
Реакции: nanobrick

Dmitriy Makarov

25.05.2021
Проверенный
2,478
1,113
ИИ тебе почти половину кода с функциями Pawn дал. Остальная, конечно, Lua, но тем не менее, это не будет работать. Придется тебе его вручную переписывать, дружище. Либо попросить сделать кого-то в разделе "Работа и услуги".
 
Последнее редактирование:

shuzaru

Потрачен
Автор темы
162
37
ИИ тебе почти половину кода с функциями Pawn дал. Остальная, конечно, Lua, но тем не менее, это не будет работать. Придется тебе его вручную переписывать, дружище. Либо попросить сделать кого-то в разделе "Работа и услуги".
понял я просто тестил что ии даст.