Witam chcia?em zrobi? przecho dla samolot?w Tylko gdy chc? wybra? samolot nie pojawia si? w Gui
local screenW , screenH = guiGetScreenSize ()
przechowalnie = {
{{ 1341.03 , 1743.09 , 10.82 }, setElementData ( createMarker ( 1341.03 , 1743.09 , 10.82 - 0.9 , "cylinder" , 2 , 255 , 255 , 255 , 50 ), "przecho:id" , 2 ),{[ 'Plane' ]= true ,[ 'Helicopter' ]= true ,}, "Samoloty i Helikoptery" , createColCuboid ( 1350.74 , 1709.98 , 10.82 - 1 , 9.974975585938 , 8 , 8.1999992370605 ),{ 1376.00 , 1770.23 , 10.82 , 0 , 0 , 210 }},
{{- 1329.80 , 338.39 , 7.19 }, setElementData ( createMarker (- 1329.80 , 338.39 , 7.19 - 0.9 , "cylinder" , 2 , 255 , 255 , 255 , 50 ), "przecho:id" , 3 ),{[ 'Boat' ]= true }, "?odzie" , createColCuboid (- 1322.88025 , 340.98438 , - 1.55000 , 28.96923828125 , 33.127319335938 , 10.200000011921 ),{- 1313.18 , 357.69 , 2.65 , 0.00 , 0.00 , 283.42 }},
}
for i , p in pairs ( przechowalnie ) do
local t = createElement ( "text" )
setElementData ( t , "scale" , 1.5 )
setElementData ( t , "name" ,( "Odbi?r pojazd?w (%s)" ): format ( p [ 4 ]))
setElementPosition ( t , p [ 1 ][ 1 ], p [ 1 ][ 2 ], p [ 1 ][ 3 ])
end
-----
ID_PRZECHO_DO_JAKIEJ_WLAZLES = nil
local wm ={}
wm . window = guiCreateWindow ( 0.25 , 0.26 , 0.51 , 0.42 , "Odbieranie pojazd?w" , true )
guiWindowSetSizable ( wm . window , false )
guiWindowSetMovable ( wm . window , false )
guiSetVisible ( wm . window , false )
wm . gridlist = guiCreateGridList ( 0.04 , 0.09 , 0.92 , 0.65 , true , wm . window )
guiGridListAddColumn ( wm . gridlist , "ID" , 0.2 )
guiGridListAddColumn ( wm . gridlist , "Model" , 0.55 )
guiGridListAddColumn ( wm . gridlist , "Zarejestrowany" , 0.2 )
wm . submit = guiCreateButton ( 0.04 , 0.76 , 0.47 , 0.19 , "Wyjmij pojazd" , true , wm . window )
wm . close = guiCreateButton ( 0.57 , 0.75 , 0.39 , 0.20 , "Zamknij" , true , wm . window )
addEvent ( "onParkingGetVehicles4" , true )
addEventHandler ( "onParkingGetVehicles4" , root , function( result , id )
guiGridListClear ( wm . gridlist )
if not result then return end
for i , v in pairs ( result ) do
if v [ "registered" ] == "false" then
v [ "registered" ] = "NIE"
else
v [ "registered" ] = "TAK"
end
local row = guiGridListAddRow ( wm . gridlist )
if przechowalnie [ id ][ 3 ][ getVehicleType ( v [ "model" ])] then
guiGridListSetItemText ( wm . gridlist , row , 1 , v [ "id" ], false , false )
guiGridListSetItemText ( wm . gridlist , row , 2 , getVehicleNameFromModel ( v [ "model" ]), false , false )
guiGridListSetItemText ( wm . gridlist , row , 3 , v [ "registered" ], false , false )
end
end
end )
addEventHandler ( "onClientMarkerHit" , root , function( el , md )
local id = getElementData ( source , "przecho:id" )
if not id then return end
if el ~= localPlayer then return end
if isPedInVehicle ( el ) then return end
if guiGetVisible ( wm . window ) == false then
showCursor ( true )
guiSetVisible ( wm . window , true )
triggerServerEvent ( "onParkingGetRekords4" , root , id )
ID_PRZECHO_DO_JAKIEJ_WLAZLES = id
-- etCameraMatrix (- 2056.26 , 468.77 , 38.49 , - 2048.08 , 467.73 , 35.17 )
end
end )
addEventHandler ( "onClientGUIClick" , resourceRoot , function()
if source == wm . close then
if guiGetVisible ( wm . window ) == true then
showCursor ( false )
guiSetVisible ( wm . window , false )
setCameraTarget ( localPlayer , localPlayer )
end
end
if source == wm . submit then
local selectedRow = guiGridListGetSelectedItem ( wm . gridlist ) or - 1
if selectedRow < 0 then return end
local vehicles = getElementsWithinColShape ( przechowalnie [ ID_PRZECHO_DO_JAKIEJ_WLAZLES ][ 5 ], "vehicle" )
if #vehicles > 0 then
addEventHandler ( "onClientRender" , root , render1 )
setTimer ( renderstop1 , 4500 , 1 )
return
end
local id = guiGridListGetItemText ( wm . gridlist , selectedRow , 1 )
local register = guiGridListGetItemText ( wm . gridlist , selectedRow , 3 )
if register == "NIE" then
outputChatBox ( "*Zarejestruj pojazd w urz?dzie! Jego ID to " .. id , 255 , 0 , 0 )
return end
guiGridListRemoveRow ( wm . gridlist , selectedRow )
triggerServerEvent ( "onParkingVehicleSpawn4" , localPlayer , tonumber ( id ), przechowalnie [ ID_PRZECHO_DO_JAKIEJ_WLAZLES ][ 6 ])
end
end )
function render1 ()
dxDrawText ( " Nie ma miejsca aby wyci?gn?? pojazd" , screenW * 0.3656 , screenH * 0.1553 , screenW * 0.6273 , screenH * 0.3193 , tocolor ( 255 , 0 , 0 , 255 ), 1.50 , "pricedown" , "center" , "center" , false , false , false , false , false )
end
function renderstop1 ()
removeEventHandler ( "onClientRender" , root , render1 )
end
chowalnie = {
{{ 1356.57 , 1713.78 , 10.82 + 0.2 }, createMarker ( 1355.29 , 1713.71 , 10.82 - 0.9 , "cylinder" , 9 , 255 , 255 , 255 , 25 ), setElementData ( createColCuboid ( 1350.74 , 1709.98 , 10.82 - 1 , 9.974975585938 , 8 , 8.1999992370605 ), "przecho:chowanie:id" , 1 ),{[ "Plane" ]= true ,[ "Boats" ]= true ,[ "Helicopter" ]= true ,}, "Samoloty i Helikoptery" },
}
for _ , c in pairs ( chowalnie ) do
createBlip ( c [ 1 ][ 1 ], c [ 1 ][ 2 ], c [ 1 ][ 3 ], 35 , 2 , 0 , 0 , 0 , 0 , 0 , 250 )
local t = createElement ( "text" )
setElementData ( t , "scale" , 1.5 )
setElementData ( t , "name" , "Pozostawianie pojazd?w" )
setElementPosition ( t , c [ 1 ][ 1 ], c [ 1 ][ 2 ], c [ 1 ][ 3 ])
end
addEvent ( "onParkingGetRekords4" , true )
addEventHandler ( "onParkingGetRekords4" , root , function( id )
local sid = getElementData ( client , "player:sid" )
if not sid then return end
local org = getElementData ( client , "player:organization:id" )
local result = exports [ "pystories-db" ]: dbGet ( "SELECT * FROM pystories_vehicles WHERE (ownedPlayer=? OR ownedGroup=?) AND parking=1" , sid , org or "Brak" )
if #result > 0 then
triggerClientEvent ( client , "onParkingGetVehicles4" , root , result , id )
end
end )
addEventHandler ( "onColShapeHit" , root , function( el , md )
local id_chow = getElementData ( source , "przecho:chowanie:id" )
if not id_chow then return end
if getElementType ( el ) == "player" then
local veh = getPedOccupiedVehicle ( el )
if not veh then return end
if getVehicleController ( veh ) ~= el then return end
local id = getElementData ( veh , "vehicle:id" )
if not id then return end
if chowalnie [ id_chow ][ 4 ][ getVehicleType ( veh )] then
if isTimer ( timeroddania ) then return end
setElementFrozen ( veh , true )
-- outputChatBox ( "Trwa oddawanie pojazdu." , el , 255 , 255 , 255 , true )
toggleControl ( el , "enter_exit" , false )
timeroddania = setTimer (function()
setElementFrozen ( veh , false )
local id = getElementData ( veh , "vehicle:id" )
if not id then return end
exports [ "pystories-vehicles" ]: onSaveVehicle ( veh )
destroyElement ( veh )
exports [ "pystories-db" ]: dbSet ( "UPDATE pystories_vehicles SET parking=1,tp_to_parking=? WHERE id=?" , "Schowany recznie(kierowca)" , id )
toggleControl ( el , "enter_exit" , true )
-- outputChatBox ( "* Pomy?lnie zapisano pojazd." , el , 255 , 255 , 255 , true )
end , 3000 , 1 )
end
elseif getElementType ( el ) == "vehicle" then
local gracz = getVehicleController ( el )
if gracz then return end
local id = getElementData ( el , "vehicle:id" )
if not id then return end
if chowalnie [ id_chow ][ 4 ][ getVehicleType ( veh )] then
if isTimer ( timeroddania ) then return end
timeroddania = setTimer (function()
setElementFrozen ( el , false )
local id = getElementData ( el , "vehicle:id" )
if not id then return end
exports [ "pystories-vehicles" ]: onSaveVehicle ( el )
destroyElement ( el )
exports [ "pystories-db" ]: dbSet ( "UPDATE pystories_vehicles SET parking=1,tp_to_parking=? WHERE id=?" , "Schowany recznie(bez kierowcy)" , id )
-- outputChatBox ( "* Pomy?lnie zapisano pojazd." , el , 255 , 255 , 255 , true )
end , 3000 , 1 )
setElementFrozen ( el , true )
setVehicleLocked ( el , true )
end
end
end )
addEvent ( "onParkingVehicleSpawn4" , true )
addEventHandler ( "onParkingVehicleSpawn4" , root , function( id , miejsce )
if not id then return end
if not miejsce then return end
local spawn = exports [ "pystories-vehicles" ]: onRespawnVehicles ( _ , id , miejsce )
if spawn then
addEventHandler ( "onClientRender" , root , render1 )
end
end )
function render1 ()
dxDrawText ( "Zrespiono pojazd" , screenW * 0.3656 , screenH * 0.1553 , screenW * 0.6273 , screenH * 0.3193 , tocolor ( 255 , 255 , 255 , 255 ), 2.50 , "pricedown" , "center" , "center" , false , false , false , false , false )
end
function renderstop1 ()
removeEventHandler ( "onClientRender" , root , render1 )
end