Link GitHub: TubesUROProgramming
Anggota kelompok:
- Della Puspita (16020030)
- Nanda Pramudia Santosa (16020322)
- Ihsan M. Fauzan (16720255)
Robot memiliki health 200 dan damage 5. Kecoak memiliki health 20 dan damage 5. Robot dan kecoak memiliki jangkauan tembakan sejauh 3 satuan. Cara menjalankan program:
- Koordinat battlefield dibatasi sejauh m x n. Program akan meminta masukan m dan n, dengan m dan n bilangan bulat.
- Tampilan peta awal akan terlihat. Robot ditandai dengan angka 7, berada pada koordinat (0,0). Kecoak ditandai dengan angka 8, muncul pada koordinat secara random.
- Status robot dan kecoak akan muncul. Status ini terdiri atas posisi robot dan kecoak, jarak robot dengan kecoak, serta health robot dan kecoak.
- Selama health robot masih tersisa, program akan meminta komando dari user apakah robot akan bergerak, menembak, atau permainan akan dihentikan.
- Jika user memilih bergerak, robot dapat bergerak maju, mundur, ke kanan, atau ke kiri. Robot tidak dapat bergerak menabrak kecoak atau keluar dari peta. Program akan memberi peringatan jika robot akan menabrak kecoak atau keluar dari peta. Jika robot berhasil bergerak, health robot akan berkurang 5.
- Jika user memilih menembak, tembakan akan berhasil selama jarak antara robot dan kecoak tidak lebih dari 3 satuan. Program akan memberi peringatan jika kecoak berada di luar jangkauan. Jika robot berhasil menembak kecoak, health kecoak akan berkurang sebesar damage robot, sedangkan health robot akan berkurang 5.
- Selama robot bergerak atau menembak, kecoak akan bergerak atau menembak juga secara random. Syarat gerakan dan tembakan kecoak sama dengan robot. Jika kecoak berhasil menembak robot, health kecoak akan berkurang 5 dan health robot akan berkurang sebanyak damage kecoak. Health kecoak tidak berkurang saat kecoak bergerak.
- Setelah itu, peta koordinat dan status akan ter-update sesuai dengan pergerakan dan serangan robot dan kecoak.
- Pergerakan serta serangan robot dan kecoak terjadi berulang-ulang selama health robot masih ada. Jika health kecoak telah habis, akan muncul kecoak baru secara random. Program juga akan menghitung jumlah kecoak yang berhasil dibunuh.
- Jika permainan dihentikan, program akan menampilkan status akhir yang berisi health robot dan kecoak serta jumlah kecoak yang berhasil dibunuh.
- Jika health robot sudah habis, program akan memberitahu bahwa permainan telah selesai dan menampilkan jumlah kecoak yang berhasil dibunuh.