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

Wysłany: 2015-07-02, 16:01


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
Witam. Zrobi?em sobie w GUI Editorze okienko z wyborem spawnu. Zmieni?em eventa na onClientPlayerJoin i tu jest problem. Okienko pokazuje si? razem z panelem logowania a mia?o po zalogowaniu :/ . W dodatku po naci?ni?ciu jakiegokolwiek przycisku, nic si? nie dzieje :x . Wiecie mo?e co jest ?le?


addEventHandler("onClientResourceStart", resourceRoot,
    function()
        Teleporty = guiCreateWindow(0.38, 0.25, 0.26, 0.49, "Wybierz miejsce spawnu:", true)
        guiWindowSetSizable(Teleporty, false)
        guiSetAlpha(Teleporty, 0.75)

        SanFierro = guiCreateButton(92, 38, 236, 46, "San Fierro", false, Teleporty)
        LasVenturas = guiCreateButton(92, 98, 236, 52, "Las Venturas", false, Teleporty)
        LosSantos = guiCreateButton(94, 172, 234, 49, "Los Santos", false, Teleporty)
        Palomino = guiCreateButton(95, 245, 233, 49, "Palomino Creek", false, Teleporty)
        FortCarson = guiCreateButton(95, 318, 234, 47, "Fort Carson", false, Teleporty)
        AngelPine = guiCreateButton(95, 394, 234, 49, "Angel Pine", false, Teleporty)    
    end
)


function SanFierroTp (source)
         SpawnPlayer (source, -2459.203125, 135.2705078125, 35.171875) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
end
addEventHandler (onClientGUIClick, SanFierro)


function LasVenturasTP (source)
         SpawnPlayer (source, 2421.544921875, 2376.61328125, 10.8203125) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
end
addEventHandler (onClientGUIClick, LasVenturas)


function LosSantosTP (source)
         SpawnPlayer (source, 1479.50390625, -1713.2607421875, 14.046875) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
end
addEventHandler (onClientGUIClick, LosSantos)


function PalominoTP (source)
         SpawnPlayer (source, 2213.5283203125, 138.6396484375, 26.426551818848) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
end
addEventHandler (onClientGUIClick, Palomino)


function FortCarsonTP (source)
         SpawnPlayer (source, -3.08203125, 1210.7041015625, 19.352746963501) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
end
addEventHandler (onClientGUIClick, FortCarson)


function AngelPineTP (source)
         SpawnPlayer (source, -2026.0595703125, -2552.859375, 30.625) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
end
addEventHandler (onClientGUIClick, AngelPine)

function wybierzspawn()
             guiSetVisible(Teleporty, true)
             showCursor(true)
end
addEventHandler( "onClientPlayerJoin", wybierzspawn )





Dam :piwo:

Podpis



GTAO Member: 2015-08-23, 14:26

Ostatnio zmieniony przez jg2aviva1 2015-07-02, 16:34, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 16:33


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
"addEventHandler (onClientGUIClick, SanFierro)"
Przedewszystkim



Więcej informacji znajdziesz w Wikipedii MTA:

addEventHandler


Po 2: Zr?b to na zasadzie


        Teleporty = guiCreateWindow(0.38, 0.25, 0.26, 0.49, "Wybierz miejsce spawnu:", true)
        guiWindowSetSizable(Teleporty, false)
        guiSetAlpha(Teleporty, 0.75)
        guiSetVisible(Teleporty, false)

        SanFierro = guiCreateButton(92, 38, 236, 46, "San Fierro", false, Teleporty)
        LasVenturas = guiCreateButton(92, 98, 236, 52, "Las Venturas", false, Teleporty)
        LosSantos = guiCreateButton(94, 172, 234, 49, "Los Santos", false, Teleporty)
        Palomino = guiCreateButton(95, 245, 233, 49, "Palomino Creek", false, Teleporty)
        FortCarson = guiCreateButton(95, 318, 234, 47, "Fort Carson", false, Teleporty)
        AngelPine = guiCreateButton(95, 394, 234, 49, "Angel Pine", false, Teleporty)    

   function pokaz_gui()
   guiSetvisible(teleporty, true)
   end

   addEventhandler("onClientPlayerJoin", resourceRoot, pokaz_gui"


A ponadto do ka?dej funkcji spawnujacej gracza bedziesz musial doda?

guiSetVisible(Teleporty, false)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 16:35


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
Ojj, napisa?e? kiedy edytowa?em xD. Bo uda?o mi si? pokaza? gui ale nie do?? ?e jest podczas logowania to jeszcze nie dzia?aj? przyciski :x

[ Dodano: 2015-07-02, 16:37 ]
Cytat:

Po 2: Zr?b to na zasadzie


        Teleporty = guiCreateWindow(0.38, 0.25, 0.26, 0.49, "Wybierz miejsce spawnu:", true)
        guiWindowSetSizable(Teleporty, false)
        guiSetAlpha(Teleporty, 0.75)
        guiSetVisible(Teleporty, false)

        SanFierro = guiCreateButton(92, 38, 236, 46, "San Fierro", false, Teleporty)
        LasVenturas = guiCreateButton(92, 98, 236, 52, "Las Venturas", false, Teleporty)
        LosSantos = guiCreateButton(94, 172, 234, 49, "Los Santos", false, Teleporty)
        Palomino = guiCreateButton(95, 245, 233, 49, "Palomino Creek", false, Teleporty)
        FortCarson = guiCreateButton(95, 318, 234, 47, "Fort Carson", false, Teleporty)
        AngelPine = guiCreateButton(95, 394, 234, 49, "Angel Pine", false, Teleporty)    

   function pokaz_gui()
   guiSetvisible(teleporty, true)
   end

   addEventhandler("onClientPlayerJoin", resourceRoot, pokaz_gui"


Nie ja to robi?em tak, guieditor tak zrobi? :)

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 16:37


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Skoro chcesz aby pokaza?o si? to po zalogowaniu to w kodzie, w kt?rym ukrywasz gui/dxdrawy po zalogowaniu musisz doda?
(Zak?adaj?c ?e i teleporty i logowanie masz w 1 pliku xD)

guiSetVisible(Teleporty, true)


I usunac ten event onClientPlayerJoin

_______
A co do przycisk?w, zapoznaj si? z addEventHandler i jego argumentami, link do funkcji w poprzednim po?cie

Ostatnio zmieniony przez #404 2015-07-02, 16:42, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 16:39


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
Mam to doda? do mojego panelu logowania?


ZAraz sprawdz? te przyciski jeszcze ;)

[ Dodano: 2015-07-02, 16:42 ]
No w?a?nie addEventHandler to dla mnie najbardziej NIEzrozumia?a funkcja :p . Nie wiem co mam doda? pomi?dzy "onClientGUIClick" a np."SanFierro" :shock:

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 16:46


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Ju? to t?umacz?...
addEventHandler(a,b,c)
a - wydarzenie kt?re uruchamia funkcj?
b - element do kt?rego to wydarzenie jest przypisane
c - funkcja, ktora zostanie wykonana

w twoim przypadku jest to

addEventHandler("onClientGUIClick", nazwa_przycisku np. Palomino, nazwa wykonywanej funkcji po wci?ni?ciu tego przycisku np.  PalominoTP )



Dos?owy przyk?ad

addEventHandler("onClientGUIClick", Palomino, PalominoTP )





______

Poczekaj chwilk?, napisz? gotowca i na jego przyk?adzie Ci wszystko wyt?umacze

Ostatnio zmieniony przez #404 2015-07-02, 16:57, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 16:48


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
Aaaa....... Dobra :-> Bo na wiki wszystko po angielsku jest i ci??ko co? zrozumie? ;) Zaraz sprawdz? :)

[ Dodano: 2015-07-02, 16:54 ]
Ok. Teraz wszystko wygl?da tak:


addEventHandler("onClientResourceStart", resourceRoot,
    function()
        Teleporty = guiCreateWindow(0.38, 0.25, 0.26, 0.49, "Wybierz miejsce spawnu:", true)
        guiWindowSetSizable(Teleporty, false)
        guiSetAlpha(Teleporty, 0.75)

        SanFierro = guiCreateButton(92, 38, 236, 46, "San Fierro", false, Teleporty)
        LasVenturas = guiCreateButton(92, 98, 236, 52, "Las Venturas", false, Teleporty)
        LosSantos = guiCreateButton(94, 172, 234, 49, "Los Santos", false, Teleporty)
        Palomino = guiCreateButton(95, 245, 233, 49, "Palomino Creek", false, Teleporty)
        FortCarson = guiCreateButton(95, 318, 234, 47, "Fort Carson", false, Teleporty)
        AngelPine = guiCreateButton(95, 394, 234, 49, "Angel Pine", false, Teleporty)    
    end
)


function SanFierroTp (source)
         SpawnPlayer (source, -2459.203125, 135.2705078125, 35.171875) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
         guiSetVisible(Teleporty, false)
end
addEventHandler (onClientGUIClick, SanFierro, SanFierroTp)


function LasVenturasTP (source)
         SpawnPlayer (source, 2421.544921875, 2376.61328125, 10.8203125) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
         guiSetVisible(Teleporty, false)

end
addEventHandler (onClientGUIClick, LasVenturas, LasVenturasTP)


function LosSantosTP (source)
         SpawnPlayer (source, 1479.50390625, -1713.2607421875, 14.046875) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
         guiSetVisible(Teleporty, false)

end
addEventHandler (onClientGUIClick, LosSantos, LosSantosTP)


function PalominoTP (source)
         SpawnPlayer (source, 2213.5283203125, 138.6396484375, 26.426551818848) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
         guiSetVisible(Teleporty, false)

end
addEventHandler (onClientGUIClick, Palomino, PalominoTP)


function FortCarsonTP (source)
         SpawnPlayer (source, -3.08203125, 1210.7041015625, 19.352746963501) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
         guiSetVisible(Teleporty, false)

end
addEventHandler (onClientGUIClick, FortCarson, FortCarsonTP)


function AngelPineTP (source)
         SpawnPlayer (source, -2026.0595703125, -2552.859375, 30.625) 
         fadeCamera (source, true)
         setCameraTarget (source, source)
         guiSetVisible(Teleporty, false)

end
addEventHandler (onClientGUIClick, AngelPine, AngelPineTP)


function wybierzspawn()
             guiSetVisible(Teleporty, true)
             showCursor(true)
end
addEventHandler( "onClientPlayerJoin", wybierzspawn )




Tak to powinno wygl?da?? Bo te przyciski dalej nie dzia?aj? ;(


I jeszcze jak to wko?cu zmieni? aby pokazywa?o to gui po zalogowaniu? Doda? guiSetVisible (Teleporty, true)" do panelu logowania? Czy nie b?dzie dzia?a? kiedy moje gui jest w innym skrypcie?

[ Dodano: 2015-07-02, 16:57 ]
a poczekaj, bo cudzys?owi?w zapomnia?em :o

[ Dodano: 2015-07-02, 16:59 ]
A i dalej nie dzia?a :x

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 17:12


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Tutaj masz gotowy kod:
SS: http://pastebin.com/KMNgpTcv
CS: http://pastebin.com/6JzjUfUn

Robione najprostsz? metod?
Z eventu logowania > przeniesione na strone clienta otwarcie GUI

P??niej po przez trigger'y (przeniesienia) spawny (poniewa? spawnPlayer jest jedynie funkcj? po stronie serwer'a, ty pr?bowa?e? po stronie clienta to da? xD)

Kolejna uwaga, w zdarzeniu onClientGUIClick elementem "source" jest zawsze KLIKNI?TY OBIEKT, nie gracz, aby pobra? gracza u?yj localPlayer albo getLocalPlayer()

Pozatym zwracaj przede wszystkim uwag? na wielko?? liter (ma to ogromne znaczenie) jak i na stron? (client albo server) po kt?rej dana funkcja dzia?a!



PS: To jest nie testowane, pisane na surowo na pastebin'ie wi?c przetestuj, a w razie czego pisz to poprawi?

Ostatnio zmieniony przez #404 2015-07-02, 17:21, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 17:19


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
Dobra, dzi?kuj? :D . Dam Ci piwko i nast?pnym razem b?d? uwa?a? na takie pierd??ki typu wielko?? liter :->

[ Dodano: 2015-07-02, 17:39 ]
dobra, nie dzia?a :x . Jak zrobie reconnecta i si? zaloguj? to niczego nie ma ;( . Mo?e co? jeszcze mam dopisa??

[ Dodano: 2015-07-02, 17:40 ]
Jak zacznie dzia?a? to dam ci jeszcze respa R* bo mam na zbyciu :p

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 17:42


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
"jg2aviva1" napisał/a:


[ Dodano: 2015-07-02, 17:39 ]
dobra, nie dzia?a :x . Jak zrobie reconnecta i si? zaloguj? to niczego nie ma ;( . Mo?e co? jeszcze mam dopisa??


Wpisz /debugscript 3 i podaj b??dy.
Przede wszystkim upewnij si? czy struktura pliku meta jest odpowiednia

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 17:45


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
A ju? rozumiem...

Dobrze ?e zajrza?em do mety bo oba kody s? po stronie clienta ;)

[ Dodano: 2015-07-02, 17:48 ]
I tak jest problem..

Jak wezm? np. Fort Carson to zostaj? w aktualnym miejscu i po prostu jeszcze raz nakierowuje kamer? na gracza :|

[ Dodano: 2015-07-02, 17:49 ]
A i gdy wpisz? w konsoli /debugscript 3 to mam co? takiego:
debugscript: Incorrect client type for this command

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 17:59


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
http://www72.zippyshare.com/v/h4znsqxn/file.html

Wersja poprawiona i dzia?aj?ca, moje niedopatrzenie xD

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 18:08


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
A da?oby si? jeszcze zrobi? tak, aby nie zmienia?o skina?

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 18:15


#404







Wiek: 27
Na forum: 4912 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
Tzn ? Korzystasz z standardowego gamemodu play ? Czy przechowujesz w jaki? spos?b skin ?

Je?eli ?adne z powy?szych to spr?buj w ten spos?b:

Ka?dy do ka?dej funkcji spawnPlayer dopisujesz 2 argumenty
Pierwszy to 0 (rotacja w ktorej ma sie pojawic, mozesz tez uzyc math.random(0,360) je?eli ma by? losowana rotacja za kazdym razem), drugi argument to getElementModel(source)

Przyk?ad:

spawnPlayer(source, x, y, z, 0, getElementModel(source)

Oczywiscie te x y z to koordynaty :)

@Down: To popytaj Prezesa o to bo to w ko?cu jego skrypcik, on b?dzie najlepiej wiedzia? na jakiej zasadzie s? skiny przechowywane czy tam przyznawane

Ostatnio zmieniony przez #404 2015-07-02, 18:21, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-07-02, 18:19


jg2aviva1

Rusek :D






Wiek: 25
Na forum: 4275 dni
Posty: 446
Nick w MP: _Wolfenstei[N]^.^

Piwa: 1034

Respekt: 240
Respekt: 240Respekt: 240

Ostrzeżeń: 60%
Nie bardzo wiem gdzie ;) . Korzystam z gm'a pana prezesa kt?ry mam zamiar JUTRO uruchomi? a chcia?em taki bajer zrobi? :mrgreen:

[ Dodano: 2015-07-02, 18:28 ]
A nie da si? jako? zrobi? z getElementModel? czy getPedSkin?

Podpis



GTAO Member: 2015-08-23, 14:26

Postaw piwo autorowi tego posta
 

 
Tagi: teleporty :: 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 » Teleporty w GUI 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