Strange errore when reloading the scene

To create the “replay” feature, I’ve stored all of my object in a group (called localGroup), but, as my app let the user draw a line with it’s own finger, I’ve used another group (lineGroup).

There’s also a button meant to be used to perform a replay function using [lua]director:changeScene("…")[/lua]

and then the scene is reloaded correctly, but, as soon I try to draw the line, I get the following error:

[lua]game.lua:185: attempt to index field ‘parent’[/lua]

where line 185 is [lua]lines[i].parent:remove(lines[i])[/lua]

The code I’ve used to draw the line is 

[lua]

local lines = {}

local lineGroup = display.newGroup()

local prevX,prevY

local isDrawing = true

local i = 1

local function distanceBetween(x1, y1, x2, y2)

    local dist_x = x2 - x1

    local dist_y = y2 - y1

    local distanceBetween = math.sqrt((dist_x*dist_x) + (dist_y*dist_y))

    return distanceBetween

end

local function drawLine(e)

    if(e.phase == “began”) then

   

        for i = #lines, 1, -1 do

      if (lines[i]) then

       lines[i].parent:remove(lines[i])

       lines[i] = nil

      end

    end

    lines = {}

    line_number = 100

    

        

        prevX = e.x

        prevY = e.y

        isDrawing = true

        

        

    elseif(e.phase == “moved”) then

        local distance = distanceBetween(prevX, prevY, e.x, e.y)

        if(isDrawing and distance < 100) then

            if(lines[i]) then lineGroup:remove(i) end

            lines[i] = display.newLine(prevX, prevY, e.x, e.y)

            lines[i]:setColor(255, 255, 0)

            lines[i].width = 3

            lines[i].myName = “lines”

    

    

if(lines[i].y < 400) then

  for i = #lines, 1, -1 do

      if (lines[i]) then

       lines[i].parent:remove(lines[i])

       lines[i] = nil

      end

    end

 end

            local dist_x = e.x - prevX

            local dist_y = e.y - prevY

            physics.addBody(lines[i], “static”, { density = 1, friction = 0.5, bounce = -0.8, shape = {0, 0, dist_x, dist_y, 0, 0} } )

            lineGroup:insert(lines[i])

        end

   

  

    elseif(e.phase == “ended”) then

        isDrawing = true

    end

    return lineGroup

end

Runtime:addEventListener(“touch”,drawLine)

[/lua]

What can I do? Thanks!

Ops sorry, I did a mistake in the title. I would say “error” instead of “errore”

Ops sorry, I did a mistake in the title. I would say “error” instead of “errore”