Di dalam loop game, game dijeda dengan menekan P, artinya loop game tidak berjalan lagi. Masalahnya adalah bahwa setelah loop ini dihentikan, P tidak dapat ditekan lagi untuk melanjutkan loop, karena itu berada di dalam loop itu sendiri. Bagaimana membuatnya sehingga ketika P ditekan lagi itu membuat loop bekerja lagi?
12
checkInput
fungsi berbeda untuk mode yang dijeda dan mode yang tidak digunakan, karena mungkin ada beberapa kontrol yang hanya tersedia dalam satu mode atau yang lain. ThecheckInput
fungsi untuk mode dihentikan sementara mungkin melakukan apa-apa lebih dari mencari jikaP
ditekan dan kemudian mengaturgameIsPaused = false
, tetapi beberapa game juga menempatkan tambahan fungsi pada layar jeda (di tahun 90-an itu populer untuk memiliki layar jeda sebagai masukan tersembunyi untuk cheat codes, modern game suka menggabungkannya dengan layar menu).checkInput
/render
/update
panggilan.Buat sedemikian rupa sehingga menekan P beralih ke loop lain yang menangani status permainan "Dijeda" dan memungkinkan untuk beralih kembali ke loop game asli dengan menekan P lagi.
Anda benar-benar dapat memasukkan semua ini ke dalam loop game itu sendiri dan memperkenalkan variabel status, jika Anda ingin dan bukannya mematikan loop, variabel status beralih di antara pelaksanaan kode khusus negara masing-masing dalam loop.
sumber