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

Wysłany: 2015-04-23, 21:58


Tomakan

Człowiek






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

Piwa: 5

Respekt: 50

Dzisiejsza nazwa tematu si? ze sob? wi??e, mimo ?e napisa?em j? mi?dzy tymi, no.. kreskami.

W guieditor stworzy?em Gui, jest git, jest 12 labeli, 1/2 z nich to stringi np Nazwa Gracza:", czyli ju? troszk? si? mo?na domy?li? ?e robi? statystyki.
Te wszystkie durne statystyki z Community nie s? tak zbudowane jak bym chcia?, dlatego zamiast dalej robi? skrypty zatrzyma?em si?. (Nie ?e pobieram itd, ale jak mam problem i nie mam ju? pomys??w i siedz? nad nim kupe czasu to staram si? znale?? podobny skrypt i zobaczy? jak go?? to rozwi?za?)
Prawdopodobnie robi? b??d przy triggerku, dlatego prosz? Was by?cie odpowiedzieli mi na jedno pytanie, i pokazali w jaki spos?b to zrobi?.
Pytanie brzmi, czy triggerem da si? przes?a? klika warto?ci z serverside? To chc? osi?gn??, poniewa? w mym gui znajduje si? label "Ranga", w moim wypadku 1 to po prostu gracz, a? tak do pi?ciu, wi?c chc? t? liczb? przenie?? do clientside i? w nim nie pobior? accountdata, bo to tylko server only.

M?j bind wygl?da tak, ma tak wygl?da?, wiem, ?e to jest dobrze:
Kod:

function toggleGui()
if (guiGetVisible(window)) then
showCursor(false)
guiSetVisible(window,false)
elseif (not isCursorShowing()) then
showCursor(true)
guiSetVisible(window,true)
end
end
bindKey("F2","down",toggleGui)

Wcze?niej zamiast tego: showCursor(true), guiSetVisible(window,true)
zrobi?em trigger, elegancko przechodzi?o. I tu prosz? o kod sside do cside, i? gdy pr?bowa?em tak zrobi? przy pobieraniu getAccountData wyskakiwa? mi b??d, i? pobrane konto za pomoc? getPlayerAccount(source) jest z?e czy co? takiego.
Jednak, prosz? o zmontowanie takiego nadajnika do cside by wysy?a? 4 informacje, kt?re b?d? si? z accounddata pobiera? :P

Moje drzewko wygl?da tak, ( lub ma wygl?da? )
Skrypt startuje, wczytuje si? ca?e gui, by nie by?o ostrze?e? porobi? puste zmienne np rangakonta = ""
Po klikni?ciu F2 sprawdza czy okno jest otwarte jak nie to triggeruje do sside, tam za to pobiera dane typu Ranga, id skina koniecznie z accountdata i? taki zrobi?em zapis ;) , score.
Te 3 pobrane dane wysy?a triggerem do cside gdzie puste zmienne globalne zast?puj? si? stringami lub int'ami i okienko pojawia si? (guisetvisible).

Przepraszam za roztrzepanie i sklejanie tekstu w niesp?jn? ca?o??, lecz mam nadziej?, ?e kto? o stalowych nerwach si? po?apie.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 13:56


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

bind jest troch? ?le sformu?owany, mo?esz zrobi? to przyk?adowo tak :

showCursor(not isCursorShowing())



Nie rozpisuj si? tak, podaj wprost co ci nie dzia?a.

Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 17:24


Tomakan

Człowiek






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

Piwa: 5

Respekt: 50

Powiedz jak wys?a? kilka informacji triggeruj?c z sside do cside. Dalej b?dziemy ju? rozkminia?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 18:45


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

np ja to robi? tak :


local value={info1,info2,info3}
triggerClientEvent("SendValue",element,value)



c_side :


addEvent("SendValue",true)
addEventHandler("SendValue",root,function(value)
if localPlayer==source then
local info1,info2,info3=unpack(value)
end
end)



Mo?na zrobi? te? tak :


triggerClientEvent("SendValue",element,info1,info2,info3


Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 19:50


Tomakan

Człowiek






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

Piwa: 5

Respekt: 50

Okej,
mam ten b??d co wcze?niej, kod wygl?da tak;
Kod:

addEvent("zapytanie", true)

addEventHandler("zapytanie", root, function()

local acc = getPlayerAccount(source)
local skinid = getAccountData(acc,"skin")
local ranga = getAccountData(acc,"rank")
local score = getAccountData(acc,"score")
local level = getAccountData(acc,"level")

local wartosci = {skinid, ranga, score, level}

end)

a b??d tak: Bad argument getAccountData expected account at argument 1, to samo gdy zamiast source w getaccdata dam thePlayer;

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:07


Loop

Inspektor






Wiek: 28
Na forum: 4430 dni
Posty: 311
Nick w MP: Inspektor

Piwa: 201

Respekt: 130
Respekt: 130

podaj kod triggera

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:15


Tomakan

Człowiek






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

Piwa: 5

Respekt: 50

Kod:

function toggleGui()
if (guiGetVisible(window)) then
showCursor(false)
guiSetVisible(window,false)
elseif (not isCursorShowing()) then
--showCursor(not isCursorShowing())
--guiSetVisible(window,true)
triggerServerEvent("zapytanie",resourceRoot)
end
end
bindKey("F2","down",toggleGui)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:19


Loop

Inspektor






Wiek: 28
Na forum: 4430 dni
Posty: 311
Nick w MP: Inspektor

Piwa: 201

Respekt: 130
Respekt: 130

spr?buj tak
triggerServerEvent("zapytanie",localPlayer,resourceRoot)


Nie sprawdzane

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:31


Tomakan

Człowiek






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

Piwa: 5

Respekt: 50

niestety nadal to samo.

[ Dodano: 2015-04-24, 20:35 ]
Od nowa, tak wygl?da sklepany kod w ca?o?ci,
CSide
function toggleGui()
    if (guiGetVisible(window)) then
        showCursor(false)
        guiSetVisible(window,false)
    elseif (not isCursorShowing()) then
        --showCursor(not isCursorShowing())
        --guiSetVisible(window,true)
        triggerServerEvent("zapytanie",localPlayer,resourceRoot)
    end
end
bindKey("F2","down",toggleGui)

addEvent("odpowiedz", true)
addEventHandler("odpowiedz", root, 
function(wartosc)
    if localPlayer==source then
        local skinid, ranga, score, level=unpack(wartosc)
    end
    
    if ranga==1 then
        ranga = "Gracz"
        guiLabelSetColor(label8, 255, 255, 255)
    elseif ranga==2 then
        ranga = "Konto Premium"
        guiLabelSetColor(label8, 255, 204, 0)    
    elseif ranga==3 then
        ranga = "Opiekun serwera"
        guiLabelSetColor(label8, 0, 255, 77)
    elseif ranga==4 then
        ranga = "Administrator"
        guiLabelSetColor(label8, 255, 0, 77)
    elseif ranga==5 then
        ranga = "W?a?ciciel"
        guiLabelSetColor(label8, 204, 51, 204)
    else
        ranga = "B??d!"
    end
    
    showCursor(not isCursorShowing())
    guiSetVisible(window,true)
    
end)

Sside
addEvent("zapytanie", true)

addEventHandler("zapytanie", root, function(thePlayer)

    local acc = getPlayerAccount(thePlayer)
    local skinid = getAccountData(acc,"skin")
    local ranga = getAccountData(acc,"rank")
    local score = getAccountData(acc,"score")
    local level = getAccountData(acc,"level")
    
    local wartosci = {skinid, ranga, score, level}
    triggerClientEvent("odpowiedz",element,wartosci)
end)


Ostatnio zmieniony przez Tomakan 2015-04-24, 20:36, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:36


Loop

Inspektor






Wiek: 28
Na forum: 4430 dni
Posty: 311
Nick w MP: Inspektor

Piwa: 201

Respekt: 130
Respekt: 130

a tak ?:
triggerServerEvent("zapytanie",localPlayer) -- zamien za poprzedni trigger
sside  -- strona serwera
addEvent("zapytanie", true)

addEventHandler("zapytanie", root, function()

    local acc = getPlayerAccount(source)
    local skinid = getAccountData(acc,"skin")
    local ranga = getAccountData(acc,"rank")
    local score = getAccountData(acc,"score")
    local level = getAccountData(acc,"level")
    
    local wartosci = {skinid, ranga, score, level}
    triggerClientEvent("odpowiedz",localPlayer,wartosci)
end)



Ostatnio zmieniony przez Loop 2015-04-24, 20:41, w całości zmieniany 2 razy  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:38


Tomakan

Człowiek






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

Piwa: 5

Respekt: 50

Nadal ten sam error,

[ Dodano: 2015-04-24, 20:48 ]
Okej, dzia?a jednak jest pewnien problem, w sside jest trigger kt?rego argument 2 czyli w tym przypadku "element" nie odpowiada i te? jest b??d, czym go zast?pi??

[ Dodano: 2015-04-24, 20:50 ]
ee, nie wa?ne, moja nie uwaga.

[ Dodano: 2015-04-24, 20:50 ]
Dzi?ki ch?opaki.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-04-24, 20:51


Loop

Inspektor






Wiek: 28
Na forum: 4430 dni
Posty: 311
Nick w MP: Inspektor

Piwa: 201

Respekt: 130
Respekt: 130

zmien swoje sside na moj? wersj? poprawion? i bedzie OK

Prosz? bardzo

Postaw piwo autorowi tego posta
 

 
Tagi: gui :: statystyki :: triggerowanie
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Gui | Statystyki | Triggerowanie 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