Game ini merupakan game sederhana, yang terdiri dari sabuah window , cursor dan objek berupa lingkaran. cara memainkan game ini sangat mudah. pertama yaitu pemain mengklik botton start lalu pemain memembak sebuah objek(lingkaran) yang bergerak tak beraturan dengan sebuah cursor (menggunakan mouse).
Screenshoot :
Tampilan pada awal setelah pemain menekan tombol start.
Tampilan setelah pemain berhasil tepat mengenai sasaran, dan mendapat point satu.
Tampilan setelah pemain berhasil tepat mengenai sasaran, dan point bertambah satu.
Tampilan setelah pemain berhasil tepat mengenai sasaran, dan point bertambah satu.
Begitupun seterusnya, dan lingkaran pun semakin mengecil dan semakin cepat perpindahannya. disini dibutuhkan kecekatan sang pemain
Dan seterusnya, lingkaran pun hampir menghilang.
Permainan ini berakhir apabila lingkaran sudah tidak terlihat. dan menampilkan message box yang memberitahukan bahwa permainan telah berakhir dan menampilkan jumlah score yang telah kita kumpulkan.
?-
G_Success=0,G_Pen is pen(3,rgb(0,0,0)),
G_PenW is pen(3,system_color(window)),
G_White is brush(system_color(window)),
G_Red is brush(rgb(255,0,0)),
G_Blue is brush(rgb(0,0,255)),
G_ThisShoot:=200,
G_LastShoot:=0,
window_n( _, _, win_func, "Shooting Circle", 200, 100, 400, 300, _, c, _).
win_func(init) :-
button( G_Button, _, but_func(_), "Start", 280, 230, 80, 20).
win_func(paint) :-
text_out(20,20,print(G_Success)).
win_func(mouse_click(X,Y)):-
G_LastShoot>G_ThisShoot,
abs((G_X-X)**2+ (G_Y-Y)**2)
G_Success:=G_Success+1,
text_out(20,20,print(G_Success)+" "),
G_LastShoot:=G_ThisShoot,
beep.
but_func(press) :-
G_Time:=20,
G_Time2:=0,
G_R:=20,
G_ThisShoot:=200,
G_LastShoot:=1000,
G_Success:=0,
text_out(20,20,print(G_Success)+" "),
G_X:= -100,
G_Y:= -100,
enable_window(G_Button, 0),
G_Timer := set_timer(parent(_), 0.1, time_func).
time_func(end) :-
G_Time=0, !,
kill_timer(_, G_Timer),
message("Game Over","Score Anda adalah "+print(G_Success),i),
enable_window(G_Button, 1),
fail.
time_func(end) :-
G_Time2=0, !,
pen(G_PenW),
brush(G_White),
ellipse(G_X-G_R, G_Y-G_R, G_X+G_R, G_Y+G_R),
G_X := random(380),
G_Y := random(260),
G_Time2 :=G_Time,
(random(3)=:=0 ->
G_Time := G_Time - 1),
G_R := G_Time,
G_ThisShoot:=G_ThisShoot - 1,
pen(G_Pen),
(G_Time mod 2 =:= 0->
brush(G_Red)
else
brush(G_Blue)
),
ellipse(G_X-G_R, G_Y-G_R, G_X+G_R, G_Y+G_R),
fail.
time_func(end) :-
G_Time2:=G_Time2 - 1,
fail.
Nama : Rahmadhan Pratomo
Kelas : 3IA18
NPM : 50409024
Tidak ada komentar:
Posting Komentar