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

Wysłany: 2013-03-03, 19:57


Bilguun







Wiek: 26
Na forum: 5071 dni
Posty: 133
Nick w MP: Bilguun

Piwa: 4

Respekt: 50

Ostrzeżeń: 20%
Witam stworzylem funkcje z addEventHandler i robi ona wielkie lagi

Kod:

function wlacz()
addEventHandler("onClientRender", getRootElement(), pokazzdjecie )

end
addCommandHandler("info", wlacz)

to zdarzenie wywo?uje pokazanie si? zdj?cia itp.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 20:01


Riot

3X






Wiek: 29
Na forum: 5729 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

Kod funkcji, z tego si? nic nie dowiemy - zdarzenie onClientRender akurat zbyt nie obci??a serwera.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 20:02


Bilguun







Wiek: 26
Na forum: 5071 dni
Posty: 133
Nick w MP: Bilguun

Piwa: 4

Respekt: 50

Ostrzeżeń: 20%
Kod:

function pokazzdjecie()
local color = tocolor(255, 204, 0, 255)
local w = sw - 1000
local h = sh - 45

local x, y, z = getElementVelocity(getPedOccupiedVehicle(localPlayer))

local hp = math.floor(getElementHealth(getPedOccupiedVehicle(localPlayer)) / 10)
local veh = getVehicleName(getPedOccupiedVehicle(localPlayer))
local eng = getVehicleEngineState(getPedOccupiedVehicle(localPlayer))
local drzwi = isVehicleLocked ( getPedOccupiedVehicle(localPlayer) )

dxDrawText("Silnik jest " .. to_onoff(eng) , w, h, sw, sh, color, 2, "sans")
dxDrawText("Stan pojazdu " .. tostring(hp) .. "%", w + 260, h, sw, sh, color, 2, "sans")
dxDrawText("Pojazd:" .. veh ,w + 520, h, sw, sh, color, 2, "sans")
dxDrawText("Drzwi:" .. czy(drzwi) , w + 710, h, sw, sh, color, 2, "sans")

dxDrawImage(8, sh-logo_h, logo_w,logo_h, 'img/banner.png')
dxDrawImage(0,sh-logo_h, sw, logo_h, 'img/tlo.png')
showClientImage()


end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 21:14


Wielebny







Wiek: 41
Na forum: 5499 dni
Posty: 257
Nick w MP: Wielebny

Piwa: 1690

Respekt: 180
Respekt: 180Respekt: 180

Nie ma w tej funkcji nic co powinno fest zmula?, chyba ?e grasz na pentiumie-100.
Tak czy siak, spr?buj tej wersji, jest optymalniejsza:


Kod:


local color = tocolor(255, 204, 0, 255)
local w = sw - 1000
local h = sh - 45

function pokazzdjecie()
dxDrawImage(8, sh-logo_h, logo_w,logo_h, 'img/banner.png')
dxDrawImage(0,sh-logo_h, sw, logo_h, 'img/tlo.png')
showClientImage()




local v=getPedOccupiedVehicle(localPlayer)
if not v then return end
local x, y, z = getElementVelocity(v)

local hp = math.floor(getElementHealth(v) / 10)
local veh = getVehicleName(v)
local eng = getVehicleEngineState(v)
local drzwi = isVehicleLocked (v)

dxDrawText("Silnik jest " .. to_onoff(eng) , w, h, sw, sh, color, 2, "sans")
dxDrawText("Stan pojazdu " .. tostring(hp) .. "%", w + 260, h, sw, sh, color, 2, "sans")
dxDrawText("Pojazd:" .. veh ,w + 520, h, sw, sh, color, 2, "sans")
dxDrawText("Drzwi:" .. czy(drzwi) , w + 710, h, sw, sh, color, 2, "sans")


end


Pokaz funkcje to_onoff(), czy() i showClientImage(), zapewne to w nich jest jakis problem.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 21:47


Bilguun







Wiek: 26
Na forum: 5071 dni
Posty: 133
Nick w MP: Bilguun

Piwa: 4

Respekt: 50

Ostrzeżeń: 20%
Dzi?ki, dzia?a. Ale mam jeszcze pytanie. Jak daje tam outputChatBox lub co innego to powtarza to ca?y czas i robie spam na chatboxie. Jak zrobi? by by?o tylko raz ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 22:29


Riot

3X






Wiek: 29
Na forum: 5729 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

Robi spam - bo funkcja jest powtarzana co klatk?.


Mo?esz przypisa? jaka? zmienn?.

Przyk?ad:

zmienna 0
function renderuj()
if zmienna == 0 then
zmienna 1
outputChatBox("Wiadomo??")
end
end
addEventHandler("onClientRender"getRootElement(), renderuj)


Funkcja jest podpi?ta pod onClientRender, ale wy?wietla tylko raz wiadomo??.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-04, 13:51


Oski

LUA Scripter






Wiek: 30
Na forum: 5246 dni
Posty: 428
Nick w MP: Oski

Piwa: 56

Respekt: 75,1

Co do zamulania to pewnie zamula?o bo wpisywa?e? 2 razy komend? i powtarza?o rendera.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-04, 15:41


Riot

3X






Wiek: 29
Na forum: 5729 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

"Oski" napisał/a:

Co do zamulania to pewnie zamula?o bo wpisywa?e? 2 razy komend? i powtarza?o rendera.


Wyskoczy?by b??d ?e ten event jest ju? aktywny.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-04, 17:27


Wielebny







Wiek: 41
Na forum: 5499 dni
Posty: 257
Nick w MP: Wielebny

Piwa: 1690

Respekt: 180
Respekt: 180Respekt: 180

"Ziomek11" napisał/a:

"Oski" napisał/a:

Co do zamulania to pewnie zamula?o bo wpisywa?e? 2 razy komend? i powtarza?o rendera.


Wyskoczy?by b??d ?e ten event jest ju? aktywny.


Nie wyskoczy?by - dan? funkcj? mo?na zabindowa? dowoln? ilo?? razy pod event.

Bardziej podejrzewam, ?e funkcja wywo?ywala sama siebie, np. w funkcji showClientImage(), kt?rej w?tkotw?rca nam nie pokaza?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-04, 17:50


Oski

LUA Scripter






Wiek: 30
Na forum: 5246 dni
Posty: 428
Nick w MP: Oski

Piwa: 56

Respekt: 75,1

Wielebny, Tutaj si? mylisz.
Sam z ciekawo?ci sprawdzi?em zdarzenie render.
Wniosek:
Je?li istnieje zdarzenie to drugi raz tego samego zdarzenie nie mo?na doda? ;]
Wyrzuca b??d w debugu ?e zdarzenie ju? jest, czyli pewnie jak m?wisz problem le?y po stronie kodu kt?rego autor nie udost?pni?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-04, 18:55


Wielebny







Wiek: 41
Na forum: 5499 dni
Posty: 257
Nick w MP: Wielebny

Piwa: 1690

Respekt: 180
Respekt: 180Respekt: 180

Racja, sprawdza?em z funkcjami anonimowymi, ze zwyk?ymi nie da si? dwa razy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-04, 20:05


Riot

3X






Wiek: 29
Na forum: 5729 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

"Wielebny" napisał/a:

Racja, sprawdza?em z funkcjami anonimowymi, ze zwyk?ymi nie da si? dwa razy.


I z tego co wiem za pomoc? call.

Postaw piwo autorowi tego posta
 

 
Tagi: funkcja :: robi :: wielkie :: lagi.
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Funkcja robi wielkie lagi. 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