Witamy na GTAOnline Obecny czas to 2018-12-16, 05:50 Użytkowników: 77010
Strona główna | Użytkownicy | Grupy | Faq | Regulamin | Zaloguj
GTAONLINE.PL
Tematy otagowane jako: petla
1. Pętla usuwająca
Mam problem z systemem pachołków, mam taki kod:


function najblizszadelplayerSourcecommandName )
       
local najblizsze 3
       local iddousuniecia 
9999
       x2
,y2,z2 getElementPosition(playerSource)
       for 
k,v in ipairs getElementsByType "object" )) do
              if 
getElementModel(v) == 4032 then
                     x1
,y1,z1 getElementPosition(v)
                     
odleglosc getDistanceBetweenPoints3D(x1,y1,z1,x2,y2,z2)
                     if 
odleglosc najblizsze then
                            iddousuniecia 
v
                            najblizsze 
odleglosc
                     end
              end
       end
       destroyElement
(iddousuniecia) -- ta linijka nie dziala
end
addCommandHandler 
"usun"najblizszadel)


Błąd:

Kod:


Bad argument @ 'destroyElement' [Expected element at argument 1, got boolean]


:piwo: + R*
2. Pętla i triggerowanie
Witam, jak mam zrobić tak jak _Haze napisał?

"_Haze" napisał/a:

Remix110, to zrob petle na pojazdy na cliencie i nie rob ich na cliencie albo zrob trigera ktory daje kryptonim i trigeruj go na serwerze
3. Petla realnego czasu
Czesc, zastanawiam sie jak zrobic zeby co sekunde "refreshowalo" mi minute i godzine, poniewaz ciagle stoi w miejscu.
4. petla
Mógłby mi ktoś wytłumaczyć co źle zrobiłem?

local waliza = {
    {
3121000}, 
}

addCommandHandler("walizz", function(plr,cmd)
    for 
i,v in ipairs(waliza) do
    
local xygetElementPosition(plr)
    
createPickup xy+3zv[1], v[2], v[3], v[4])
end)


Błędy w db3: ERROR: loading script failed: cores.lua:326: unexpected symbol near ')'

Za pomoc daje piwko i repke.
5. Pętla for tabela zapis
Pomoże, ktoś zrobić taką tabelkę ?

local znajdzki = {
["id znajdzki,x,y,z,"] = "id znajdzki tzn blue t-shirt itd.",
}

Wiem ,że się da taką tabelkę zrobić tylko nie za bardzo wiem jak.

2 sprawa to chcę by jak ktoś znalazł znajdzke to żeby jak 2 raz w tą samą wchodził pisało Znalazłeś już tą znajdzke. Do tego ta tabela się przyda pewnie.

kod :

marker createMarker1497.39, -1748.6715.45"cylinder"0.525525500

function 
skinthePlayer 

givePlayerMoney thePlayer100 )

end

addEventHandler 
("onMarkerHit"markerskin)

createPickup 1497.39, -1748.6715.45312105dsa)
6. Pętla oraz warunek
Cześć. Od razu mówię że nie chcę bezsensownych tematów od osób, które chcą nabić posty a nie pomóc mi z tym problemem.

Otóż mój problem polega na tym że usuwam elementy z tablicy lecz zamiast wszystkich elementów usuwają się no, powiedzmy, wszystkie oprócz ostatniego elementu.

Mój kod:
function destroy(global_id)
    if 
not global_id then return end

    
for keyvalue in pairs(element['text']) do
        if 
value['global_id'] == tostring(global_idthen
            table
.remove(element['text'], key)
        
end
    end
end


Oczywiście używam to tak

Kod:

destroy('test')


Wiele osób będzie mówić że to trzeba dać w tonumber, ale w moim global_id nie jest liczba tylko tekst.

Próbowałem też usuwać wszystkie elementy z danego ID w taki sposób

function destroy(global_id)
    if 
not global_id then return end

    
for keyvalue in pairs(element['text']) do
        if 
value['global_id'] == tostring(global_idthen
           element
['text'][key] = nil
        end
    end
end


Ale po tym użyciu nie działa tak jakby warunek ...

Liczę na pomoc, takie rzeczy mi się nigdy nie zdarzały.
7. Pętla - ogarnięcie spamu wiadomościami
Cześć, napisałem sobie prosty system łowienia ryb i chciałem zrobić "wykrywanie" czy gracz jest przy łowisku, więc napisałem sobie taki kodzik używając pętli

Pawn
CMD:low(playerid,params[])
{
    for(new 
o;o!=sizeof(LowiskaPos);o++)
    {
        if(
IsPlayerInRangeOfPoint(playerid2.0LowiskaPos[o][0], LowiskaPos[o][1], LowiskaPos[o][2]))
        {
            if(!
MaWedke[playerid]) return SendPlayerMessage(playerid,COLOR_ERROR,"Nie masz wędki! Aby kupić wędke użyj komendy {b}/wedka{/b}");
            if(
IloscRyb[playerid] >= MAX_RYB) return SendPlayerMessage(playerid,COLOR_ERROR,"Nie możesz złowić więcej niż %d ryb. Udaj się do starego rybaka i sprzedaj je. {b}/rybak{/b}"MAX_RYB);
            
ApplyAnimation(playerid,"SWORD","sword_block",50.0 ,0,1,0,1,1);
            
SetPlayerAttachedObject(playerid0,18632,6,0.079376,0.037070,0.007706,181.482910,0.000000,0.000000,1.000000,1.000000,1.000000);
            
SetTimerEx("GraczLowi",10000,false,"i",playerid);
        }
        else
        {
            
SendPlayerMessage(playeridCOLOR_ERROR"Nie jesteś przy łowisku!"
        
}
    }
    return 
1;
}


Wszystko piękne działa, tylko że gdy gracz nie jest przy łowisku to spamuje informacją, że gracz nie jest przy łowisku. Da się to jakoś ogarnąć?
8. onClientMarkerHit łapie z byle jakiej wysokości, pętla
Witam,

Tak jak w tytule. Zrobiłem pracę i mam 2 problem. Jednym z nich jest właśnie "onClientMarkerHit", który łapie z byle jakiej wysokości i nie wiem jak temu zaradzić.

Drugim problemem jest pętla, której nie umiem zrobić , posiadam mianowicie markery na math.random i jak wjedzie się w marker (np. zaladunku) to pojawia się marker (np. rozładunku), a nie umiem już zrobić tak, żeby to się tak w kółko powtarzało. xd
9. pętla w zapisie logów
witam robi mi się pętla w mysql zapisywaniu nie wiem jak to rozwiązać jeśli jest tyle osób na duty tyle razy zapisuje się text w mysql a nie 1 rekord kod : [lua]
addCommandHandler('e', function(plr,cmd, ...)
local name = getPlayerName(plr):gsub("#%x%x%x%x%x%x","")
if not getElementData(plr,"admin") then return end
if getElementData(plr,"admin") then
local ranga = test
if not ... then
local x = getElementData(plr,"ekipaoff")
if x == false then
exports["noti"]:noti("Wyłączyłeś czat ekipy",plr)
setElementData(plr,"ekipaoff",true)
end
if x == true then
exports["noti"]:noti("Włączyłeś czat ekipy",plr)
setElementData(plr,"ekipaoff",false)
end
return end
if ... then
if getElementData(plr,"ekipaoff") == true then exports["noti"]:noti("Posiadasz wyłączone wiadomości tego czatu, nie możesz na nim pisać!", plr) return end
local msg=table.concat({...}, " ")
if (getAdmin(plr,4)) then
ranga = "CEO"
end
if (getAdmin(plr,3)) then
ranga = "Starszy Administrator"
end
if (getAdmin(plr,2)) then
ranga = "Administrator"
end
if (getAdmin(plr,1)) then
ranga = "Support"
en...
10. Pętla i tablica
Witam,

Ostatnio sobie grzebalem w LUA i chcialem zrobic cos ala swiatla policyjne do aut. Udało mi sie wystrugac cos takiego:
[lua]function add(thePlayer, seat, jacked )
local accName = getAccountName ( getPlayerAccount ( thePlayer ) )
if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Policja" ) ) then
if ( getElementModel ( source ) == 411 ) then
addVehicleSirens(source, 8, 2, false, false, true, true)
setVehicleSirens(source, 1, 0.8, 2.2, 0, 255, 255, 255, 198.9, 198.9)
setVehicleSirens(source, 2, -0.7, 2.2, 0, 255, 255, 255, 200, 200)
setVehicleSirens(source, 3, 0.5, 0.4, 0.5, 0, 0, 255, 200, 200)
setVehicleSirens(source, 4, 0.8, -2.3, 0.2, 255, 0, 0, 200, 200)
setVehicleSirens(source, 5, -0.9, -2.3, 0.2, 255, 0, 0, 200, 200)
setVehicleSirens(source, 6, 0.1, 2.7, -0.5, 0, 0, 255, 198.9, 198.9)
setVehicleSirens(source, 7, -0.1, 2.7, -0.5, 255, 0, 0, 200, 200)
setVehicleSirens(source, 8, 0.3, 0.4, 0.5, 255, 0, 0, 198.9, 198.9)
end
end
end
addEventHandler ( "onVehicleEnter", getRootElement(), add)[/lua]

I chciałbym tutaj to zrobic do kilku aut, jednak nie chce robic z miliona ifów i setVehicleSirens bo chcialem to oprzec na tablicach. I tutaj jest moj problem, jako iż moj poziom znajomosci LUA jest na naprawde niskim poziomie to chcialbym sie zapytac czy ktos by mi to pomogl zrobic. Domyślam sie że pewnie trzeba byloby zrobic petle z setvehiclesirens z zminnymi cos typu x,y,z i kolor...
11. Pętla w listitem?
Chciałbym zrobić użytek ze 100 kolorów, które posiadam w zmiennej. Komenda /kolor otwiera dialog, w którym widzę listę kolorów (przykładowo: [color=red]######[/color]n[color=yellow]######[/color]..). Chcę wykonać pętlę, [b]przez którą nie będę musiał wypisywać tych case 0..case 1...2...3..[/b]

Próba 1:

[code]if(dialogid == DIALOG_COLOR)
{
switch(listitem)
{

for(new i=0; i<101; i++)
{
case i: SetPlayerColor(playerid, KoloryGracza[playerid]);
}
}
}[/code]

Próba 2:

[code]if(dialogid == DIALOG_COLOR)
{
switch(listitem)
{

for(listitem=0; listitem<101; listitem++)
{
case listitem: SetPlayerColor(playerid, KoloryGracza[playerid]);
}
}
}[/code]

Widzimisię kompilatora:

[code]C:UsersNikodem xDesktopsamp037_svr_R2-1-1_win32gamemodesHynix.pwn(1901) : error 002: only a single statement (or expression) can follow each "case"
C:UsersNikodem xDesktopsamp037_svr_R2-1-1_win32gamemodesHynix.pwn(1901) : error 001: expected token: ")", but found ";"
C:UsersNikodem xDesktopsamp037_svr_R2-1-1_win32gamemodesHynix.pwn(1901) : warning 215: expression has no effect
C:UsersNikodem xDesktopsamp037_svr_R2-1-1_win32gamemodesHynix.pwn(1901) : error 001: expected token: ";", but found ")"
C:UsersNikodem xDesktopsamp037_svr_R2-1-1_win32gamemodesHynix.pwn(1901) : fatal error 107: too many error messages on o...
12. Pętla for.
Mam pytanie co do tej pętli. Czym różni się zastąpienie iteratora formą 'key' lub '_'?:

for i,v in ...
for 
k,v in ...
for 
_,v in ...

Wiem, że można zrobić bez tego schematu typu:

for gracz,gracze in ...

No i jeszcze dlaczego daję '...' zamiast ipairs/pairs. Tutaj jest moje drugie pytanie, kiedy używać jakiej formy i czym się one różnią? :piwo: i R* za pomoc.
13. pętla
witam, jak podpiąć pętlę pod linijke?
14. Pawno - Nie działa Pętla
Witam chciałbym, żeby animacje zostały powtarzane daną ilość razy przez pętle. Jednak w praktyce nie działa, co mam zrobić (Próbuje napisać skrypt na podnoszenie sztangli)

Oto kod:
Kod:

public OnPlayerCommandText(playerid, cmdtext[])
{
for (new mojapetla = 0; mojapetla < 10; mojapetla++)
{
if (strcmp("/cwicz", cmdtext, true, 10) == 0)
{
GameTextForPlayer(playerid, "~r~~h~Rozpoczoles cwiczenia", 3000, 3);
ApplyAnimation(playerid,"benchpress","gym_bp_geton",4.1,0,0,0,1,0);
ApplyAnimation(playerid,"benchpress","gym_bp_up_A",4.1,0,0,0,1,0);
ApplyAnimation(playerid,"benchpress","gym_bp_down",4.1,0,0,0,1,0);
return 1;
}
}
return 0;
}
15. pętla
jak zerwać pętlę
16. Pętla i warunek,
Mojego ostatniego posta nikt się nie podjął,
dotyczył on wypłat, ponieważ zrobiłem wypłaty co godzinę poprzez onClientRender, ponieważ chodziło mi o wypłaty zgodne z naszym zegarkiem, gdy 12 wypłata, gdy 18 wypłata, jednak jedna taka wypłata wykonuje się około 20 razy, ponieważ jest to event onClientRender, chcę to naprawić, jakiego zdarzenia użyć? Czy może pętli?
To kod:
[lua]addEventHandler("onClientRender", root,
function()
local time = getRealTime()
local hours = time.hour
local minutes = time.minute
local seconds = time.second

if (hours==0) and (minutes==0) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==1) and (minutes==0) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==2 and (minutes==0)) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==3) and (minutes==0) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==4) and (minutes==0) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==5) and (minutes==0) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==6) and (minutes==0) and (seconds==0) then
triggerServerEvent("update",localPlayer)

elseif (hours==7) and (minutes==0) and (seconds==0) then
triggerServerEvent("...
17. [INNE] Pętla sprawdzająca
Witam takie pytanko.
Jak wykonać pętlę sprawdzającą czy wpisany tekst w gui jest już zapisany w bazie danych (chodzi o mysql) ?:>
18. [INNE] Petla + wiadomosc
Witam mam taki kod
Pawn

if(dane[playerid][glod] >= 98)
                {
                    
SendClientMessage(playeridCzerwony"{00C3FF}Serwer: {A0A0A0}Jestes najedzony/a !");
                    return 
1;
                }
                
GivePlayerMoney(playerid, -6);
                
dane[playerid][glod] += 10;
                new 
Float:pos[3];
                
GetPlayerPos(playeridpos[0], pos[1], pos[2]);
                new 
string[64];
                
format(stringsizeof(string), "* %s zjada zapiekanke"nick(playerid));
                for(new 
i=0MAX_PLAYERSi++)
                    if(
IsPlayerInRangeOfPoint(i10.0pos[0], pos[1], pos[2]))
                        return 
SendClientMessage(iCzerwonystring);
                if(
dane[playerid][glod] <= 97)
                {
                    
dane[playerid][glod] = 100;
                    
SendClientMessage(playeridCzerwony"{00C3FF}: {00FF00}Najadles/as sie !");
                    return 
1;
                }


i teraz to was pytanie czy dobrze zrobiłem pętlę z wiadomością która będzie wysyłana do graczy na odległosci 10 m.
19. petla for
Cześć, co robi i w pętli?
Przykład:
for iv in ipairs(postacie) do

Z tego co wiem to "i " nazywa się index, tylko nie wiem co to robi. :D
20. pętla while
Witam,
do czego służy pętla while i jak ją używać??
Na manualu nic nie rozumiem, dlatego tutaj piszę.
Proszę o wytłumaczenie i przykład. :)
21. pętla w onClientRender
Jeśli użyje pętli for w evencie onClientRender będzie to nieoptymalne? Jak tak, to są jakieś alternatywy?
22. [DM] Pętla która nie wykona się dalej
Witam.
Od tegoż czasu jak zabrakło mi prądu podczas pisania mapy usunęła się lecz dałem rady ją przywrócić.
Lecz teraz kod wykonuje się do jednego momentu tak jakby do jednej linii i ... lipa.

Oto kod:
Kod:


for(new a=0; a <= MAX_OBJECTS; a++)
{
DestroyObject(objects[a]);//rozładowywani/niszczenie obiektów
pred[a] = 0;//ustawianie że gracz nie jest z czerwonego teamu
pblue[a] = 0;//ustawianie że gracz nie jest z niebieskiego teamu
} //i tu jakby się kończy wykonywanie dalszego kodu


Gdy usunę tą pętlę i będzie kod na spawn to mnie zespawnuje a gdy to jest to się zacina i lipa...

Linijka gdzie się zacina/nie wykonuje kod.
Linijka nr. 1376

Próbowałem skompilować w innym edytorze czli PawnX i nic...

Za pomoc piwka
23. [INNE] petla po wcisnieciu klawisza
siemka, mam problem gdyz nie wiem jak wykonac skrypt ktory dziala nastepujonco

wciskam klawisz wykonuje się pętla, puszczam pętla zatrzymuje się i miejsce na funkcję

[zolta]pozdrawiam i prosze o pomoc[/zolta]
24. [DM] Pętla
Siemka.;d
Mam pytanko jakiej lepiej używać pętli ?
for czy foreach ?
Która jest lepsza i w czym jest lepsza ?
25. [INNE] Pętla - Brak wykonania.
Witam, a więc zrobiłem pętle która zmienia pozycję kamery. Problem polega na tym, że ta pętla nie chce się wykonać! O to ona:

Kod:

for(new x = MAX_KAMER;x >= 0; x--)
{
InterpolateCameraPos(playerid, Cameras[x][0], Cameras[x][1], Cameras[x][2], Cameras[x][3], Cameras[x][4], Cameras[x][5], 2000, 1);
InterpolateCameraLookAt(playerid, Cameras[x][0], Cameras[x][1], Cameras[x][2], 1958.3783, 1343.1572, 15.3746, 2000, 1);
}


Proszę o pomoc nie umiem sobie z tym poradzić :( .
26. [INNE] Pętla
Wiatjcie mam takie errory:
Kod:

C:Documents and SettingsDOMPulpitPas.pwn(24) : error 028: invalid subscript (not an array or too many subscripts): "Sprite0"
C:Documents and SettingsDOMPulpitPas.pwn(24) : error 017: undefined symbol "i"
C:Documents and SettingsDOMPulpitPas.pwn(24) : error 029: invalid expression, assumed zero
C:Documents and SettingsDOMPulpitPas.pwn(24) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


Tylko wtedy gdy mam [i]

Kod:


public OnFilterScriptInit()
{
for(new g; g != GetMaxPlayers(); g++)
{
Sprite0[i] = TextDrawCreate(148.000, 482.500, "LD_POOL:ball");
TextDrawFont(Sprite0[i], 4);
TextDrawTextSize(Sprite0[i], 466.000, -60.500);
TextDrawColor(Sprite0[i], -1);
return 1;
}


Piwa
27. [INNE] Losowa pętla
Witam, mam pytanie: Jak zrobić losową pętlę, np. najpierw bierze id 3, później 7, 5, 1, 6 itd, bo jak zrobię pętlę

Kod:

for(new i = 0; i < 20; i++)


To bierze 0, 1, 2, 3 itd, a ja chcę, np 1, 0, 3, 2.
28. [INNE] Pętla i string
Witam, mam problem. Utworzyłem pętle która wyświetla przedmioty które są na ziemi jednak wyświetla tylko ona jeden przedmiot mimo że obok są inne, wyświetla ostatnie id które znajdzie. Pomożecie jakoś żeby wyświetlało wszystkie?

Kod:

for(new nr = 0; nr < sizeof(ItemInfo); nr++)
{
if(DoInRange(5.0,playerid,ItemInfo[nr][iOSX],ItemInfo[nr][iOSY],ItemInfo[nr][iOSZ])&&ItemInfo[nr][iStan])
{
new string2[1024], car, string1[64];
string1 = "";
format(string1, sizeof(string1), "(%d) %s", nr,NazwaPrzedmiot[ItemInfo[nr][iID]]);
format(string2,sizeof string2,"%sn%s",string2,string1);
car++;
ShowPlayerDialog(playerid, DIALOG_INFO, 2, "Przedmioty wokół Ciebie:", string2, "Rozumiem", "");
}
}
29. [DM] pętla na czym polega
Cześć.

mam takie pytanie jak używać a przedewszystkim jak zrobić pętlę i do czego ona jesy potrzebna.

za pomoc piwko
30. Latarka!!! i pętla dzwieku!!!
1.Czy jest możliwe zrobienie latarki by oswietlala teren tak jak lampa pojazdu?
Za pomoc :piwo: z lodowki i chetnie bym oczekiwał pomocy bo nie wiem jak zaczac.

2.Jak zrobić petle dzwieku by dany dzwiek po skonczeniu znow sie otwieral?




phpBB by Przemo modified by xXx 2003-2016

Template GTAONLINE created by gtaonline.pl



Strona wygenerowana w 0,28 sekundy. Zapytań do SQL: 8