local bring = ulx.command( CATEGORY_NAME, "ulx bring", ulx.bring, "!bring" )
bring:addParam{ type=ULib.cmds.PlayersArg, target="!^" }
bring:defaultAccess( ULib.ACCESS_ADMIN )
function ulx.goto( calling_calling_ply, target_calling_ply )
if (!calling_ply ||(calling_calling_ply:Team()==TEAM_NONRP || calling_calling_ply:GetUserGroup() == "superadmin"))then
if not calling_calling_ply:IsValid() then
Msg( "Вы не можете уйти в мир смертных с консоли.\n" )
return
end
if ulx.getExclusive( calling_calling_ply, calling_calling_ply ) then
ULib.tsayError( calling_calling_ply, ulx.getExclusive( calling_calling_ply, calling_calling_ply ), true )
return
end
if not target_calling_ply:Alive() then
ULib.tsayError( calling_calling_ply, target_calling_ply:Nick() .. " мертв!", true )
return
end
if not calling_calling_ply:Alive() then
ULib.tsayError( calling_calling_ply, "Ты мертв!", true )
return
end
if target_calling_ply:InVehicle() and calling_calling_ply:GetMoveType() ~= MOVETYPE_NOCLIP then
ULib.tsayError( calling_calling_ply, "Цель в транспорте! Используй Режим полета.", true )
return
end
local newpos = playerSend( calling_calling_ply, target_calling_ply, calling_calling_ply:GetMoveType() == MOVETYPE_NOCLIP )
if not newpos then
ULib.tsayError( calling_calling_ply, "Невозможно. Найди другое место или используй Режим полета.", true )
return
end
if calling_calling_ply:InVehicle() then
calling_calling_ply:ExitVehicle()
end
local newang = (target_calling_ply:GetPos() - newpos):Angle()
calling_calling_ply:SetPos( newpos )
calling_calling_ply:SetEyeAngles( newang )
calling_calling_ply:SetLocalVelocity( Vector( 0, 0, 0 ) ) -- Stop!
ulx.fancyLogAdmin( calling_calling_ply, "#A переместился к #T", target_calling_ply )
else
ULib.tsayError( calling_calling_ply, calling_calling_ply:Nick() .. " не в НонРП профессии.", true )
end
end