Im not sure but I think it may be due to the buttons event-priority. Try this
function continu_leave()
{
beep();
wait(1);
proc_kill((void*)continu_over);
}
Otherwise check proc_status(continu_over) after the proc_kill to see if all continu_over's were killed or not.
It may be have been successfully kill'ed but is being re-triggered for some reason.