Wysłany: 2014-11-02, 19:55
Dixers
No-Life
Wiek: 26 Na forum: 4312 dni Posty: 549
Nick w MP: Dixers
Piwa : 412
Witam serdecznie. Mam taki sobie system pojazd?w, oczywi?cie s-side. No i problem polega na tym, ?e nie dzia?a /save, oraz nie nie pojawia si? pickup, kt?ry sprawia?, ?e ukazywa?o si? gui. Podaje ca?y kod, bo przeszuka?em ca?y kod i nie wiem ju? co gdzie i jak jest ?le....Prosz? was o pomoc. Daje oraz reputacje
cars ={}
buycarpickup ={}
maxcars = 0
addEventHandler ( "onResourceStart" , getResourceRootElement (),
function ()
local root = xmlLoadFile ( "cars.xml" )
local houseroot = xmlFindChild ( root , "cars" , 0 )
if ( houseroot ) then
for i , v in ipairs ( xmlNodeGetChildren ( houseroot )) do
local carmodel = xmlNodeGetAttribute ( v , "model" )
local x = xmlNodeGetAttribute ( v , "x" )
local y = xmlNodeGetAttribute ( v , "y" )
local z = xmlNodeGetAttribute ( v , "z" )
local color1 = xmlNodeGetAttribute ( v , "color1" )
local color2 = xmlNodeGetAttribute ( v , "color2" )
local owner = xmlNodeGetAttribute ( v , "owner" )
local price = xmlNodeGetAttribute ( v , "price" )
local lock = xmlNodeGetAttribute ( v , "lock" )
local a = xmlNodeGetAttribute ( v , "a" )
cars [ i ] = createVehicle ( tonumber ( carmodel ), tonumber ( x ), tonumber ( y ), tonumber ( z ), 0 , 0 , tonumber ( a ) )
setElementInterior ( cars [ i ], 0 )
setElementData ( cars [ i ], "xpos" , tonumber ( x ))
setElementData ( cars [ i ], "ypos" , tonumber ( y ))
setElementData ( cars [ i ], "zpos" , tonumber ( z ))
setElementData ( cars [ i ], "angle" , tonumber ( a ))
setElementData ( cars [ i ], "owner" , owner )
setElementData ( cars [ i ], "price" , tonumber ( price ))
setElementData ( cars [ i ], "lock" , tonumber ( lock ))
setElementData ( cars [ i ], "num" , i )
setVehicleColor ( cars [ i ], tonumber ( color1 ), tonumber ( color2 ), 0 , 0 )
if( lock == 1 ) then
setVehicleLocked ( car , true )
end
if getElementData ( cars [ i ], "owner" ) == "Nobody" then
buycarpickup [ i ] = createPickup ( x , y , z , 3 , 1274 )
attachElements ( buycarpickup [ i ], cars [ i ], 0 , 0 , 1.9 )
end
maxcars = maxcars + 1
end
outputDebugString ( "Pojazdy zosta?y wczytane!" )
end
end
)
function saveCars ()
local root = xmlLoadFile ( "cars.xml" )
local houseroot = xmlFindChild ( root , "cars" , 0 )
if ( houseroot ) then
for i , v in ipairs ( xmlNodeGetChildren ( houseroot )) do
local color1 , color2 , color3 , color4 = getVehicleColor ( cars [ i ] )
xmlNodeSetAttribute ( v , "model" , getElementModel ( cars [ i ]) )
xmlNodeSetAttribute ( v , "x" , getElementData ( cars [ i ], "xpos" ) )
xmlNodeSetAttribute ( v , "y" , getElementData ( cars [ i ], "ypos" ) )
xmlNodeSetAttribute ( v , "z" , getElementData ( cars [ i ], "zpos" ) )
xmlNodeSetAttribute ( v , "a" , getElementData ( cars [ i ], "angle" ) )
xmlNodeSetAttribute ( v , "color1" , color1 )
xmlNodeSetAttribute ( v , "color2" , color2 )
xmlNodeSetAttribute ( v , "owner" , getElementData ( cars [ i ], "owner" ) )
xmlNodeSetAttribute ( v , "price" , getElementData ( cars [ i ], "price" ) )
xmlNodeSetAttribute ( v , "lock" , getElementData ( cars [ i ], "lock" ) )
end
xmlSaveFile ( root )
end
end
function adminCreateVehicle ( source , cmd )
local accName = getAccountName ( getPlayerAccount ( source ) )
if isObjectInACLGroup ( "user." .. accName , aclGetGroup ( "RCON" ) ) then
local root = xmlLoadFile ( "cars.xml" )
local houseroot = xmlFindChild ( root , "cars" , 0 )
local createdcar = xmlCreateChild ( houseroot , "vehicle" )
local carmodel = xmlNodeSetAttribute ( createdcar , "model" , "451" )
local x , y , z = getElementPosition ( source )
local xa , ya , a = getElementRotation ( source )
xmlNodeSetAttribute ( createdcar , "x" , x )
xmlNodeSetAttribute ( createdcar , "y" , y )
xmlNodeSetAttribute ( createdcar , "z" , z )
xmlNodeSetAttribute ( createdcar , "a" , a )
xmlNodeSetAttribute ( createdcar , "color1" , "0" )
xmlNodeSetAttribute ( createdcar , "color2" , "0" )
xmlNodeSetAttribute ( createdcar , "owner" , "Nobody" )
xmlNodeSetAttribute ( createdcar , "price" , "0" )
xmlNodeSetAttribute ( createdcar , "lock" , "0" )
cars [ maxcars + 1 ] = createVehicle ( 451 , x , y , z , 0 , 0 , a )
setElementData ( cars [ maxcars + 1 ], "xpos" , x )
setElementData ( cars [ maxcars + 1 ], "ypos" , y )
setElementData ( cars [ maxcars + 1 ], "zpos" , z )
setElementData ( cars [ maxcars + 1 ], "angle" , a )
setElementData ( cars [ maxcars + 1 ], "owner" , "Nobody" )
setElementData ( cars [ maxcars + 1 ], "price" , 0 )
setElementData ( cars [ maxcars + 1 ], "lock" , 0 )
xmlSaveFile ( root )
maxcars = maxcars + 1
else
outputChatBox ( "Nie masz praw do tej komendy." , source , 255 , 255 , 127 )
end
end
addCommandHandler ( "create" , adminCreateVehicle )
addCommandHandler ( "save" , saveCars )
function getCar ( car )
return cars [ car ]
end
function enterVehicle ( source , seat , jacked )
local playercar = getPedOccupiedVehicle ( source )
if( seat == 0 ) then
if ( getElementData ( playercar , "owner" )) then
if( getElementData ( playercar , "owner" ) ~= "Nobody" ) then
if( getElementData ( playercar , "owner" ) == getPlayerName ( source )) then
outputChatBox ( "Witaj w swoim samochodzie!" , source , 255 , 255 , 127 )
else
outputChatBox ( "Ten pojazd nalezy do gracza: " .. getElementData ( playercar , "owner" ).. "" , source , 255 , 255 , 127 )
end
else
local price = getElementData ( playercar , "price" )
triggerClientEvent ( source , "showBuyCar" , source , price )
toggleAllControls ( source , false , true , false )
return true
end
end
end
end
addEventHandler ( "onVehicleEnter" , getRootElement (), enterVehicle )
function AcceptToBuyCar ( )
local playercar = getPedOccupiedVehicle ( source )
if( getElementData ( playercar , "owner" ) == "Nobody" ) then
if( getPlayerMoney ( source ) > tonumber ( getElementData ( playercar , "price" ))) then
setElementData ( playercar , "owner" , getPlayerName ( source ))
takePlayerMoney ( source , tonumber ( getElementData ( playercar , "price" )))
toggleAllControls ( source , true )
outputChatBox ( "Kupiles pojazd!" , source , 243 , 149 , 72 )
destroyElement ( buycarpickup [ getElementData ( playercar , "num" )])
saveCars ()
else
outputChatBox ( "Nie masz tyle pieni?dzy." , source , 243 , 149 , 72 )
setControlState ( source , "enter_exit" , true )
end
end
end
addEvent ( "acceptBuyCar" , true )
addEventHandler ( "acceptBuyCar" , root , AcceptToBuyCar )
function playerCarLock ( source , cmd )
for i , v in ipairs ( cars ) do
if( getElementData ( cars [ i ], "owner" ) == getPlayerName ( source )) then
setVehicleLocked ( cars [ i ], true )
setElementData ( cars [ i ], "lock" , 1 )
outputChatBox ( "Pojazd zamniety" , source , 243 , 149 , 72 )
saveCars ()
end
end
end
addCommandHandler ( "zamknij" , playerCarLock )
function playerCarUnLock ( source , cmd )
for i , v in ipairs ( cars ) do
if( getElementData ( cars [ i ], "owner" ) == getPlayerName ( source )) then
setVehicleLocked ( cars [ i ], false )
setElementData ( cars [ i ], "lock" , 0 )
outputChatBox ( "Otworzono pojazd" , source , 243 , 149 , 72 )
saveCars ()
end
end
end
addCommandHandler ( "otworz" , playerCarUnLock )
Wysłany: 2014-11-03, 19:23
luki123luki123
Place Game
Wiek: 28 Na forum: 5275 dni Posty: 1948
Nick w MP: LuKiO
Piwa : 6101
Dixers , jest tu kilka b??d?w jak widz? w funkcji saveCars
function saveCars ()
local root = xmlLoadFile ( "cars.xml" )
if ( root ) then
local houseroot = xmlFindChild ( root , "cars" , 0 )
local color1 , color2 , color3 , color4 = getVehicleColor ( cars [ i : 16 ] )
xmlNodeSetAttribute ( houseroot , "model" , getElementModel ( cars [ i : 17 ]) )
xmlNodeSetAttribute ( houseroot , "x" , getElementData ( cars [ i : 18 ], "xpos" ) )
xmlNodeSetAttribute ( houseroot , "y" , getElementData ( cars [ i : 19 ], "ypos" ) )
xmlNodeSetAttribute ( houseroot , "z" , getElementData ( cars [ i : 20 ], "zpos" ) )
xmlNodeSetAttribute ( houseroot , "a" , getElementData ( cars [ i : 21 ], "angle" ) )
xmlNodeSetAttribute ( houseroot , "color1" , color1 )
xmlNodeSetAttribute ( houseroot , "color2" , color2 )
xmlNodeSetAttribute ( houseroot , "owner" , getElementData ( cars [ i : 22 ], "owner" ) )
xmlNodeSetAttribute ( houseroot , "price" , getElementData ( cars [ i : 23 ], "price" ) )
xmlNodeSetAttribute ( houseroot , "lock" , getElementData ( cars [ i : 24 ], "lock" ) )
end
xmlSaveFile ( root )
end
end
Nie wiem do czego jest car[i] ale co tam sprawdzaj i m?w.
[ Dodano : 2014-11-03, 19:26 ]
Dixers , masz saveCars na mnie ?le po.1 u?ywasz z tabeli ?le nie mo?na tak u?ywa? tego nalepiej to pobierz wszytkie auta na serwerze sprawdz czy maja rejestracje je?eli tak to zapisuj pokoleji ale przed tym usuwaj wiersze w xml.
Wysłany: 2014-11-03, 21:09
Dixers
No-Life
Wiek: 26 Na forum: 4312 dni Posty: 549
Nick w MP: Dixers
Piwa : 412
Jejku, czyli masa pracy tak? A pom?g?by? mi z tym kodem? Ci?gle si? ucz? i nie znam wszystkich funkcji i nie kt?rych zastosowa? funkcji.
Tagi: system :: pojazdów.
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: