Wysłany: 2021-08-20, 16:53
DetrozE
Wiek: 35 Na forum: 3533 dni Posty: 6
Nick w MP: DetrozE
Piwa : 3
Witam, na paczce PYS 3.0 nie zapisuj? si? statystyki gdy wyjdziemy z serwera podczas wybierania miejsca spawnu (ale w innych przypadkach si? zapisuj?). A wi?c przychodz? z zapytaniem co nale?y zrobi?, aby te statystyki zapisywa?y si? zawsze.
Więcej szczegółów
Wystawiono 1 piw(a):lisekpl420
Wysłany: 2021-08-20, 20:22
killercycDDS
Migacz
Wiek: 25 Na forum: 4512 dni Posty: 629
Nick w MP: killer_cyc[DDS]
Piwa : 1659
Nikt jasnowidzem nie jest jakie masz b??dy w konsoli przy wychodzeniu, poka? kod s_saveplayers w corze. Kolejna sprawa edytowa?e? co??
Więcej szczegółów
Wystawiono 1 piw(a):DetrozE
Wysłany: 2021-08-22, 15:09
DetrozE
Wiek: 35 Na forum: 3533 dni Posty: 6
Nick w MP: DetrozE
Piwa : 3
Nie ma ?adnych b??d?w przy wchodzeniu czy wychodzeniu z serwera, statystyki zapisuj? si? normalnie przy zwyk?ym wychodzeniu z serwera, a tylko gdy si? zalogujemy, ale nie wybierzemy jeszcze miejsca spawnu i wtedy zrobimy reconnecta czy wyjdziemy a potem wejdziemy, statystyki si? usuwaj?. Czyli tak jakby po zalogowaniu serwer jeszcze nie wczyta? naszych statystyk(a dopiero przy spawnie), a po wyj?ciu zapisa? je czyli ustawi? w bazie wszystko na 0. Zmienia? nic nie zmienia?em, wszystko to oryginalny PYS. Czyta?em, ?e podobno by? taki b??d w tej paczce, ale nigdzie nie znalaz?em jak go rozwi?za?.
A oto kod s_saveplayers.lua :
function getPremium ( plr , premium )
if premium then
local result = exports [ "pystories-db" ]: dbGet ( "SELECT * FROM pystories_users WHERE id=? AND premium=?" , getElementData ( plr , "player:sid" ), premium )
if result and #result > 0 then
return true
else
return false
end
else
local result = exports [ "pystories-db" ]: dbGet ( "SELECT * FROM pystories_users WHERE id=?" , getElementData ( plr , "player:sid" ))
if result and #result > 0 then
return true
else
return false
end
end
end
function loadPlayerData ( plr )
local result = exports [ "pystories-db" ]: dbGet ( "SELECT * FROM pystories_users WHERE id=?" , getElementData ( plr , "player:sid" ))
if result and #result > 0 then
local v = result [ 1 ]
setPlayerMoney ( plr , v . money )
setElementModel ( plr , v . skin )
setElementData ( plr , "status" , "Aktywny" )
setElementData ( plr , "player:logged" , true )
setElementData ( plr , "player:mandate" , v . mandate )
setElementData ( plr , "player:license:pjA" , v . pjA )
setElementData ( plr , "player:license:pjB" , v . pjB )
setElementData ( plr , "player:license:pjC" , v . pjC )
setElementData ( plr , "player:license:pjL" , v . pjL )
setElementData ( plr , "player:srp" , v . srp )
setElementData ( plr , "player:workinjob" , v . worker )
setElementData ( plr , "player:registerdate" , v . registered )
setElementData ( plr , "player:hours" , v . hours )
setElementData ( plr , "player:skin" , v . skin )
local queryA = string . format ( "SELECT * FROM pystories_users WHERE id=%d AND premiumdate>NOW() LIMIT 1" , getElementData ( plr , "player:sid" ))
local resultA = exports [ "DB2" ]: pobierzWyniki ( queryA )
if ( resultA ) then
setElementData ( plr , "player:premium" , true )
setElementData ( plr , "player:premiumdate" , v . premiumdate )
setPlayerName ( plr , "#C0FF00" .. getPlayerName ( plr ))
setElementData ( plr , "premium:level" , 1 )
else
setElementData ( plr , "player:premium" , false )
end
local org = exports [ "pystories-db" ]: dbGet ( "SELECT * FROM ms_organizacje WHERE code=? AND uid=? LIMIT 1" , getElementData ( plr , "player:organization" ), getElementData ( plr , "player:sid" )) -- pobieramy tylko JEDEN rekord
local name = getPlayerName ( plr ): gsub ( "#%x%x%x%x%x%x" , "" )
if org and #org > 0 then
setElementData ( plr , "player:organization" , org [ 1 ]. code )
outputChatBox ( "* Jeste? w organizacji, kt?ra nosi nazwe: " .. org [ 1 ]. code .. "" , plr )
exports [ 'pystories-db' ]: dbSet ( "UPDATE ms_organizacje SET actived=curdate() WHERE uid=?" , getElementData ( plr , "player:sid" ))
end
return true
end
return false
end
addEvent ( "load:player" , true )
addEventHandler ( "load:player" , root , function( player )
if isElement ( player ) and player then
if getElementType ( player ) ~= "player" then return end
loadPlayerData ( player )
outputDebugString ( "pystories_users> Za?adowano statystyki gracza: " .. getPlayerName ( player ))
end
end )
function savePlayerData ( plr )
local sid = getElementData ( plr , "player:sid" )
if not sid then return end
local money = getPlayerMoney ( plr )
local mandate = getElementData ( plr , "player:mandate" )
local licensea = getElementData ( plr , "player:license:pjA" )
local licenseb = getElementData ( plr , "player:license:pjB" )
local licensec = getElementData ( plr , "player:license:pjC" )
local licensel = getElementData ( plr , "player:license:pjL" )
local srp = getElementData ( plr , "player:srp" )
local worker = getElementData ( plr , "player:workinjob" )
local hours = tonumber ( getElementData ( plr , "player:hours" )) or 0
local query = exports [ "pystories-db" ]: dbSet ( "UPDATE pystories_users SET money=?, srp=?, mandate=?, pjA=?, pjB=?, pjC=?, pjL=?, worker=?, hours=? WHERE id=?" ,
money , srp , mandate , licensea , licenseb , licensec , licensel , worker , hours , sid )
end
addEvent ( "save:player" , true )
addEventHandler ( "save:player" , root , function( player )
if isElement ( player ) and player then
if getElementType ( player ) ~= "player" then return end
savePlayerData ( player )
outputDebugString ( "pystories_users> Zapisano statystyki gracza: " .. getPlayerName ( player ))
end
end )
addEventHandler ( "onPlayerQuit" , root , function() savePlayerData ( source ) end )
Więcej szczegółów
Wystawiono 1 piw(a):lisekpl420
Wysłany: 2021-08-22, 16:19
_jvneczek
Wiek: 22 Na forum: 4325 dni Posty: 1513
Nick w MP: _jvneczek
Piwa : 3949
to wczytuj te statystyki przed wyborem spawnu, po prostu po zalogowaniu?
Więcej szczegółów
Wystawiono 2 piw(a):lisekpl420 , DetrozE
Wysłany: 2021-08-22, 16:31
DetrozE
Wiek: 35 Na forum: 3533 dni Posty: 6
Nick w MP: DetrozE
Piwa : 3
W?a?nie tak zrobi?em i wszystko ?miga, dzi?ki.
Tagi: usuwanie :: statystyk :: pys :: 3.0
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: