www.gmindo.web.id/forum
Forum ini sudah tidak dipakai lagi. Silakan ke forum baru di www.gmindo.web.id/forum Very Happy

Terima kasih

Join the forum, it's quick and easy

www.gmindo.web.id/forum
Forum ini sudah tidak dipakai lagi. Silakan ke forum baru di www.gmindo.web.id/forum Very Happy

Terima kasih
www.gmindo.web.id/forum
Would you like to react to this message? Create an account in a few clicks or log in to continue.

[Beginner - Intermediate] Script + Argument

2 posters

Go down

[Beginner - Intermediate] Script + Argument Empty [Beginner - Intermediate] Script + Argument

Post by Kevin Blaze Coolerz Sun 24 Mar 2013, 19:17

Pada kesempatan ini, saya akan membahas sedikit tentang script pada Game Maker.
Langsung saja. Buatlah sebuah script (tekan Ctrl+Shift+C), lalu ketik kode ini:

show_message(argument0)

Sekarang kita akan mengenal fungsi dari argument. Argument dimulai dari argument0, argument1, argument2... dsb, dan biasanya argument hanya sampai pada argument11 atau argument12. Jadi, perlu kita ketahui, bahwa argument itu dimulai dari 0 bukan 1.

Apa kegunaan argument dan bagaimana cara kerjanya?
Argument tentu sangat berguna, dengan menggunakan script dan bantuan argument, kita tidak perlu menggunakan kode yang sangat panjang dan membingungkan. Cara kerjanya pun sangat mudah, kita hanya perlu membuat script, lalu memasukan script tsb dalam action pada event objek kita.

Untuk lebih jelasnya, mari kita lanjut lagi.
Beri nama sc_mess untuk script tadi, lalu klik centrang hijau untuk menutup jendela script editor. Sekarang buat sebuah objek, lalu buat event key press spasi, dan masukan kode ini:

sc_mess('Bla bla bla')

Sekarang buat sebuah event key press A, lalu masukan kode ini:

sc_mess(Kesalahan)

Sekarang masukan objek nya dalam room dan play.
Jika kita menekan spasi, maka akan keluar pesan yang bertulisakan "Bla bla bla", sesuai dengan argument yang kita isi.
Tapi jika kita menekan tombol A, maka akan terjadi error, itu disebabkan karena argument yang kita masukan salah. Seharusnya kita memasukan argument0 dalam bentuk string, karena kita menggunakan fungsi show_message(). Kecuali jika kita membuat sebuah variable yang bernilai string, maka argument dapat diterima. Sebagai contoh, ikuti langkah ini:

Buat create event, lalu isi kode ini:

pesan = "Tes tes 1 2 3"

Lalu pada event key press A tadi, ganti jadi ini:

sc_mess(pesan)

Lalu jalankan gamenya, dan tekan tombol A, maka akan keluar pesan "Tes tes 1 2 3", sesuai dengan variable yang kita buat.

Sekarang kita buat sebuah script lagi, dan isi dengan kode ini:

*note: abaikan tulisan merah, dan tulisan setelah //

draw_text(argument0,argument1,argument2)
atau jika ingin letak x nya sudah ditentukan, bisa menghilangkan argument0 nya, jadi seperti ini

draw_text(100,argument0,argument1)

//x = 100, y dan text nya belum ditentukan. Bisa juga y nya yang kita tentukan, dan bisa juga teksnya, semuanya terserah sesuai dengan keinginan kita.
//ingat ! argument selalu dimulai dari 0, bukan 1

atau jika kita mau menggunakan variable untuk argumentnya, kita bisa membuatnya seperti ini:

xx = argument0
yy = argument1
teks = argument2
draw_text(xx,yy,teks)
//untuk ini, argumentnya boleh tidak urut, tapi biasakanlah untuk teratur, agar tidak bingung sendiri

*note: abaikan tulisan merah

Kita ambil kode yang pertama, yaitu draw_text(argument0,argument1,argument2)
Beri nama sc_draw, dan klik centrang hijau.

Lalu, pada objek tadi, buat draw event, dan masukan kode ini:

sc_draw(10,20,'Draw text')

Dan klik play, maka kita akan melihat tulisan "Draw text" pada koordinat x = 10, y = 20.
Sekarang coba kita masukan kode ini pada create event:

Code:
xx = room_width/2
yy = room_height/2
text = "testing testing tung"

Dan kita ubah kode pada event draw tadi, menjadi:

Code:
draw_set_halign(fa_center) //horizontal align nya di tengah / center
draw_set_valign(fa_center) //vertikal align nya di tengah / center
sc_draw(xx,yy,text)

Lalu klik play. Sekarang kira melihat tulisan "testing testing tung" pada tengah-tengah room, itu disebabkan kita menggunkan fungsi room_width/2, artinya lebar ruang dibagi 2, dan room_height/2 yang berarti tinggi ruang dibagi 2.

Dari contoh-contoh diatas, dapat kita ambil kesimpulan:
1. Script dapat digunakan lebih dari 1x dan dapat digunakan oleh semua objek. Dan tentunya script yang digunakan untuk action tidak lebih panjang dari kode fungsi aslinya.
2. Argument pada script bisa menggunakan variable, dan argumentnya dapat kita tentukan sendiri.
3. Maksimal argument yang digunakan sesuai dengan argument pada fungsi yang kita gunakan sendiri.
Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 28
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Beginner - Intermediate] Script + Argument Empty Re: [Beginner - Intermediate] Script + Argument

Post by zebrakelabu Mon 25 Mar 2013, 15:25

sip nice share Smile

Kalo aku boleh tambahkan, script dengan argumen bisa dipakai untuk menyingkat perintah2 GML yang panjang2 ....

contoh: draw_sprite_ext(sprplayer,0,x,y,1,1,0,c_white,1);

buatlah script dengan nama singkat, draw_ex misalnya, atau draw_e, terserah aja. isikan dengan perintah diatas. jadinya kalau mo pakai tinggal ketik draw_ex saja.

keuntungan: lebih singkat, hemat ngetik.
kerugian: tidak terbantu oleh auto-complete editor. artinya harus benar2 hafal berapa jumlah dan tipe argumennya supaya ngga salah.
zebrakelabu
zebrakelabu
Admin
Admin

100%
Jumlah posting : 933
Points : 960
Join date : 06.01.13
Lokasi : Jakarta

http://www.project25games.com

Kembali Ke Atas Go down

[Beginner - Intermediate] Script + Argument Empty Re: [Beginner - Intermediate] Script + Argument

Post by Kevin Blaze Coolerz Mon 25 Mar 2013, 18:57

^
seep om, kalo mau yg lebih bagus dibuat jadi extension Very Happy
agak ribet dikit gpp, yg pnting hasil ny Smile
Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 28
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Beginner - Intermediate] Script + Argument Empty Re: [Beginner - Intermediate] Script + Argument

Post by Sponsored content


Sponsored content


Kembali Ke Atas Go down

Kembali Ke Atas

- Similar topics

 
Permissions in this forum:
Anda tidak dapat menjawab topik