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

Wysłany: 2018-03-31, 00:30


mkJ







Wiek: 25
Na forum: 3457 dni
Posty: 6
Nick w MP: mkJ



Respekt: 50

Mam problem z zamkni?ciem drugiego GUI.
Stworzy?em 2 GUI, pierwsze GUI dzia?a dobrze, jest guzik zamkni?cia oraz guzik przejscia do drugiego GUI. W drugim GUI mam guzik zamknij, kt?ry nie dzia?a.

local screenWscreenH guiGetScreenSize()

function isCursorOnElement(x,y,w,h)
    local mx,my getCursorPosition ()
    local fullx,fully guiGetScreenSize()
    cursorx,cursory mx*fullx,my*fully
    if cursorx and cursorx and cursory and cursory h then
        return true
    else
        return false
    end
end

hud false
hud2 false

function dxRender()
        dxDrawRectangle(screenW 0.3234screenH 0.3208screenW 0.3508screenH 0.3528tocolor(000170), false)
        dxDrawLine((screenW 0.3547) - 1, (screenH 0.5653) - 1, (screenW 0.3547) - 1screenH 0.6292tocolor(255255255255), 1false)
        dxDrawLine(screenW 0.4797, (screenH 0.5653) - 1, (screenW 0.3547) - 1, (screenH 0.5653) - 1tocolor(255255255255), 1false)
        dxDrawLine((screenW 0.3547) - 1screenH 0.6292screenW 0.4797screenH 0.6292tocolor(255255255255), 1false)
        dxDrawLine(screenW 0.4797screenH 0.6292screenW 0.4797, (screenH 0.5653) - 1tocolor(255255255255), 1false)
        dxDrawRectangle(screenW 0.3547screenH 0.5653screenW 0.1250screenH 0.0639tocolor(000130), false)
        dxDrawLine((screenW 0.5180) - 1, (screenH 0.5653) - 1, (screenW 0.5180) - 1screenH 0.6292tocolor(255255255255), 1false)
        dxDrawLine(screenW 0.6430, (screenH 0.5653) - 1, (screenW 0.5180) - 1, (screenH 0.5653) - 1tocolor(255255255255), 1false)
        dxDrawLine((screenW 0.5180) - 1screenH 0.6292screenW 0.6430screenH 0.6292tocolor(255255255255), 1false)
        dxDrawLine(screenW 0.6430screenH 0.6292screenW 0.6430, (screenH 0.5653) - 1tocolor(255255255255), 1false)
        dxDrawRectangle(screenW 0.5180screenH 0.5653screenW 0.1250screenH 0.0639tocolor(000130), false)
        dxDrawText("Wyj?cie"screenW 0.5258screenH 0.5792screenW 0.6352screenH 0.6125tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("Wi?cej informacji"screenW 0.3641screenH 0.5750screenW 0.4719screenH 0.6153tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("JDJD"screenW 0.4203screenH 0.3569screenW 0.5711screenH 0.3986tocolor(255255255255), 2.00"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("JDJD"screenW 0.3539screenH 0.4514screenW 0.6352screenH 0.4750tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("JDJD"screenW 0.3453screenH 0.4750screenW 0.6430screenH 0.5069tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
end
 

function dxRender2()
        dxDrawRectangle(screenW 0.3234screenH 0.3208screenW 0.3508screenH 0.3528tocolor(000161), false)
        dxDrawLine((screenW 0.4109) - 1, (screenH 0.5750) - 1, (screenW 0.4109) - 1screenH 0.6472tocolor(255255255255), 1false)
        dxDrawLine(screenW 0.5852, (screenH 0.5750) - 1, (screenW 0.4109) - 1, (screenH 0.5750) - 1tocolor(255255255255), 1false)
        dxDrawLine((screenW 0.4109) - 1screenH 0.6472screenW 0.5852screenH 0.6472tocolor(255255255255), 1false)
        dxDrawLine(screenW 0.5852screenH 0.6472screenW 0.5852, (screenH 0.5750) - 1tocolor(255255255255), 1false)
        dxDrawRectangle(screenW 0.4109screenH 0.5750screenW 0.1742screenH 0.0722tocolor(000138), false)
        dxDrawText("Zamknij"screenW 0.4195screenH 0.5903screenW 0.5773screenH 0.6333tocolor(255255255255), 1.60"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("jd"screenW 0.4297screenH 0.3347screenW 0.5664screenH 0.3806tocolor(255255255255), 2.00"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("jd"screenW 0.3633screenH 0.3944screenW 0.6406screenH 0.4278tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("jd"screenW 0.3633screenH 0.4278screenW 0.6406screenH 0.4611tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("jd"screenW 0.3633screenH 0.4611screenW 0.6406screenH 0.4944tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("jd"screenW 0.3633screenH 0.4944screenW 0.6406screenH 0.5278tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
        dxDrawText("jd"screenW 0.3633screenH 0.5278screenW 0.6406screenH 0.5611tocolor(255255255255), 1.10"default-bold""center""center"falsefalsefalsefalsefalse)
end


function hud ()
        if(hud == true)then
            showCursor(false);
            removeEventHandler("onClientRender",root,dxRender);
            showCursor(false);
        else
            showCursor(true);
            addEventHandler("onClientRender",root,dxRender);
            hud true;
        end
end
addCommandHandler("premium"hud)

addEventHandler("onClientClick",root,function(buttonstate)
    if(hud == true)then
        if(state == "down")then
            if(isCursorOnElement(screenW 0.5180screenH 0.5653screenW 0.1250screenH 0.0639))then
                removeEventHandler("onClientRender",root,dxRender);
                hud false;
                showCursor(false);
            elseif(isCursorOnElement(screenW 0.3547screenH 0.5653screenW 0.1250screenH 0.0639))then
                showCursor(true);
                hud2 true;
                hud false;
                removeEventHandler("onClientRender",root,dxRender);
                addEventHandler("onClientRender",root,dxRender2)
            elseif(isCursorOnElement(screenW 0.4109screenH 0.5750screenW 0.1742screenH 0.0722))then
                removeEventHandler("onClientRender",root,dxRender2);
                hud2 false;
                showCursor(false)
            end
        end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-03-31, 09:20


Kalizman







Wiek: 23
Na forum: 3651 dni
Posty: 1394

Piwa: 4619

Respekt: 358,8
Respekt: 358,8Respekt: 358,8Respekt: 358,8Respekt: 358,8

w onClientClick sprawdzaj czy posiadasz zmienn? hud oraz hud2 w??czon? i wtedy r?b co chcesz dalej

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
mkJ
Wysłany: 2018-03-31, 10:26


Atroth







Wiek: 23
Na forum: 3677 dni
Posty: 1089
Nick w MP: Atroth

Piwa: 4808

Respekt: 540
Respekt: 540

mkJ,


addEventHandler("onClientClick",root,function(buttonstate)
    if(hud == true)then
        if(state == "down")then
            if(isCursorOnElement(screenW 0.5180screenH 0.5653screenW 0.1250screenH 0.0639))then
                removeEventHandler("onClientRender",root,dxRender);
                hud false;
                showCursor(false);
            elseif(isCursorOnElement(screenW 0.3547screenH 0.5653screenW 0.1250screenH 0.0639))then
                showCursor(true);
                hud2 true;
                hud false;
                removeEventHandler("onClientRender",root,dxRender);
                addEventHandler("onClientRender",root,dxRender2)
            elseif(isCursorOnElement(screenW 0.4109screenH 0.5750screenW 0.1742screenH 0.0722))then
                removeEventHandler("onClientRender",root,dxRender2);
                hud2 false;
                showCursor(false)
            end
        end
    end
end)


Na pocz?tku sprawdzasz czy zmienna "hud" jest true. Je?eli zmienn? hud ustawisz na false, kod odpowiedzialny za zamkni?cie gui si? nie wykona bo zmienna hud nie jest true :) .

Podpis

Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
mkJ
Wysłany: 2018-03-31, 14:58


mkJ







Wiek: 25
Na forum: 3457 dni
Posty: 6
Nick w MP: mkJ



Respekt: 50

Po prostu zapomnia?em doda? funkcji dla hud2, dzi?kuj? za pomoc, do zamkni?cia :)

Postaw piwo autorowi tego posta
 

 
Tagi: jak :: zamknąć :: 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