Witamy na GTAOnline Obecny czas to 2017-10-21, 17:55 Użytkowników: 71853
Strona główna | Użytkownicy | Grupy | Faq | Regulamin | Zaloguj


Poprzedni temat :: Następny temat
Gui Znowu i Znowu...
Autor Wiadomość

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 437 dni
Posty: 225
Piwa: 2
Respekt: 45,3

Wysłany: 2017-05-21, 15:32   Gui Znowu i Znowu...



Cześć ponownie! Znowu problem... Teraz, gdy kliknę przycisk "ozbrame", To po prostu brama, się nie otwiera. Jak, zawsze proszę, o nie dawania mi "gotowców" Tylko wytłumaczenie co złe zrobiłem itp.

Kod:

addEventHandler("onClientResourceStart"resourceRoot,
    function()
            okno guiCreateWindow(108043134699"System Bramy (Aby, pokazać kursor kliknij F3.)"false)
        guiWindowSetSizable(oknofalse)

       ozbrame guiCreateButton(103332649"Otwórz/Zamknij Bramę."falseokno)
    end)


--=========================-   
-- Kod Gui --
--=========================-
-- Pokaz Gui --
--=========================-
function showgui()
    guiSetVisible(oknotrue)
    guiSetVisible(ozbrametrue)     
    showCursor(true)
end
--=========================-
-- Schowaj gui --
--=========================-
function hidegui()
    guiSetVisible(oknofalse)
    guiSetVisible(ozbramefalse)     
    showCursor(false)
end
addEventHandler("onClientResourceStart"resourceRoothidegui)
--=========================-
-- Kod na stworzenie bramyoraz zamykanie/otwieranie. 
--=========================-
bramaob createObject(10671,  1590.50, -1638.1213414 0090) 
--=========================-
--System bramy---- Nieważne w tym nie ma błedu.
--=========================-
function sysbramy()
    if getElementData(bramaob"brama"then 
        setElementData(bramaob"brama"false) 
        moveObject(bramaob20001590.50, -1638.1213414 )
        outputChatBox("Zamknąłeś bramę.")
    else
        setElementData(bramaob"brama"true)
        moveObject bramaob20001590.50, -1638.1213410 )   
        outputChatBox("Otworzyłeś bramę.")
    end
end
addEventHandler("onClientGUIClick"ozbramesysbramyfalse)
--=========================-
--Marker --
--=========================-
marker createMarker (1583.45386, -1637.7015412 "cylinder"1.500255170 )

--=========================-
--Gdy gracz wejdzie w marker --
--=========================-
 
function MarkerHithitElementmatchingDimension ) 
    local elementType getElementTypehitElement ) 
    if elementType == "player" then else return end
    outputChatBox"Wbiłeś w marker!") 
       guiSetVisible(oknotrue)
    guiSetVisible(ozbrametrueend
addEventHandler"onClientMarkerHit"markerMarkerHit) 
function MarkerClosehitElementmatchingDimension ) 
    local elementType getElementTypehitElement ) 
    if elementType == "player" then else return end
    outputChatBox"Wybiłeś z markera! xD") 
       guiSetVisible(oknofalse)
    guiSetVisible(ozbramefalseend
addEventHandler"onClientMarkerLeave"markerMarkerClose)


Tutaj kod jest skrócony:


function sysbramy()
    if getElementData(bramaob"brama"then 
        setElementData(bramaob"brama"false) 
        moveObject(bramaob20001590.50, -1638.1213414 )
        outputChatBox("Zamknąłeś bramę.")
    else
        setElementData(bramaob"brama"true)
        moveObject bramaob20001590.50, -1638.1213410 )   
        outputChatBox("Otworzyłeś bramę.")
    end
end
addEventHandler("onClientGUIClick"ozbramesysbramyfalse)


A, jeżeli by mi ktoś mógł wytłumaczyć jak działa setElementData i getElementData bo na wiki nie zrozumiałem.

Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 374 dni
Posty: 372
Piwa: 111
Respekt: 205,3
Respekt: 205,3Respekt: 205,3

Wysłany: 2017-05-21, 15:40   




function sysbramy()
    if getElementData(bramaob"brama") == true then 
        setElementData(bramaob"brama"false) 
        moveObject(bramaob20001590.50, -1638.1213414 )
        outputChatBox("Zamknąłeś bramę.")
    else
        setElementData(bramaob"brama"true)
        moveObject bramaob20001590.50, -1638.1213410 )   
        outputChatBox("Otworzyłeś bramę.")
    end
end
addEventHandler("onClientGUIClick"ozbramesysbramyfalse)

Po prostu przy if'ie zapomniałeś sprawdzić czy elementdata ma wartość true. Ty sprawdzałeś czy taka elementdata w ogóle istnieje. Spróbuj tak, lecz pisałem na szybko i nie wiem czy będzie działać.

_________________
Jeśli ktoś nazwie cię grubym, po prostu go zjedz.

Wykonuje proste skrypty na zamówienie. Kontakt podam Ci po ustaleniu na PW.
Moje skrypty

- http://gtao.pl/<font-c...ka-vt113772.htm
Postaw piwo autorowi tego posta
 

_Mike 





Informacje
Wiek: 15
Na forum: 529 dni
Posty: 753
Piwa: 832
Respekt: 290
Respekt: 290Respekt: 290Respekt: 290

Wysłany: 2017-05-21, 15:58   



Szydlo, I tak czy inaczej brama będzie się otwierać tylko u Ciebie bo nie jest wykonana po stronie servera :) . GUI ci nie zadziała na stronie servera od razu mówię.

_________________

Support Team - 17/06/2017


Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 437 dni
Posty: 225
Piwa: 2
Respekt: 45,3

Wysłany: 2017-05-21, 16:18   



nie działa. Nadal wywala to samo na DB3.

[ Dodano: 2017-05-21, 16:18 ]
Rookspack, A jak zrobić żeby gui było po stronie clienta a brama po stronie serwera?

Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 374 dni
Posty: 372
Piwa: 111
Respekt: 205,3
Respekt: 205,3Respekt: 205,3

Wysłany: 2017-05-21, 16:23   



Jaki błąd wywala?

_________________
Jeśli ktoś nazwie cię grubym, po prostu go zjedz.

Wykonuje proste skrypty na zamówienie. Kontakt podam Ci po ustaleniu na PW.
Moje skrypty

- http://gtao.pl/<font-c...ka-vt113772.htm
Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 437 dni
Posty: 225
Piwa: 2
Respekt: 45,3

Wysłany: 2017-05-21, 16:29   



DB3:
Waring: brama_c.lua:56: Bad Argument @ 'addEventHandler' [excepted element at argument 2, got nill]

Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 374 dni
Posty: 372
Piwa: 111
Respekt: 205,3
Respekt: 205,3Respekt: 205,3

Wysłany: 2017-05-21, 16:36   




function sysbramy()
if source ~= ozbrame then return end
    if getElementData(bramaob"brama") == "otwarta" then 
        setElementData(bramaob"brama""zamknieta") 
        moveObject(bramaob20001590.50, -1638.1213414 )
        outputChatBox("Zamknąłeś bramę.")
    else
        setElementData(bramaob"brama""otwarta")
        moveObject bramaob20001590.50, -1638.1213410 )   
        outputChatBox("Otworzyłeś bramę.")
    end
end
addEventHandler("onClientGUIClick"getRootElement(), sysbramyfalse)

Hmm, spróbuj tak innego pomysłu już nie mam
A co do tego żeby wszystkim się otwierała brama to robisz po prostu triggerServerEvent gdy naciśnie na ozbrame, i później robisz event po stronie serwera.

_________________
Jeśli ktoś nazwie cię grubym, po prostu go zjedz.

Wykonuje proste skrypty na zamówienie. Kontakt podam Ci po ustaleniu na PW.
Moje skrypty

- http://gtao.pl/<font-c...ka-vt113772.htm
Postaw piwo autorowi tego posta
 

Yakub 





Informacje
Wiek: 16
Na forum: 1175 dni
Posty: 44
Piwa: 8
Respekt: 60

Wysłany: 2017-05-21, 16:40   



dbn69, to i tak nic nie zmienia po raz kolejny.
Drogi Szydlo, po stronie client nic nie zdziałasz, chyba że chcesz żeby brama otwierała się tylko Tobie.
Moja propozycja jest taka. Wklej ten kod, co Ci podałem na bramy i daj go na server side. Następnie wykonaj tylko triggera i tyle w temacie. Rób, próbuj i testuj, a jak na prawdę nie będziesz wiedział jak to zrobić to pisz tutaj, ktoś na pewno Ci pomoże.

_________________


Yakub

GTAO Member: 2014-08-04, 14:42

Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 437 dni
Posty: 225
Piwa: 2
Respekt: 45,3

Wysłany: 2017-05-21, 16:41   



Chyba, nadal nie działa. Przynajmniej u mnie xD
W DB3, to samo może ja jakiś głupi błąd popełniłem.

Postaw piwo autorowi tego posta
 

Yakub 





Informacje
Wiek: 16
Na forum: 1175 dni
Posty: 44
Piwa: 8
Respekt: 60

Wysłany: 2017-05-21, 16:43   



Szydlo, podaj kod z linijki w której występuje bad argument.

[ Dodano: 2017-05-21, 16:52 ]
S-SIDE
bramaob createObject(10671,  1590.50, -1638.1213414 0090) -- tworzysz bramę i w xyz podajesz kordya w rxryrz rotację obiektu

function brama(player)
    if getElementData(bramaob"brama"then -- sprawdzasz czy jest ElementData
        setElementData(bramaob"brama"false) -- ustawiasz ElementDate na falseczyli można powiedziec że jako zamknięta
        moveObject(bramaob20001590.50, -1638.1213414 ) -- w szybkosc podajesz szybkosc zamykania się bramypolecam 2000. W xyz podajesz kordy zamkniętej bramy
        outputChatBox("Zamknąłeś bramę."player255255255)
    else
        setElementData(bramaob"brama"true)
        moveObject bramaob20001590.50, -1638.1213410 )   -- to samo co wyżej.
        outputChatBox("Otworzyłeś bramę."player255255255)
    end
end
addEvent("otworzBrame"true)
addEventHandler("otworzBrame"getRootElement())

function wejdzMarker(hitElement)
    if (getElementType(hitElement) == "player") and not (isPedInVehicle(hitElement)) then
        triggerClientEvent(hitElement"guiBrama"getRootElement())
    end
end
addEventHandler("onMarkerHit"sklepwejdzMarker)


C-SIDE

gracz getLocalPlayer()

CAŁY SKRYPT NA GUI TUTAJ WKLEJASZTYLKO MUSISZ SIĘ DOSTOSOWAĆ.

--teraz dajesz funkcje pod przyciski
function guziki()
    if source == zamknij then
        guiSetVisible(nazwa_guifalse)
        showCursor(false)
    elseif source == otworzzamknij then
        triggerServerEvent("otworzBrame"getRootElement(), gracz)
    end
end
addEventHandler("onClientGuiClick"getRootElementguziki)

Z takim kodem powinieneś dać radę. Powodzenia.

_________________


Yakub

GTAO Member: 2014-08-04, 14:42

Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 374 dni
Posty: 372
Piwa: 111
Respekt: 205,3
Respekt: 205,3Respekt: 205,3

Wysłany: 2017-05-21, 16:54   



A co to jest?

addEventHandler("otworzBrame"getRootElement())

Mam nadzieję że to tylko błąd :)

_________________
Jeśli ktoś nazwie cię grubym, po prostu go zjedz.

Wykonuje proste skrypty na zamówienie. Kontakt podam Ci po ustaleniu na PW.
Moje skrypty

- http://gtao.pl/<font-c...ka-vt113772.htm
Postaw piwo autorowi tego posta
 

Yakub 





Informacje
Wiek: 16
Na forum: 1175 dni
Posty: 44
Piwa: 8
Respekt: 60

Wysłany: 2017-05-21, 16:58   



Tak jest, to błąd. Przepraszam.

addEventHandler("otworzBrame"getRootElement(), brama)


_________________


Yakub

GTAO Member: 2014-08-04, 14:42

Postaw piwo autorowi tego posta
 
Więcej szczegółów
Wystawiono 1 piw(a):
Clevereq

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 437 dni
Posty: 225
Piwa: 2
Respekt: 45,3

Wysłany: 2017-05-21, 17:06   



Ymm, chyba, jakaś literówka tam nastąpiła. uzupełniłem te gui. jak w tamtym.
//Edit Chyba są, jakieś złe argumenty. xD

Kod:


WARNING: [bramy]\Brama_poli\brama_s.lua:15: Bad argument @ 'addEventHandler' [Expected function at argument 3, got none]
WARNING: [bramy]\Brama_poli\brama_s.lua:22: Bad argument @ 'addEventHandler' [Expected element at argument 2, got nil]


[ Dodano: 2017-05-21, 17:07 ]
Ja, jeszcze nie ogarniam eventów dokładnie, triggerów, i elementdaty

Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 374 dni
Posty: 372
Piwa: 111
Respekt: 205,3
Respekt: 205,3Respekt: 205,3

Wysłany: 2017-05-21, 17:11   



Podaj linie 15 i 22

_________________
Jeśli ktoś nazwie cię grubym, po prostu go zjedz.

Wykonuje proste skrypty na zamówienie. Kontakt podam Ci po ustaleniu na PW.
Moje skrypty

- http://gtao.pl/<font-c...ka-vt113772.htm
Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 437 dni
Posty: 225
Piwa: 2
Respekt: 45,3

Wysłany: 2017-05-21, 17:21   




addEventHandler("otworzBrame"getRootElement())
i
addEventHandler("onMarkerHit"sklepwejdzMarker)


[ Dodano: 2017-05-21, 17:22 ]
Znalazłem chyba jeden błąd... w 22 jest "sklep" drugiego takiego nie ma w kodzie.

Postaw piwo autorowi tego posta
 
Tagi: gui :: znowu :: znowu...
Anonymous



Dołaczył: Wczoraj 0:00
Posty: 1
Skad: google.com


Anonymous Koniecznie zajrzyj na:







Wyświetl posty z ostatnich:   
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
Wersja do druku

Skocz do:  


phpBB by Przemo modified by xXx 2003-2016

Template GTAONLINE created by gtaonline.pl



Strona wygenerowana w 0,21 sekundy. Zapytań do SQL: 18