Jump to content

Recommended Posts

Witam, mam problem ponieważ przerabiałem skrypt z xyzzy-rp na stałe id i nie wiem jak sprawdzić czy w tablicy istnieje już dany numerek

kod server-side

  
local function findFreeValue(tablica_id) 
    local accounts = getAccounts() 
    for i, v in ipairs(accounts) do 
        local lid = getAccountData(v, "id") 
        if not --[[ jak sprawdzic czy istnieje juz konto o danym numerze ]] then 
            table.insert(tablica_id, tonumber(lid)) 
        end 
    end  
end 
  

Link to comment

Ok, poradziłem sobie z tym tworząc funkcje table.contains

  
function table.contains(table, element) 
    for i, v in ipairs(table) do 
        if v == element then 
            return true 
        else 
            return false 
        end 
    end 
    return false 
end 
  

Link to comment

Nie jest to najwydajniejsze rozwiązanie, bo za każdym razem musisz iterować po całej tablicy. Zamiast tego, mógłbyś zmienić sposób zapisywania elementów w tablicy:

tablica[id] = true -- id zajęte 
tablica[id] = nil -- id wolne 

następnie aby sprawdzić, czy dane id jest zajęte, po prostu sprawdzasz taki warunek:

if tablica[id] then 
    -- id zajęte 
else 
    -- id wolne 
end 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...