« String - Number = Number | Main | Skulls.D Trojan menyebar membawa Flashlite »
1. Buat sebuah file pertanyaan.txt dengan format sebagai berikut:
&pertanyaan1=Ini adalah pertanyaannya pertama&
&a1=ini jawaban a&
&b1=ini jawaban b&
&c1=ini jawaban c&
&d1=ini jawaban d&
&e1=ini jawaban e&
&benar1=a&
&pertanyaan2=Ini adalah pertanyaannya kedua&
&a2=ini jawaban a&
&b2=ini jawaban b&
&c2=ini jawaban c&
&d2=ini jawaban d&
&e2=ini jawaban e&
&benar2=c&
&pertanyaan3=Ini adalah pertanyaannya ketiga&
&a3=ini jawaban a&
&b3=ini jawaban b&
&c3=ini jawaban c&
&d3=ini jawaban d&
&e3=ini jawaban e&
&benar3=b&
&pertanyaan4=Ini adalah pertanyaannya keempat&
&a4=ini jawaban a&
&b4=ini jawaban b&
&c4=ini jawaban c&
&d4=ini jawaban d&
&e4=ini jawaban e&
&benar4=d&
Ini adalah data pertanyaan yang akan ditampilkan di quiz, dimana terdapat 4 pertanyaan dan masing-masing pertanyaan memiliki variabel pertanyaan,a,b,c,d,e dan benar dengan diakhiri angka urutan pertanyaan.
2. Buat file baru dengan ukuran 600 x 400 pixels, kemudian buatlah kotak di Stage dengan ukuran 550 x 350 pixels lalu beri nama layer box.

3. Buat layer baru kemudian beri nama text field, pada frame pertama letakkan input textfield dan beri nama instance name_txt.



4. Kemudian buat layer baru diatas layer text field dengan nama button lalu buatlah symbol button start kemudian letakkan di stage dan beri nama instance start_btn.


5. Kemudian buatlah layer baru diatas layer button dengan nama static text, dimana kita akan meletakkan semua static text di layer ini. Lalu letakkan static text “Online Quiz” dan “Masukan nama anda” pada frame 1. Kemudian pada frame 2 dan 3 cukup letakkan static text “Online Quiz”.

6. Lalu buat lagi layer baru dengan nama alert diatas layer static text, kemudian buat movieclip dengan nama symbol alertclip dan di dalam movieclip tersebut terdapat sebuah dynamic textfield dengan nama alert_txt dan sebuah button baru denga nama ok_btn. Letakkan movieclip alert tadi di frame 1 pada posisi tengah stage dengan nama instance alert_mc.

7. Kemudian buat layer dengan nama label, kemudian buat 3 label frame yaitu:

8. Lalu batlah layer terakhir dengan nama as letakkan diposisi paling atas. Pada layer ini kita akan meletakan semua ActionScript.

9. Pilih frame 1 pada layer as kemudian buka action panel dimana kita akan menuliskan actionscriptnya.

10. Pada langkah ini kita akan memulai sisi programming dari Flash
Dalam aplikasi quiz ini kita akan membuat 5 fungsi, yaitu:

alert_mc. _visible = false;Kemudian kita mulai membuat fungsi-fungsinya.
//Function startQuiz function startQuiz() { nama = nama_txt.text; score = 0; getPertanyaan(); }Pada fungsi ini kita menginisialisasi variabel nama & score.
//Function setButtonPil function setButtonPil() { a_btn.onRelease = function() { cekJawaban("a"); }; b_btn.onRelease = function() { cekJawaban("b"); }; c_btn.onRelease = function() { cekJawaban("c"); }; d_btn.onRelease = function() { cekJawaban("d"); }; e_btn.onRelease = function() { cekJawaban("e"); }; }Fungsi ini akan mengaktifkan event onRelease pada 5 button pilihan jawaban setelah user
// Function getPertanyaan function getPertanyaan() { qvar_lv = new LoadVars(); qvar_lv.load("pertanyaan.txt"); qvar_lv.onLoad = function(success) { if (success) { setPertanyaan(1); } else { trace("fail"); } }; gotoAndStop("quiz"); }Pada fungsi ini kita menggunakan object LoadVars untuk meload data dari file pertanyaan.txt dengan membuat object baru dengan nama qvar_lv dan kemudian mengekseusi fungsi setPertanyaan(1) untuk menampilkan pertanyaan pertama.
// Function setPertanyaan function setPertanyaan(i) { nextQst = i+1; if(qvar_lv["pertanyaan"+i] != undefined) { title_txt.text = "Pertanyaan ke-"+i; p_txt.text = qvar_lv["pertanyaan"+i]; ja_txt.text = qvar_lv["a"+i]; jb_txt.text = qvar_lv["b"+i]; jc_txt.text = qvar_lv["c"+i]; jd_txt.text = qvar_lv["d"+i]; je_txt.text = qvar_lv["e"+i]; jawaban = qvar_lv["benar"+i]; } else { endQuiz(); } }Fungsi ini dieksekusi berdasarkan nilai variabel i, jika dilihat pada fungsi getPertanyaan bahwa untuk menampilakan pertanyaan pertama maka fungsi setPertanyaan diberi nilai 1 untuk variabel i-nya. Pada fungsi ini jika variabel yang ada pada object qvar_lv mempunyai nilai (terdefinisi) maka niali-niali variabel yan sesuai dan ada di object qvar_lv ditampilkan di beberapa dynamic textfield.
//Function cekJawaban function cekJawaban(val) { alert_mc._visible = true; if (val != jawaban) { score = score - 50; alert_mc.alert_txt.text = "Jawaban anda salah, score anda berkurang 50 points"; } else { score = score + 100; alert_mc.alert_txt.text = "Jawaban anda benar, score anda bertambah 100 points "; } }Fungsi ini akan mengecek apakah jawabannya benar dan mengeksekusi kondisi tertentu seseuai dengan jawabannya serta menambahkan nilai variabel score dengan 100 points jika jawaban benar dan mengurangi nilai variabel score dengan 50 points jika jawaban salah.
// Function endQuiz function endQuiz() { gotoAndStop("finish"); score_txt.text = score+" points"; greeting_txt.text = nama+", score anda adalah:"; }Kemudian kita masukan script untuk dieksekusi ketika user mengklik button start
start_btn.onRelease = function() { startQuiz(); }Lalu masukan juga script untuk dieksekusi ketika user mengklik button OK yang ada di alert_mc
alert_mc.ok_btn.onRelease = function() { setPertanyaan(nextQst); this._parent._visible = false; }
ActionScript keseluruhan adalah sebagai berikut;
stop(); alert_mc._visible = false; function startQuiz() { _global.nama = nama_txt.text; _global.score = 0; getPertanyaan(); } function setButtonPil() { a_btn.onRelease = function() { cekJawaban("a"); }; b_btn.onRelease = function() { cekJawaban("b"); }; c_btn.onRelease = function() { cekJawaban("c"); }; d_btn.onRelease = function() { cekJawaban("d"); }; e_btn.onRelease = function() { cekJawaban("e"); }; } function getPertanyaan() { qvar_lv = new LoadVars(); qvar_lv.load("pertanyaan.txt"); qvar_lv.onLoad = function(success) { if (success) { setPertanyaan(1); } else { trace("fail"); } }; gotoAndStop("quiz"); } function setPertanyaan(i) { nextQst = i+1; if(qvar_lv["pertanyaan"+i] != undefined) { title_txt.text = "Pertanyaan ke-"+i; p_txt.text = qvar_lv["pertanyaan"+i]; ja_txt.text = qvar_lv["a"+i]; jb_txt.text = qvar_lv["b"+i]; jc_txt.text = qvar_lv["c"+i]; jd_txt.text = qvar_lv["d"+i]; je_txt.text = qvar_lv["e"+i]; jawaban = qvar_lv["benar"+i]; } else { endQuiz(); } } function cekJawaban(val) { alert_mc._visible = true; if (val != jawaban) { score = score - 50; alert_mc.alert_txt.text = "Jawaban anda salah, score anda berkurang 50 points"; } else { score = score + 100; alert_mc.alert_txt.text = "Jawaban anda benar, score anda bertambah 100 points "; } } function endQuiz() { gotoAndStop("finish"); score_txt.text = score+" points"; greeting_txt.text = nama+", score anda adalah:"; } start_btn.onRelease = function() { startQuiz(); } alert_mc.ok_btn.onRelease = function() { setPertanyaan(nextQst); this._parent._visible = false; }11. Untuk melihat apakah aplikasi quiz nya bekerja, tekan tombol crl+enter untuk test movie.
Posted by herdiansah at 5:25 PM | References
TrackBack URL for this entry:
http://www.dailyflashid.org/cgi-bin/mt/mt-tb.cgi/70.
untuk solusinya kamu bisa mengkonversi nilai variabel yang mengandung symbol & menjadi format urlcode yaitu %26 .
Untuk tabel konversinya kamu bisa lihat di URL Encoding: Reading special characters from a text file
Good point solutions. Terima Kasih
So far saya menggunakan loadXML() bila ada/dan ada kemungkinan penggunaan unique character serta memudahkan editing :)
Kalau aplikasi yang kamu buat dengan integrasi data dari server database kamu bisa menggunakan syntaxt yang akan mengkonversi nilai variabel menjadi urlencode, kalau dalam php bisa menggunakan fungsi urlencode(). Tapi kalau struktur data sudah lebih kompleks maka penggunaan data dalam format xml lebih tepat.
bagus banget...
sy lagi mo sidang PI sy ambil tema ttg portfolio, bisa minta tolong portfolio itu apa, tujuannya tuch apa, mohon dibantu. sy sendiri tau itu portfolio tapi mungkin berbeda.
sy mau buat kp/tgs mandiri tapi bingung,trus pengen ku mau buat animasi or game pake flash, mungkin sy bisa dibantu, tolong yach......
di mana yach ndapetin source code tuk buat quiz yang sederhana bgt. soalnya saya pemula bgt nich.. tolong di bantu yach..^^
Gimana sich cara membuat web seperti orangedan versi 2
tolong dong kasih tahu di dalam *.fla nya ya
kirim aja ke-email saya
kamu bisa download sourcenya di http://www.babaflash.com/tutorial2.asp?tutorialid=48
Mas, aku sudah coba.. tapi pas di klik pilihannya kok gak ada reaksi apa-apa ya.? Salah apanya ya...
Aku bikin buttonnya invisible dengan nilai alpha 0%, trus di edit up, down, dan over... atau masih ada yang kurang?
coba kamu cek lebih teliti mungkin ada yang terlewatkan... kamu coba dowload file yang saya berikan http://www.dailyflashid.org/source/Simple_Quiz/quiz.zip
ass,
mohon bantuan klo ada yang punya sample program flash untuk aplikasi kuis (kuis dengan pilihan a, b,c,d) dengan analisis terhadap jawaban yang benar atau salah. jika ada mohon kiranya dikirimkan ke email saya.
trima kasih atas segala bantuannya.
gmn cara membikin soal supaya random?
terima kasih
kk aq mau tanya??
kl tu quiz di masukin gambar,contoh movieclip gmn?bisa ga?caranya gmn?
kalo jawabannya berupa input bukan pilihan gimana caranya ya mas??
aku mau tanya
maksudnya function (success) itu apa? kok aku ga nyambung ya... success di ditu dia sebagai apa?
function cekJawaban(val), val disitu sebagai argumen fungsi ya?
trus trace ("fail") itu apa?
yang terakhir this._parent._visible=false; maksudnya apa?
tolong ya...
ini tak buat bahan ujian soalnya.
bales di emailku aja. makasih
aku coba buat game yang sama tapi g bisa.
ajarin aku buat game ya.
gimana caranya untuk menempatkan gambar pada setiap pertanyaan, bisa gk...??
Kelemahan penggunaan loadVariable() dan loadVars adalah jika nilai dari variable terdapat character "&". Ini karena jika ditemukan "&" dianggap ada variable baru.
Namun penggunaan loadVariable() maupun loadVars() tidak ada masalah jika pada nilai dari variable tidak mengandung "&"