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: 4061 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: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

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: 4061 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: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

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: 4061 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: 27
Na forum: 4290 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: 4061 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: 27
Na forum: 4290 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: 4061 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 skinidrangascorelevel=unpack(wartosc)
    end
    
    if ranga==1 then
        ranga "Gracz"
        guiLabelSetColor(label8255255255)
    elseif ranga==2 then
        ranga "Konto Premium"
        guiLabelSetColor(label82552040)    
    elseif ranga==3 then
        ranga "Opiekun serwera"
        guiLabelSetColor(label8025577)
    elseif ranga==4 then
        ranga "Administrator"
        guiLabelSetColor(label8255077)
    elseif ranga==5 then
        ranga "W?a?ciciel"
        guiLabelSetColor(label820451204)
    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 = {skinidrangascorelevel}
    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: 27
Na forum: 4290 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 = {skinidrangascorelevel}
    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: 4061 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: 27
Na forum: 4290 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