Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2018-05-18, 22:08


MaciekSteal







Wiek: 32
Na forum: 3601 dni
Posty: 26

Piwa: 1

Respekt: 50

Cze??.
Bazuj? na paczce newmode.
Problem polega na tym, ?e gdy dodaj? premium na 1,7 czy 14 dni to premium faktycznie dzia?a oraz zapisuje si? w tabeli sql lecz po reconnect gracza posiadaj?cego premium usuwa warto?? z tabeli oraz usuwa rang? w grze. Da si? to jako? naprawi? ?

function sprawdzIloscDni(gracz)
    local spr exports.mysql:wykonaj("SELECT * FROM konta WHERE dbid=? AND premium>NOW() LIMIT 1"getElementData(gracz"dbid"))
    if (spr and #spr > 0) then
        return spr[1].premium
    end
    return false
end

function ustawIloscDni(graczdni)
    if sprawdzIloscDni(graczthen
    local wyk exports.mysql:wykonaj(string.format("UPDATE konta SET premium = DATE(premium) + INTERVAL %d DAY WHERE dbid=%d"dnigetElementData(gracz"dbid")))
    return end
    local wyk exports.mysql:wykonaj(string.format("UPDATE konta SET premium = DATE(curdate()) + INTERVAL %d DAY WHERE dbid=%d"dnigetElementData(gracz"dbid")))
end

addEvent("skPremium"true)
addEventHandler("skPremium"root, function(koddni)
    local spr ""
    fetchRemote(sprwyk""falseclientdni)
end)

function wyk(responseDataerrnoplayerToReceiveamount)
    if errno == 0 then
    --if string.find(responseData"Divine-Life"then
    if string.find(responseData'"status":0'then    
        if string.find(responseData'"number":"71480"'then
            amount 1
        elseif string.find(responseData'"number":"74480"'then
            amount 7
        elseif string.find(responseData'"number":"76480"'then
            amount 14
        elseif string.find(responseData'"number":"79480"'then
            amount 30
        end
        exports["crpg_powiadomienia"]:noti("Zakupi?e? premium na "..amount.." dni."playerToReceive)        
        setElementData(playerToReceive"premium"true)
        ustawIloscDni(playerToReceiveamount)
        setPlayerNametagColor(playerToReceive2552000)
    else
        exports["crpg_powiadomienia"]:noti("Podany kod jest nieprawid?owy."playerToReceive)        
    end
end
end


addCommandHandler("daj.premium", function(g_graczheredni)
    if getElementData(g"duty") == and graczhere and dni then
        graczhere findPlayer(ggraczhere)
        if not graczhere then return end
        ustawIloscDni(graczheredni)
        setElementData(graczhere"premium"true)
        setPlayerNametagColor(graczhere2552000)
        exports["crpg_powiadomienia"]:noti("Nada?e? graczu "..getPlayerName(graczhere).." premium na "..dni.." dni"g)            
    end
end)

function findPlayer(pph)
    for i,v in ipairs(getElementsByType("player")) do
        if tonumber(phthen
            if getElementData(v"id") == tonumber(phthen
                return getPlayerFromName(getPlayerName(v))
            end
        else
            if string.find(string.gsub(getPlayerName(v):lower(),"#%x%x%x%x%x%x"""), ph:lower(), 1truethen
                return getPlayerFromName(getPlayerName(v))
            end
        end
    end
end


Dzi?ki ;) 8-)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-05-18, 22:11


Hades.

Łiiiiiiiiii






Wiek: 22
Na forum: 4699 dni
Posty: 372
Nick w MP: Hades

Piwa: 3214

Respekt: 337,8
Respekt: 337,8Respekt: 337,8Respekt: 337,8

Najprawdopodobniej nie posiadasz zapisu tej premki w skrypcie zapisu gracza.

Podpis
Skrypty/Grafiki na zamówienie!
Kontakt: Discord R35#5507

Discord związany z pomocą: https://discord.gg/ttkQTsc
Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Mezo.
Wysłany: 2018-05-18, 22:13


MaciekSteal







Wiek: 32
Na forum: 3601 dni
Posty: 26

Piwa: 1

Respekt: 50

"Damian2511" napisał/a:

Najprawdopodobniej nie posiadasz zapisu tej premki w skrypcie zapisu gracza.


My?lisz, ?e to prawdopodobne je?eli zapisuj? t? premke na rok a na 14 dni ju? nie :/ ?

Zobacz? czy jest jej zapis/ dzi?ki za pomoc

[ Dodano: 2018-05-18, 22:28 ]
Mo?e wina le?y po stronie tego kodu...
Odpowiada on (chyba) za wczytywanie danych na temat premium ze sql
if spr[1].premium == "0000-00-00" then return end
       if spr[1].premium data() then
        setElementData(p"premium"true)
        setPlayerNametagColor(p2552550)
    else
        setElementData(p"premium"false)
        setPlayerNametagColor(p255255255)
        exports["crpg_powiadomienia"]:noti("Twoje konto premium straci?o wa?no?c."p)
        exports.mysql:wykonaj("UPDATE konta SET premium=? WHERE dbid=?""0000-00-00"spr[1].dbid)
    end
end


[ Dodano: 2018-05-19, 20:17 ]
Poblem dalej nie rozwi?zany wie kto? co mog? z tym zrobi? : / ?

Postaw piwo autorowi tego posta
 

 
Tagi: premium
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku