game Don't Make Line ini, jika ada salah satu pemainnya ada yang membentuk sebuah garis lurus secara horizontal, vertikal, dan diagonal maka pemain tersebut dinyatakan kalah.
Kelebihan dari game Don't Make Line ini kita tidak hanya bermain sendiri saja. Akan tetapi terdapat lawannya, yaitu kita melawan komputer. Permainan ini dinyatakan sebagai permainan berbasis kecerdasan buatan atau bahasa kerennya mah Artificial Intelligence (AI) karena pada game ini terdapat komputer yang bermain seolah-olah menyerupai manusia. Jadi pada game ini kita dapat mengadu kecerdasan atau kepandaian dengan komputer.
Game tersebut langsung saya tulis aja dikertas progress biar disetujui oleh kakak asisten labnya. Alhamdulillah disetuji loh, haha! Semenjak itu saya kepikiran terus buat mempelajari kodingannya. Akan tetapi saya harus mengumpulkan mood untuk mempelajarinya karena saya orangnya rada males-malesan sih. Setelah berjalannya waktu, baru deh kekumpul semua itu mood untuk mempelajari kodingan dari game tersebut. Akan tetapi sudah mendekati hari sidang Prolog tersebut. Intinya mah jangan tegang, dibawa santai aja soalnya kalo tegang pasti gabakalan selesai.
Di tempat kost-kostan nya si Rivan, saya ama temen-temen saya yang lain mencoba untuk menyelesaikan tugas tersebut sebelum hari H. Sampe begadangan juga saya jabanin dah yang penting kelar tugasnya. Temen-temen saya yang lain juga pada gitu soalnya. Hahaha! Saya pelajarin bener-bener itu kode-kode program yang ngga saya ngerti sampe pada akhirnya saya nemuin dan mahamin sedikit demi sedikit. Maklum ajalah namanya juga dalam tahap pembelajaran. Hohoho.
Langsung aja kali ya, sebelumnya kita jalankan dulu aplikasi Strawberry Prolog yang tentunya sudah terpasang pada PC/Laptop yang akan kita gunakan. Lalu pilih toolbar Open untuk mencari game Don't Make Line pada direktori yang benar yang terdapat didalam aplikasi tersebut. Jika sudah dibuka, maka akan muncul tampilan kode-kode program game Don't Make Line seperti gambar dibawah ini.
Dari seluruh kode-kode tersebut, hanya beberapa saja yang dapat saya rubah-rubah supaya tampilannya berbeda dengan yang sudah terdapat pada aplikasi tersebut. Kode-kode yang dapat saya rubah diantaranya adalah sebagai berikut :
Tampilan jendela permainan
set(situation([[[f,f,f],[f,f,f],[f,f,f]], [[f,f,f],[f,f,f],[f,f,f]], [[f,f,f],[f,f,f],[f,f,f]]])),
set(end_flag(false)),
pen(2,rgb(0,0,0)),
window(_,_,win_func(_),"Don't Make Line",200,200,260,300).
Pewarnaan
win_func(paint).
colour(f):-
brush(rgb(155,155,155)).
colour(x):-
brush(rgb(170,0,255)).
colour(o):-
brush(rgb(255,125,255)).
nb : f=warna papan, x=warna player, o=warna AI
Message box
win_func(mouse_click(X,Y)):-
beep.
think(Pos2,Pos):-
failure(x,Pos),
message("Maap-Maap Kate Aje Ni Ye...","Masa lawan AI cupu aje lu kalah?!",s),
set(end_flag(true)), !, fail.
think(Pos2,Pos):-
member3(Pos,f,X,Y,Z),
move(Pos2,Pos,o,X,Y,Z),
win(x,Pos2,1),
message("Wa wa wa wa waduuuh...","Yaelah nyerah aja kali daripada buang-buang waktu ane aje.",i).
think(Pos2,Pos):-
member3(Pos,f,X,Y,Z),
move(Pos2,Pos,o,X,Y,Z),
nolose(x,Pos2,2).
think(Pos2,Pos):-
member3(Pos,f,X,Y,Z),
move(Pos2,Pos,o,X,Y,Z),
nolose(x,Pos2,0),
message("Ceileee...","Roman-romannye elu bakal menang nih.",n).
think(Pos2,Pos):-
member3(Pos,f,X,Y,Z),
move(Pos2,Pos,o,X,Y,Z),
message("Yoi Coy...","/GG banget dah elu kayak Toy yang paling GG.",!),
set(end_flag(true)).
Dari hasil otak-atik tersebut, hasilnya jadi kayak gini nih.
Haha menarik kan teman-teman sekalian. Sebenernya ada lagi sih tambahanselain kode-kode diatas. Tambahan yang saya maksud itu buat bikin pilihan menu seperti New Game, Option, Help, dll. Cuma sayangnya saya lupa naro backup kode nya dimana. Tapi nanti kalo ketemu pasti saya update di blog ini lagi ato ngga saya kasih link ke artikel saya yang lainnya. Ditunggu aja ya ato ngga berlangganan blog ini via email aja :)
sumber : google.co.id