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

Wysłany: 2015-05-21, 13:46


Tomakan

Człowiek






Wiek: 26
Na forum: 4061 dni
Posty: 94
Nick w MP: Tomakan

Piwa: 5

Respekt: 50

Niestety, nigdy gdy tworz? skrypt z GUI nie zdarzy?a si? okazja bym czego? nie zwali?.
Podobnie jest teraz, w sumie nie wiem na czym polega b??d ale po klikni?ciu przycisku nic si? nie dzieje, ?adnego b??du w db.

c-side:
addEventHandler("onClientGUIClick",getRootElement(),
function (player)
    if (source == button1then
        
        money getPlayerMoney (source)
        if (money 3199then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.",225,255,255true)
        else
            triggerServerEvent ("buttontwo",localPlayer)
        end
        
    elseif (source == button2then
        
        money getPlayerMoney (source)
        if (money 79999then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.",225,255,255true)
        else
            triggerServerEvent ("buttonfree",localPlayer)
        end
        
    elseif (source == button3then
        
        money getPlayerMoney (source)
        if (money 49999then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.",225,255,255true)
        else
            triggerServerEvent ("buttonfour",localPlayer)
        end
        
    elseif (source == button4then
        guiSetVisible (window,false)
        showCursor (false)
    end
end)


s-side:
addEvent("buttonone"true)
addEventHandler("buttonone"root, 
function()
    local acc getPlayerAccount(source)
    local prawojazdy getAccountData(acc"prawojazdy")
    outputChatBox("cossiedzieje")
    setAccountData(acc"prawojazdy"1)
    
    if (prawojazdy==1then
        outputChatBox("#EBC700[Urz?d Miasta]#FFFFFF Posiadasz ju? prawo jazdy!"source255255255true)
    else
        outputChatBox("#EBC700[Urz?d Miasta]#FFFFFF W?a?nie wyrobi?e? sobie prawo jazdy!"source255255255true)
        setAccountData(acc"prawojazdy"1)
        takePlayerMoney(source3200)
    end
    
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-05-21, 15:15


Jurandovsky

Kurdebele






Wiek: 17
Na forum: 4838 dni
Posty: 915

Piwa: 2697

Respekt: 955,3
Respekt: 955,3Respekt: 955,3

Podstawowy blad...

w C-side uzyles onClientGUIClick , zamiast getRootElement() ustaw root, a zamiast function(player)
dajesz function(button) bo nie ma na wiki w argumentach playera.

W jaki ku?wa sposob, chcesz pobrac pieniadze buttona?!! getPlayerMoney(source) poczytaj czym jest 'zrodlo' danego eventu !


addEventHandler("onClientGUIClick",getRootElement(),
function (btn)
if btn == "left" then
    if (source == button1then
        
        money getPlayerMoney (localPlayer)
        if (money 3199then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttontwo",localPlayer)
        end
        
    elseif (source == button2then
        
        money getPlayerMoney (localPlayer)
        if (money 79999then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttonfree",localPlayer)
        end
        
    elseif (source == button3then
        
        money getPlayerMoney (localPlayer)
        if (money 49999then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttonfour",localPlayer)
        end
        
    elseif (source == button4then
        guiSetVisible (window,false)
        showCursor (false)
    end
end
end)


Nie daje 100% ze zadziala,a le powinno

Podpis
Jedyny kontakt ze mną to PW forum

Kod:


local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-05-21, 15:54


Tomakan

Człowiek






Wiek: 26
Na forum: 4061 dni
Posty: 94
Nick w MP: Tomakan

Piwa: 5

Respekt: 50

Nigdy nie dobiera?em si? do gui, dlatego robi? to na pierwszy odstrza?. Niczego nie sprawdzam, tylko wklepuje i testuj?.
Te funkcje czerpa?em z innego skryptu ale pewnie moje edycje go zepsu?y.

Og??em to nadal nie dzia?a, brak db.

A tak ps, przecie? root to zast?pnik getRootElement(), jedno i to samo :shock:

[ Dodano: 2015-05-21, 15:58 ]
Poka?? troch? wi?cej kodu:

S-Side:
function showGUI(hitPlayer)
triggerClientEvent (hitPlayer,"showGUI2",getRootElement(),hitPlayer)
end
addEventHandler ("onMarkerHit",marker,showGUI)

addEventHandler("onMarkerLeave",marker,
function (leavePlayer)
triggerClientEvent(leavePlayer,"hideGUI2",leavePlayer)
end)

addEvent("buttonone"true)
addEventHandler("buttonone"root, 
function()
    outputChatBox("Dzia?a"source255255255true)
end)

addEvent("buttontwo"true)
addEventHandler("buttontwo"root, 
function()
    outputChatBox("Dzia?a"source255255255true)
end)

addEvent("buttonfree"true)
addEventHandler("buttonfree"root, 
function()
    outputChatBox("Dzia?a"source255255255true)
end)

addEvent("buttonfour"true)
addEventHandler("buttonfour"root, 
function()
    outputChatBox("Dzia?a"source255255255true)
end)

addEvent("buttonfive"true)
addEventHandler("buttonfive"root, 
function()
    outputChatBox("Dzia?a"source255255255true)
end)


C-Side:
addEventHandler("onClientGUIClick",root,
function (btn)
if btn == "left" then
    if (source == button1then
        
        money getPlayerMoney (localPlayer)
        if (money 3199then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttontwo",localPlayer)
        end
        
    elseif (source == button2then
        
        money getPlayerMoney (localPlayer)
        if (money 79999then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttonfree",localPlayer)
        end
        
    elseif (source == button3then
        
        money getPlayerMoney (localPlayer)
        if (money 49999then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttonfour",localPlayer)
        end
        
    elseif (source == button4then
    
        money getPlayerMoney (localPlayer)
        if (money 119then
            outputChatBox ("#D1D1D1Nie masz wystarczaj?co du?o pieni?dzy.")
        else
            triggerServerEvent ("buttonfive",localPlayer)
        end
        
    elseif (source == button5then
        guiSetVisible (window,false)
        showCursor (false)
    end
end
end)


W sumie tylko SSide wi?cej da?em, bo cside nie ma po co.
To aktualny skrawek kodu

[ Dodano: 2015-05-21, 16:00 ]
Temat do zamkni?cia. Wszystko naprawione.

Postaw piwo autorowi tego posta
 

 
Tagi: gui
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