Dlaczego nie mogę odwołać się do tablicy za pomocą zmiennej?

0

Witam , ostatnio zacząłem bawić się w lua. Napotkałem dość nietypowy problem (w dodatku niespotykanie irytujący). Z tego co zauważyłem nie mogę odwołać się do tablicy za pomocą zmiennej ("licznik_punktow"). Skrypt działa jedynie z ostatnim wynikiem. Tak jakby traktowało tą zmienną ciągle jako string (?? dlaczego - tutaj właśnie ubolewam nad brakiem możliwości definiowania w tym języku typów zmiennych).

Kod tworzy w programie - 'marker' za pomocą buttona nazwijmy go "stwórz" w lokalizacji postaci ,a button "usuń" ma go usunąć. Jak już wspomniałem działa tylko to na ostatni stworzony marker, uprzedniego już nie da się usunąć.
((Nie chcę żeby usuwały się wszystkie naraz ,ale usuwał się zawsze ostatni "w kolejce") Próbowałem bawić się z funckją table.insert() ,ale to nie rozwiązuje probelmu - ciągle ta sama sytuacja)

Bardzo proszę o pomoc, albo jakiś sprytny pomysł. :)

licznik_punktow = 0
Markery = {}
Blipy = {}
function Dodaj_punkt()
licznik_punktow = licznik_punktow + 1
local x, y, z =  getElementPosition ( getLocalPlayer ( ) )
if licznik_punktow == 1 then
local theMarker = createMarker ( x , y , z+50, "arrow", 40, 50, 120, 250,250)
local theBlip = createBlip( x, y, z, 53, 0, 0, 0, 255)
Markery = {[licznik_punktow] = theMarker} 
Blipy = {[licznik_punktow] = theBlip} 



end 
if licznik_punktow > 1 then
local theMarker = createMarker ( x , y , z, "corona", 41, 0, 230, 0, 150 )
local theBlip = createBlip( x, y, z, 41, 0, 0, 0, 255)
Markery = {[licznik_punktow] = theMarker} 
Blipy = {[licznik_punktow] = theBlip} 


end 


end
addEventHandler( "onClientGUIClick", g_RACE_a_btn_odp, Dodaj_punkt, false );
function Usun_punkt()
if ( licznik_punktow > 0 ) then
destroyElement(Markery[licznik_punktow])
destroyElement(Blipy[licznik_punktow])

--dopiero na koncu
licznik_punktow = licznik_punktow - 1 
else
outputChatBox("Nie ma żadnych punktów kontrolnych do usunięcia!",255,0,0,true)
end
end
addEventHandler( "onClientGUIClick", g_RACE_a_btn_oup, Usun_punkt, false );
1

Problem rozwiązałem.
tablica = {[index] = wartość} (Spróbowałem sposobu znanego z innych języków)-> Markery[index] = wartość - Nie traktuje dłużej index jako string

1 użytkowników online, w tym zalogowanych: 0, gości: 1