Модуль:Entity Sprite: различия между версиями

мНет описания правки
мНет описания правки
Строка 17: Строка 17:
     if type(t1) ~= "table" or type(t2) ~= "table" then return false end
     if type(t1) ~= "table" or type(t2) ~= "table" then return false end


     for k, _ in pairs(t1) do
    -- Проверяем все ключи в t1
     for k, v in pairs(t1) do
         if t2[k] == nil then
         if t2[k] == nil then
             return false  
             return false -- Ключ есть в t1, но отсутствует в t2
         end
         end
         if not deepEqual(t1[k], t2[k]) then
         if not deepEqual(v, t2[k]) then
             return false  
             return false -- Значения по ключу не совпадают
         end
         end
     end
     end


     for k, _ in pairs(t2) do
    -- Проверяем все ключи в t2
     for k, v in pairs(t2) do
         if t1[k] == nil then
         if t1[k] == nil then
             return false
             return false -- Ключ есть в t2, но отсутствует в t1
         end
         end
         if not deepEqual(t2[k], t1[k]) then
         if not deepEqual(v, t1[k]) then
             return false  
             return false -- Значения по ключу не совпадают
         end
         end
     end
     end