Wysłany: 2021-12-30, 03:02
etrnl
CLASSIC RPG
Wiek: 26 Na forum: 2199 dni Posty: 86
Nick w MP: anonymous
Piwa : 57
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?
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
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
Wysłany: 2022-01-01, 19:50
etrnl
CLASSIC RPG
Wiek: 26 Na forum: 2199 dni Posty: 86
Nick w MP: anonymous
Piwa : 57
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)
Tagi: addpedclothes
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: