Wysłany: 2016-07-08, 10:27
mkmm4
Wiek: 40 Na forum: 4738 dni Posty: 3
Witam, mam problem z suszark? ot?? gdy pr?buj? przenie?? do Przechowalni to pojawia si? b??d w db3. oto zdj?cie : http://imgur.com/pJbVKDC Mo?ecie mi pom?c?
Skrawek kodu suszarki:
if selected == 2 then
local vid = getElementData ( element , "id" )
if getElementData ( el , "car_id" ) then
exports [ "SystemPojazdow" ]: onSaveVehicle ( el )
local query = exports [ "pojazdy.db" ]: dbSet ( "UPDATE przechowalnia SET parking=1 WHERE id=?" , getElementData ( element , "..id.." ))
if query then
destroyElement ( el )
outputChatBox ( "* Pomy?lnie oddano pojazd na parking." , source )
end
else
outputChatBox ( "Ten pojazd nie jest prywatny." , source , 255 , 0 , 0 )
end
end
server przechowywalni
--[[
Code by Riot
]]
-- SQL LITE
handler = dbConnect ( "sqlite" , "przechowywalnia.db" )
dbExec ( handler , "CREATE TABLE IF NOT EXISTS `przechowywalnia` (`id` INTEGER, `model` INTEGER, `wlasciciel` INTEGER, `paliwo` FLOAT, `przebieg` FLOAT)" )
dbExec ( handler , "CREATE TABLE IF NOT EXISTS `puszkodzenia` (`id` INTEGER, `hp` INTEGER, `p0` INTEGER, `p1` INTEGER, `p2` INTEGER, `p3` INTEGER, `p4` INTEGER, `p5` INTEGER, `p6` INTEGER)" )
function onStartPrzechowywalnia ()
-- marker
local maly = createMarker ( - 100.38 , 1051.10 , 19.87 - 0.9 , "cylinder" , 1.4 , 36 , 255 , 0 , 85 )
addEventHandler ( "onMarkerHit" , maly , onPrzechowywalniaHit )
local przecho = createBlip (- 96.87 , 1040.83 , 19.87 , 35 )
duzy = createMarker (- 96.87 , 1040.83 , 19.87 - 0.9 , "cylinder" , 8 , 0 , 133 , 99 , 80 )
end
addEventHandler ( "onResourceStart" , getResourceRootElement ( getThisResource ()), onStartPrzechowywalnia )
function onPrzechowywalniaHit ( hitElement )
if getElementType ( hitElement ) == "player" then
local acc = getPlayerAccount ( hitElement )
if acc then
local veh = getPedOccupiedVehicle ( hitElement )
if not veh then
local login = getAccountName ( acc )
local query = dbQuery ( handler , "SELECT * FROM przechowywalnia WHERE wlasciciel='" .. login .. "'" )
local result , rows = dbPoll ( query , - 1 )
triggerClientEvent ( hitElement , "showPrzechowywalniaGUI" , root , result or {})
end
end
end
end
addEvent ( "onPrzywrocPojazdZPrzechowywalni" , true )
addEventHandler ( "onPrzywrocPojazdZPrzechowywalni" , getRootElement (),
function( id )
local query = dbQuery ( handler , "SELECT * FROM przechowywalnia WHERE id='" .. id .. "'" )
local result , rows = dbPoll ( query , - 1 )
if #result > 0 then
dbExec ( handler , "DELETE FROM przechowywalnia WHERE id='" .. id .. "'" )
-- tworze pojazd
local x , y , z = getElementPosition ( duzy )
local zrob = exports . SystemPojazdow : stworzPojazd ( id , x , y , z + 2 )
if zrob then
setVehicleDamage ( zrob )
warpPedIntoVehicle ( source , zrob )
else
outputChatBox ( "#919191[#CC0000ERROR#919191]Podane auto #CC0000nie istnieje#919191." , source , 255 , 255 , 255 , true )
end
dbExec ( handler , "DELETE FROM puszkodzenia WHERE id='" .. id .. "'" )
else
outputChatBox ( "#919191[#CC0000ERROR#919191]Podane auto #CC0000nie istnieje #919191ju? w przechowywalni." , source , 255 , 255 , 255 , true )
end
end )
function czyPojazdJestWPrzechowywalni ( id )
local query = dbQuery ( handler , "SELECT * FROM przechowywalnia WHERE id='" .. id .. "'" )
local result , rows = dbPoll ( query , - 1 )
if #result > 0 then
return true
else
return false
end
end
-- ##
timery = {}
function onPrzechoVehExit ( player , seat )
if seat == 0 then
local id = getElementData ( source , "car_id" )
if id then
if isElementWithinMarker ( source , duzy ) then
timery [ id ] = setTimer ( oddajPojazdDoPrzechowywalni , 50 , 1 , source , player , id , true )
end
end
end
end
addEventHandler ( "onVehicleExit" , getRootElement (), onPrzechoVehExit )
function oddajPojazdDoPrzechowywalni ( veh , player , id , bool )
if isElement ( veh ) then
local acc = getPlayerAccount ( player )
if acc then
local wlasciciel = getElementData ( veh , "car_owner" )
local model = getElementModel ( veh )
local paliwo = getElementData ( veh , "pojazdy_paliwo" ) or 0
local przebieg = getElementData ( veh , "pojazdy_przebieg" ) or 0
dbExec ( handler , "INSERT INTO przechowywalnia VALUES('" .. id .. "', '" .. model .. "', '" .. wlasciciel .. "', '" .. paliwo .. "', '" .. przebieg .. "')" )
--<< zniszczenia
local hp , p0 , p1 , p2 , p3 , p4 , p5 , p6 = getVehicleDamage ( veh )
dbExec ( handler , "INSERT INTO puszkodzenia VALUES('" .. id .. "', '" .. hp .. "', '" .. p0 .. "', '" .. p1 .. "', '" .. p2 .. "', '" .. p3 .. "', '" .. p4 .. "', '" .. p5 .. "', '" .. p6 .. "')" )
--
if isElement ( player ) then
if bool then
outputChatBox ( "#919191Tw?j pojazd #FF9D00" .. getVehicleName ( veh ).. " #919191zosta? umieszczony w przechowywalni." , player , 255 , 255 , 255 , true )
else
outputChatBox ( "#919191Odda?e? pojazd #FF9D00" .. getVehicleName ( veh ).. " #919191do przechowywalni." , player , 255 , 255 , 255 , true )
end
end
destroyElement ( veh )
end
end
end
function komendaDlaAdmina ( player )
local acc = getPlayerAccount ( player )
if acc then
local login = getAccountName ( acc )
if isObjectInACLGroup ( "user." .. login , aclGetGroup ( "Admin" )) then
local veh = getPedOccupiedVehicle ( player )
if veh then
local id = getElementData ( veh , "car_id" )
if id then
oddajPojazdDoPrzechowywalni ( veh , player , id )
end
end
end
end
end
addCommandHandler ( "oddajauto" , komendaDlaAdmina )
function komendaDlaAdmina2 ( player )
local acc = getPlayerAccount ( player )
if acc then
local login = getAccountName ( acc )
if isObjectInACLGroup ( "user." .. login , aclGetGroup ( "Supporter" )) then
local veh = getPedOccupiedVehicle ( player )
if veh then
local id = getElementData ( veh , "car_id" )
if id then
oddajPojazdDoPrzechowywalni ( veh , player , id )
end
end
end
end
end
addCommandHandler ( "oddajauto" , komendaDlaAdmina2 )
function onPrzechoVehEnter ( player , seat )
if seat == 0 then
local id = getElementData ( source , "car_id" )
if id then
if isTimer ( timery [ id ]) then
killTimer ( timery [ id ])
end
end
end
end
addEventHandler ( "onVehicleEnter" , getRootElement (), onPrzechoVehEnter )
function komendaDlaAdmina3 ( player )
local acc = getPlayerAccount ( player )
if acc then
local login = getAccountName ( acc )
if isObjectInACLGroup ( "user." .. login , aclGetGroup ( "Admin2" )) then
local veh = getPedOccupiedVehicle ( player )
if veh then
local id = getElementData ( veh , "car_id" )
if id then
oddajPojazdDoPrzechowywalni ( veh , player , id )
end
end
end
end
end
addCommandHandler ( "oddajauto" , komendaDlaAdmina3 )
--<< Zapis i ustawianie uszkodzen w pojezdzie
function getVehicleDamage ( veh )
local id = getElementData ( veh , "car_id" )
if id then
save = {}
local hp = getElementHealth ( veh )
for i = 0 , 6 do
local panel = getVehiclePanelState ( veh , i )
save [ i ] = panel
end
local p0 , p1 , p2 , p3 , p4 , p5 , p6 = save [ 0 ], save [ 1 ], save [ 2 ], save [ 3 ], save [ 4 ], save [ 5 ], save [ 6 ]
save = nil
return hp , p0 , p1 , p2 , p3 , p4 , p5 , p6
end
end
function setVehicleDamage ( veh )
local id = getElementData ( veh , "car_id" )
if id then
local query = dbQuery ( handler , "SELECT * FROM puszkodzenia WHERE id='" .. id .. "'" )
local result , rows = dbPoll ( query , - 1 )
if #result > 0 then
local hp , p0 , p1 , p2 , p3 , p4 , p5 , p6 = result [ 1 ]. hp , result [ 1 ]. p0 , result [ 1 ]. p1 , result [ 1 ]. p2 , result [ 1 ]. p3 , result [ 1 ]. p4 , result [ 1 ]. p5 , result [ 1 ]. p6
save = {}
save = { p0 , p1 , p2 , p3 , p4 , p5 , p6 }
for i = 0 , 6 do
setVehiclePanelState ( veh , i , save [ i + 1 ])
end
setElementHealth ( veh , hp )
save = nil
end
end
end
Wysłany: 2016-07-08, 12:39
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Musisz mie? uruchomiony zas?b 'SystemPojazdow' tak jak pisze w b??dzie.
W skrypcie exportujesz z niego funkcj?.. A skrypt jej nie mo?e wyexportowa? bo jej nie znajduje.
exports [ "SystemPojazdow" ]: onSaveVehicle ( el )
Wgraj/uruchom skrypt SystemPojazdow i powinno lata?.
Wysłany: 2016-07-08, 13:34
mkmm4
Wiek: 40 Na forum: 4738 dni Posty: 3
marcin778 , W?a?nie Systempojazd?w jest uruchomiony jest to ca?y folder z systemem pojazd?w a w nim jest plik pojazdy.db i reszta skrypt?w. Nie dzia?a
Wysłany: 2016-07-08, 13:46
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4149 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Masz wgrany folder i w nim meta.xml pojazdy.db itd ? Czy masz folder SystemPojazdow i podfolder jaki?. Sprawd? jeszcze czy nazwa folderu jest identyczna tej w exportowanej funkcji. Folder musi si? dok?adnie tak samo nazywa?.
Wysłany: 2016-07-08, 14:21
iNev.
Wiek: 24 Na forum: 3950 dni Posty: 94
Nick w MP: iNev
Piwa : 953
local query = exports [ "pojazdy.db" ]: dbSet ( "UPDATE przechowalnia SET parking=1 WHERE id=?" , getElementData ( element , "..id.." ))
Zamiast "pojazdy.db", musisz tam wpisa? nazw? zasobu, w kt?rym masz po??czenie SQL i wszystkie funkcje.
Folder SystemPojazd?w musi mie? du?e znaki w tych miejscach, gdzie uwzgl?dni?e? je w kodzie. Czyli 'S' i 'P' maj? by? z du?ej.
Sprawd? w mecie systemu pojazd?w, czy masz exporta, powinien on wygl?da? tak: "<export function="onSaveVehicle" type="server"/>", je?eli nie, dodaj to do mety.
Wysłany: 2016-07-08, 14:34
mkmm4
Wiek: 40 Na forum: 4738 dni Posty: 3
Tagi: suszarka :: przecho
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: