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

Wysłany: 2021-12-30, 03:02


etrnl

CLASSIC RPG






Wiek: 26
Na forum: 2200 dni
Posty: 86
Nick w MP: anonymous

Piwa: 57

Respekt: 50

Ostrzeżeń: 40%
Funkcja addPedClothes po kliencie zmienia ubrania tylko dla klienta, a po serwerze generuje "freezy" lub minimalne lagi - czy jest wam znany ten b??d? Nie interesuje mnie timeout na komend? bo posiadam anty-spam natomiast jestem ciekaw czemu a? tak to potrafi przylagowa?.

Poni?ej kawa?ek kodu.

Kod:


local randTshirt = math.random(1, #koszulki)

local randHead = math.random(1, #fryzury)

local randShorts= math.random(1, #spodnie)

local randBoots = math.random(1, #buty)

local randLua = math.random(1, #lua)

local randLla = math.random(1, #lla)

local randRua = math.random(1, #rua)

local randRla = math.random(1, #rla)

local randBack = math.random(1, #back)

local randLc = math.random(1, #lc)

local randRc = math.random(1, #rc)

local randStomach = math.random(1, #stomach)

local randLb = math.random(1, #lb)

local randNaszyjnik = math.random(1, #naszyjnik)

local randZegarek = math.random(1, #zegarek)

local randOkulary = math.random(1, #okulary)

local randCzapki = math.random(1, #czapki)

addPedClothes(plr, koszulki[randTshirt][1], koszulki[randTshirt][2], 0)

addPedClothes(plr,fryzury[randHead][1], fryzury[randHead][2], 1)

addPedClothes(plr, spodnie[randShorts][1], spodnie[randShorts][2], 2)

addPedClothes(plr, buty[randBoots][1], buty[randBoots][2], 3)

addPedClothes(plr, lua[randLua][1],lua[randLua][2], 4 )

addPedClothes(plr, lla[randLla][1],lla[randLla][2], 5 )

addPedClothes(plr, rua[randRua][1],rua[randRua][2], 6 )

addPedClothes(plr, rla[randRla][1],rla[randRla][2], 7 )

addPedClothes(plr, back[randBack][1],back[randBack][2], 8 )

addPedClothes(plr, lc[randLc][1],lc[randLc][2], 9 )

addPedClothes(plr, rc[randRc][1],rc[randRc][2], 10 )

addPedClothes(plr, stomach[randStomach][1],stomach[randStomach][2], 11)

addPedClothes(plr, lb[randLb][1],lb[randLb][2], 12)

addPedClothes(plr, naszyjnik[randNaszyjnik][1],naszyjnik[randNaszyjnik][2], 13)

addPedClothes(plr, zegarek[randZegarek][1],zegarek[randZegarek][2], 14)

-- losowanie 50% czy maj? by? okulary
local oksy = math.random(1,10)

if oksy > 5 then
addPedClothes(plr, okulary[randOkulary][1],okulary[randOkulary][2], 15)
else

local txt, mdl = getPedClothes ( plr, 15 )

if not mdl then return end

removePedClothes ( plr, 15, txt, mdl )
end

-- losowanie 50% czy maj? by? czapki

local czapa = math.random(1,10)

if czapa > 5 then
addPedClothes(plr, czapki[randCzapki][1],czapki[randCzapki][2], 16)
else

local texture, model = getPedClothes ( plr, 16 )

if not model then return end

removePedClothes ( plr, 16, texture, model )
end


Zdaje sobi? sprawe ?e math.random z du?ej tabeli mo?e co? takiego wywo?ywa?, ale nawet na 2 tabelach to przylaguje. Jakie? pomys?y?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2021-12-30, 22:23


kamison

Przyszły programista .lua






Wiek: 25
Na forum: 3302 dni
Posty: 391
Nick w MP: kamison

Piwa: 594

Respekt: 205,3
Respekt: 205,3Respekt: 205,3

W/w kod nie powinien powodowa? freez?w, math.random() losuje liczbe od 1 do max ile jest w tabeli wi?c to nie ma zbyt du?ego wp?ywu. Poka? wi?cej kodu, mo?liwe, ?e funkcja setPedClothes() to powoduje

Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-01-01, 19:50


etrnl

CLASSIC RPG






Wiek: 26
Na forum: 2200 dni
Posty: 86
Nick w MP: anonymous

Piwa: 57

Respekt: 50

Ostrzeżeń: 40%
Nie posiadam funkcji setPedClothes(), operuje na addPedClothes i ustawianiu z tabeli przez math.random, nie bede wszystkich tabeli wkleja? ale wygl?daj? mniejwiecej tak:

Kod:



local koszulki = {
{"player_torso", "torso", 0},
{"vestblack", "vest", 0},
}


I tutaj ca?y kodzik na ustawianie ubra? ( posiadam te? zapis/wczyt do sql ale to tylko eventy na logowanie i zapis przy wyj?ciu, to lag?w nie powoduje a jedynie zmiana tych ubra? przez /cj i to ka?demu w pobli?u fpsy tragicznie obni?a.


Kod:



function setCJClothes(plr,cmd,...)

if getElementData(plr, "player:gold") ~= true and getElementData(plr, "player:premium") ~= true then outputChatBox("Nie mo?esz u?y? tej komendy - nie posiadasz konta #FFFF00PREMIUM #fffffflub #FFCC00GOLD", plr, 255, 255, 255, true) return end


if getElementModel(plr) ~= 0 then outputChatBox("* Posiadasz niew?a?ciwego skina.",plr) return end

local randTshirt = math.random(1, #koszulki)

local randHead = math.random(1, #fryzury)

local randShorts= math.random(1, #spodnie)

local randBoots = math.random(1, #buty)

local randLua = math.random(1, #lua)

local randLla = math.random(1, #lla)

local randRua = math.random(1, #rua)

local randRla = math.random(1, #rla)

local randBack = math.random(1, #back)

local randLc = math.random(1, #lc)

local randRc = math.random(1, #rc)

local randStomach = math.random(1, #stomach)

local randLb = math.random(1, #lb)

local randNaszyjnik = math.random(1, #naszyjnik)

local randZegarek = math.random(1, #zegarek)

local randOkulary = math.random(1, #okulary)

local randCzapki = math.random(1, #czapki)

addPedClothes(plr, koszulki[randTshirt ][1], koszulki[randTshirt ][2], 0)

addPedClothes(plr,fryzury[randHead ][1], fryzury[randHead ][2], 1)

addPedClothes(plr, spodnie[randShorts][1], spodnie[randShorts][2], 2)

addPedClothes(plr, buty[randBoots ][1], buty[randBoots ][2], 3)

addPedClothes(plr, lua[randLua ][1],lua[randLua ][2], 4 )

addPedClothes(plr, lla[randLla ][1],lla[randLla ][2], 5 )

addPedClothes(plr, rua[randRua ][1],rua[randRua ][2], 6 )

addPedClothes(plr, rla[randRla ][1],rla[randRla ][2], 7 )

addPedClothes(plr, back[randBack ][1],back[randBack ][2], 8 )

addPedClothes(plr, lc[randLc ][1],lc[randLc ][2], 9 )

addPedClothes(plr, rc[randRc ][1],rc[randRc ][2], 10 )

addPedClothes(plr, stomach[randStomach ][1],stomach[randStomach ][2], 11)

addPedClothes(plr, lb[randLb ][1],lb[randLb ][2], 12)

addPedClothes(plr, naszyjnik[randNaszyjnik ][1],naszyjnik[randNaszyjnik ][2], 13)

addPedClothes(plr, zegarek[randZegarek ][1],zegarek[randZegarek ][2], 14)


-- losowanie 50% czy maj? by? okulary

local oksy = math.random(1,10)

if oksy > 5 then
addPedClothes(plr, okulary[randOkulary ][1],okulary[randOkulary ][2], 15)
else

local txt, mdl = getPedClothes ( plr, 15 )

if not mdl then return end

removePedClothes ( plr, 15, txt, mdl )
end

-- losowanie 50% czy maj? by? czapki

local czapa = math.random(1,10)

if czapa > 5 then
addPedClothes(plr, czapki[randCzapki ][1],czapki[randCzapki ][2], 16)
else

local texture, model = getPedClothes ( plr, 16 )

if not model then return end

removePedClothes ( plr, 16, texture, model )
end

end
addCommandHandler("cj",setCJClothes)



Postaw piwo autorowi tego posta
 

 
Tagi: addpedclothes
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Odpowiedz do tematu

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