Wysłany: 2017-10-04, 17:33
Avenged
Młodszy Szkrypter
Wiek: 23 Na forum: 3510 dni Posty: 654
Nick w MP: Avenged
Piwa : 1570
Mam taki kod:
function sprawdz_frakcje ( plr )
local frakcja = getElementData ( plr , "player:faction" )
local result = exports [ "ogrpg-db" ]: dbGet ( "SELECT 1 FROM frakcja WHERE code=? AND id=? LIMIT 1;" , frakcja )
if result [ 1 ] then
setElementData ( plr , "player:faction" , result [ 1 ])
return true
else
return false
end
end
addEventHandler ( "onPlayerJoin" , getRootElement (), sprawdz_frakcje ) i chc? ?eby po wej?ciu na serwer pobiera?o z tabeli w jakiej frakcji jest gracz i nadawa?o mu elementdate. Np jak w bazie code=PR to ma nadawa? setElementData(plr, "player:facion", 'PR') itd.
[ Dodano : 2017-10-04, 17:34 ]
Je?li code=Policja to setElementData(plr, "player:facion", 'Policja') etc.
Podpis
LUA, JS, PHP
Zapraszam do skorzystania z moich usług: Klik
Wysłany: 2017-10-04, 17:46
Eitho
Wiek: 24 Na forum: 3489 dni Posty: 330
Nick w MP: Eitho
Piwa : 746
local fa = exports [ "ogrpg-db" ]: dbGet ( "SELECT * FROM ogrpg_factions WHERE uid=?" , getElementData ( plr , "player:uid" ))
if fa and #fa > 0 then
setElementData ( plr , "trusted:faction" , fa [ 1 ]. code )
end
Zmie? sobie elementdate i export
No i musisz to podpi?? gdzie? do wczytywania gracza (je?li korzystasz z ogrpg, to na przyk?ad ogrpg-core/saveplayers.lua), bo teraz to serwer raczej nie b?dzie zna? uid gracza przy samym wej?ciu
Czemu ja nie zmieni?em? Bo teoretycznie w dziale Lua nie powinno si? podawa? gotowego kodu. ;D
Wysłany: 2017-10-04, 18:55
Avenged
Młodszy Szkrypter
Wiek: 23 Na forum: 3510 dni Posty: 654
Nick w MP: Avenged
Piwa : 1570
dawid2632 , czyli w saveplayers to samo doda? co ty da?e??
Podpis
LUA, JS, PHP
Zapraszam do skorzystania z moich usług: Klik
Wysłany: 2017-10-04, 19:10
Eitho
Wiek: 24 Na forum: 3489 dni Posty: 330
Nick w MP: Eitho
Piwa : 746
No my?l?, ?e tam b?dzie najlepiej (na samym ko?cu funkcji loadPlayerData daj).
Więcej szczegółów
Wystawiono 1 piw(a):Avenged
Wysłany: 2017-10-05, 18:49
Avenged
Młodszy Szkrypter
Wiek: 23 Na forum: 3510 dni Posty: 654
Nick w MP: Avenged
Piwa : 1570
dawid2632 , nie dzia?a to twoje
Podpis
LUA, JS, PHP
Zapraszam do skorzystania z moich usług: Klik
Wysłany: 2017-10-05, 19:07
Eitho
Wiek: 24 Na forum: 3489 dni Posty: 330
Nick w MP: Eitho
Piwa : 746
;-;
local fa = exports [ "ogrpg-db" ]: dbGet ( "SELECT * FROM frakcja WHERE uid=?" , getElementData ( plr , "player:uid" ))
if fa and #fa > 0 then
setElementData ( plr , "player:faction" , fa [ 1 ]. code )
end
Zmieni?em ci zapytanie do bazy i elementdat?.
Musi dzia?a?, poniewa? mia?em to na swoim serwerze i na luzie dzia?a?o.
Wysłany: 2017-10-05, 19:42
Avenged
Młodszy Szkrypter
Wiek: 23 Na forum: 3510 dni Posty: 654
Nick w MP: Avenged
Piwa : 1570
mam tak: local frakcja = exports [ "ogrpg-db" ]: dbGet ( "SELECT * FROM frakcja WHERE code=? AND uid=? LIMIT 1" , getElementData ( plr , "player:uid" ))
if ( frakcja ) then
setElementData ( plr , "player:facion" , frakcja [ 1 ]. code )
else
removeElementData ( plr , "player:faction" )
end A jak kto? nie jest w tej tabeli to jak zwr?ci? "nic" ?
Podpis
LUA, JS, PHP
Zapraszam do skorzystania z moich usług: Klik
Wysłany: 2017-10-05, 21:59
Eitho
Wiek: 24 Na forum: 3489 dni Posty: 330
Nick w MP: Eitho
Piwa : 746
Na pocz?tek usu? "WHERE code=?" z exportu, bo kodu frakcji to ty szukasz w bazie danych przecie?.
Zmie? te? (frakcja) na (#frakcja>0).
A co do samego pytania, to szczerze m?wi?c nie wiem, ale spr?bowa?bym tak:
local frakcja = exports [ "ogrpg-db" ]: dbGet ( "SELECT * FROM frakcja WHERE uid=? LIMIT 1" , getElementData ( plr , "player:uid" ))
if ( frakcja and #frakcja>0) then
setElementData ( plr , "player:facion" , frakcja [ 1 ]. code )
else
removeElementData ( plr , "player:faction" )
return nil
end
Podkre?l?, ?e co do zwracania niczego, nie jestem pewny.
Albo return false, nie wiem
Tagi: elementdata :: export
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: