function EventLoopCoroutine()
    dialogCoroutine = coroutine.create(function()
        loadBackground("res/backgrounds/himmel.png", 0)
        loadMusic("res/music/02 - Chaining.mp3")
        local currentTime = getTime()
        while getTime() - currentTime < 1.5 do
            drawText("Leiblich Pharmaceuticals II", 100, 100, 30)
            coroutine.yield()
        end
        playMusic()
        drawBackground(getScreenWidth()/2, getScreenHeight()/2, 1.68, 0)
        dialogBox({
        "[Enomoto] The Plan has started, sir.",
        "[???] Good job, Enomoto, good job.",
        "[???] How is it going with SPHIA?",
        "[Enomoto] Satoru has no reason to suspect anything. Sayaka is stable.",
        "[Enomoto] DID is a pretty interesting thing, as we've found...",
        "[Enomoto] It might give us more insight into the \"Third Eye.\"",
        "[???] Very good. Continue."
        }, {})
        while isDialogExecuted() do 
            coroutine.yield()
        end
        stopDrawBackground(0)
        while getTime() - currentTime < 1.5 do
            drawText("Self", 100, 100, 30)
            coroutine.yield()
        end
        stopMusic()
        local currentTime = getTime()
        while getTime() - currentTime < 0.2 do
            coroutine.yield()
        end
        unloadMusic()
        loadMusic("res/music/11 - Shadow.mp3")
        dialogBox({
        "[???] At the end, who am I?",
        "[???] I've no memories, no body... But I have consiousness.",
        "[???] At least, I know that I am me.",
        "[???] I feel that I should stop Leiblich and help someone called Yukidoh Sayaka."
        }, {})
        while isDialogExecuted() do 
            coroutine.yield()
        end
        stopMusic()
        unloadBackground(0)
        unloadMusic()
        loadScript("scripts/SE05.lua")
    end)
end

function EventLoop()
    if dialogCoroutine and coroutine.status(dialogCoroutine) ~= "dead" then
        coroutine.resume(dialogCoroutine)
    end
end

setFont("res/InterTight-Regular.ttf")
EventLoopCoroutine()