copter={
    name="copter",
    hab=7,
    x=9,
    y=2,
    w=96,
    h=80,
    flip=false,
    frame=0,
    wait=0,
    step=0,
    energy=_energy,
    max_energy = _energy,
    hit=zombie.hit,
    update=zombie.update_normal, 
    draw=zombie.draw,
    jumpfwd=false,
    anim={},
    bb={x=16,y=3,w=80,h=29},
    can_warp=false,
    warping=false,
    shrink=1,
    d_shrink=1,
    angle=0,
    d_angle=15,
    dying=false,
    death_time=40,
    enabled=true,
    disable_reason="",
    enabled=true,
    gir = {}
}

function copter.init()
    local world_x, world_y = coords.room_to_world(copter.hab,copter.x,copter.y)
    copter.x=world_x
    copter.y=world_y
end

function copter.draw()
    local curr_sf = surf.source()
    surf.source(tiles2)
    local scr_x, scr_y = viewp:screen_coords( copter.x, copter.y )
    draw.surf(0,0,copter.w,copter.h,scr_x,scr_y,copter.w,copter.h,copter.flip)
    if copter.wait==0 or copter.wait==32 then
        copter.gir[1] = math.random(8)-1
        copter.gir[2] = math.random(4)-1
        copter.gir[3] = math.random(8)-1
        copter.gir[4] = math.random(6)-1
        copter.gir[5] = math.random(8)-1
        copter.gir[6] = math.random(4)-1
    end
    if copter.wait>=0 and copter.wait<8 then
        draw.line(scr_x+47,scr_y+16,scr_x+14,scr_y+17+copter.gir[6],16)
        draw.line(scr_x+49,scr_y+23,scr_x+49+copter.gir[1],scr_y+40,16)
        draw.line(scr_x+51,scr_y+22,scr_x+93,scr_y+27+copter.gir[2],16)
    elseif copter.wait>=8 then
        draw.line(scr_x+49,scr_y+23,scr_x+19+copter.gir[3],scr_y+41,16)
        draw.line(scr_x+51,scr_y+23,scr_x+64+copter.gir[4],scr_y+38,16)
        draw.line(scr_x+47,scr_y+16,scr_x+43+copter.gir[5],scr_y+8,16)
    end
    surf.source(curr_sf)
end

function copter.update()
     copter.step = copter.step +1
     copter.wait = copter.wait +1
     if copter.wait==16 then
        copter.wait = 0
    end
end