3타이머
거북이 그래픽에는 일정 시간이 흐른 후에 정해진 함수를 실행하는 타이머 기능이 있습니다.
t.ontimer(실행할 함수, 정해진 시간)
t.ontimer 함수는 ‘정해진 시간’이 지나면 ‘지정한 함수’를 실행하는 함수입니다. 이 기능을 사용하려면 두 가지 사항을 주의해야 합니다.
첫째, 정해진 시간의 단위는 초가 아니라 1000분의 1초(1/1000)입니다. 예를 들어 1초 후에 함수를 실행하려면 인자로 1000을, 10초 후에 실행하려면 10000을, 0.1초 후에 실행하려면 100을 지정합니다. 단위를 헷갈리지 않도록 주의하세요.
둘째, t.ontimer의 타이머 기능은 정해진 함수를 딱 한 번만 실행합니다. 즉, 타이머가 일회용이라는 뜻입니다. 타이머를 반복해서 실행하려면 타이머를 매번 다시 설정해야 하고, 그렇지 않으면 타이머는 자동으로 끝나 버립니다.
터틀런 게임에서는 일정한 시간마다 한 번씩 주인공 거북이와 악당 거북이를 움직이고, 주인공 거북이가 먹이를 먹었는지, 혹시 악당 거북이에게 붙잡히지는 않았는지 확인해야 합니다. 이번 프로젝트에서는 타이머 기능을 사용해 0.1초마다 play 함수를 실행하도록 구현하였습니다. 게임을 계속 진행하려면 play 함수 끝에서 타이머를 다시 설정하여 play 함수가 호출되도록 하고, 거북이가 붙잡히면 타이머를 다시 설정하지 않기 때문에 게임이 종료됩니다.