Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
MGDW4 Online Camp #2.1 Perbaikan fungsi getInput
1. Mobile Game Developer War 4: Online Camp
MGDW4 Online Camp #2.1
Game input bagian lanjut
2. Mobile Game Developer War 4: Online Camp
Error pada game input
• Masih ingat error dari
materi sebelumnya ini?
• Hal ini terjadi karena
kita tidak menyimpan
informasi status tombol
– Untuk membedakan
button press, hold, atau
release
“Catatan materi lalu: error pada slide
11 (Game Input) akan masih terjadi,
kita akan perbaiki di Materi
berikutnya.”
3. Mobile Game Developer War 4: Online Camp
private void getInput()
2
Update getInput() {
int keystate = getKeyStates();
if(!sudahJawab){
if (keystate == LEFT_PRESSED){
boolean gameover; if(!leftButtonHold){
boolean sudahJawab;
1 pilihanPemain =0; sudahJawab=true;
leftButtonHold=true;
boolean leftButtonHold,
}
upButtonHold, rightButtonHold; }else{
leftButtonHold = false;
}
1. Buat variabel untuk if(keystate == UP_PRESSED){
menyimpan status tombol kiri, if(!upButtonHold){
pilihanPemain =1; sudahJawab=true;
atas, dan kanan upButtonHold = true;
2. Update fungsi getInput agar }
}else {
memeriksa status tombol upButtonHold=false;
sebelum melakukan aksi }
if (keystate == RIGHT_PRESSED ){
– Aksi akan dapat dilakukan if(!rightButtonHold){
lagi setelah tombol yang pilihanPemain =2; sudahJawab=true;
bersangkutan dilepas rightButtonHold=true;
– Error sebelumnya yang }
}else{
terjadi karena eksekusi yang rightButtonHold=false;
terlalu cepat akan tertangani }
dengan update ini }
}
4. Mobile Game Developer War 4: Online Camp
Jenis Input dalam game
• Ada dua jenis game
input yang biasa
digunakan dalam game
– Single press
• Respon input hanya Contoh single press game, Snake.
sekali setiap menekan
tombol
• Aksi yang sama dapat
dilakukan setelah
tombol dilepas
– Continuous press:
• Respon input dilakukan
terus menerus selama Contoh continuous
tombol ditekan press game, Asphalt4
(racing game).
5. Mobile Game Developer War 4: Online Camp
Single Press
• Single press
– Respon input hanya sekali
setiap menekan tombol
– Aksi yang sama dapat dilakukan
setelah tombol dilepas
• Jika salah implementasi:
– Respon input dilakukan lebih
dari sekali
– Pada kasus Snake, setiap
berbelok pemain akan langsung
kalah karena menabrak diri
sendiri
6. Mobile Game Developer War 4: Online Camp
Continuous press
• Continuous press:
– Respon input dilakukan
terus menerus selama
tombol ditekan
– Jika salah implementasi:
• Pada kasus racing game,
pemain harus menekan
tombol berkali-kali untuk
berbelok atau menekan gas
7. Mobile Game Developer War 4: Online Camp
Tips
Sesuaikan kode input dengan game yang
kamu buat.