Приведи пример неработающего условия, а то не понятно.
А вообще, объекты у тебя скорей всего будут в типах храниться, а значит им не нужно быть глобальными. Создавай их локально внутри функции загрузки уровня:
function LoadLevel(level%)
Local obj.ObjType
file = openfile(levelsPath + level)
while not eof(file)
obj = new ObjType
;тут считываем инфу об объекте и назначаем её в obj
wend
closefile(file)
endfunction