Witamy na GTAOnline Obecny czas to 2017-12-17, 07:22 Użytkowników: 72561
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: 494 dni
Posty: 331
Piwa: 3
Respekt: 65,3

Wysłany: 2017-05-21, 14: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.

_________________
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 430 dni
Posty: 417
Piwa: 127
Respekt: 230,5
Respekt: 230,5Respekt: 230,5

Wysłany: 2017-05-21, 14: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ć.

_________________
http://gtao.pl/%3Cfont-co...pg-vt116495.htm



"Na tym serwerze stawiamy na graczy!"
Forum: http://modern-rpg.pl/
Discord: https://discord.gg/hDBpRez

Developer neQ.
Postaw piwo autorowi tego posta
 

_Mike 





Informacje
Wiek: 15
Na forum: 586 dni
Posty: 882
Piwa: 963
Respekt: 360
Respekt: 360Respekt: 360Respekt: 360Respekt: 360

Wysłany: 2017-05-21, 14: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ę.

_________________
Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 494 dni
Posty: 331
Piwa: 3
Respekt: 65,3

Wysłany: 2017-05-21, 15: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?

_________________
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 430 dni
Posty: 417
Piwa: 127
Respekt: 230,5
Respekt: 230,5Respekt: 230,5

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



Jaki błąd wywala?

_________________
http://gtao.pl/%3Cfont-co...pg-vt116495.htm



"Na tym serwerze stawiamy na graczy!"
Forum: http://modern-rpg.pl/
Discord: https://discord.gg/hDBpRez

Developer neQ.
Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 494 dni
Posty: 331
Piwa: 3
Respekt: 65,3

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



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

_________________
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 430 dni
Posty: 417
Piwa: 127
Respekt: 230,5
Respekt: 230,5Respekt: 230,5

Wysłany: 2017-05-21, 15: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.

_________________
http://gtao.pl/%3Cfont-co...pg-vt116495.htm



"Na tym serwerze stawiamy na graczy!"
Forum: http://modern-rpg.pl/
Discord: https://discord.gg/hDBpRez

Developer neQ.
Postaw piwo autorowi tego posta
 

Yakub 





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

Wysłany: 2017-05-21, 15: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: 494 dni
Posty: 331
Piwa: 3
Respekt: 65,3

Wysłany: 2017-05-21, 15: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.

_________________
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

Yakub 





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

Wysłany: 2017-05-21, 15: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: 430 dni
Posty: 417
Piwa: 127
Respekt: 230,5
Respekt: 230,5Respekt: 230,5

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



A co to jest?

addEventHandler("otworzBrame"getRootElement())

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

_________________
http://gtao.pl/%3Cfont-co...pg-vt116495.htm



"Na tym serwerze stawiamy na graczy!"
Forum: http://modern-rpg.pl/
Discord: https://discord.gg/hDBpRez

Developer neQ.
Postaw piwo autorowi tego posta
 

Yakub 





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

Wysłany: 2017-05-21, 15: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: 494 dni
Posty: 331
Piwa: 3
Respekt: 65,3

Wysłany: 2017-05-21, 16: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

_________________
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

dbn69 





Informacje
Nick w MP: neQ.
Wiek: 15
Na forum: 430 dni
Posty: 417
Piwa: 127
Respekt: 230,5
Respekt: 230,5Respekt: 230,5

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



Podaj linie 15 i 22

_________________
http://gtao.pl/%3Cfont-co...pg-vt116495.htm



"Na tym serwerze stawiamy na graczy!"
Forum: http://modern-rpg.pl/
Discord: https://discord.gg/hDBpRez

Developer neQ.
Postaw piwo autorowi tego posta
 

Szydlo 





Informacje
Nick w MP: Szydlo
Wiek: 17
Na forum: 494 dni
Posty: 331
Piwa: 3
Respekt: 65,3

Wysłany: 2017-05-21, 16: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.

_________________
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
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,23 sekundy. Zapytań do SQL: 18