Flash, All About Flash6 September 2007 7:56 pm 

Berikut ada sedikit script membuat highscore game flash dengan memanfaatkan SharedObject (hampir mirip dengan cookies-nya browser :D).

Langsung aja yak…

Function "simpanScore" berfungsi untuk menyimpan data skor dan nama pemain ke dalam variabel data SharedObject "pemain" yang bertipe Array.

function simpanScore(score, player) {
DataSkor = SharedObject.getLocal(”NamaGameKamu”);

if (!DataSkor.data.pemain) {
//highscores default jika blum ada datanya
DataSkor.data.pemain = new Array();
DataSkor.data.pemain.push({scorenya:540, playernya:”Jarwo”});
DataSkor.data.pemain.push({scorenya:470, playernya:”Karmin”});
DataSkor.data.pemain.push({scorenya:1800, playernya:”Bambang”});
DataSkor.data.pemain.push({scorenya:1950, playernya:”Joni”});
DataSkor.data.pemain.push({scorenya:1450, playernya:”Sudiro”});
DataSkor.data.pemain.push({scorenya:2050, playernya:”Karjo”});
DataSkor.data.pemain.push({scorenya:2500, playernya:”Mr. x”});
DataSkor.data.pemain.push({scorenya:1200, playernya:”Mbah Darmo”});
}
//menambahkan variabel score dan player ke dalam array "pemain"
DataSkor.data.pemain.push({scorenya:score, playernya:player});
DataSkor.flush();
}

Penggunaan function tersebut cukup sederhana :

simpanScore(score, player);

Masukkan function ini pada frame tertentu atau dibagian Actionscript dimana terdapat kondisi bahwa si pemain kalah atau sudah menyelesaikan game tersebut. Ingat, di function tersebut saya asumsikan kamu memakai variabel "score" untuk menampung skor pemain dan variabel "player" untuk nama pemain. Dua variabel itulah yang nantinya akan dikirimkan ke function "simpanScore".

Selanjutnya untuk menampilkan highscores dari data SharedObject tadi ke dalam flash, kita tinggal buat dynamic text misalnya kita beri nama variabel dynamic text tersebut dengan "highscores". Terus masukkan script ini pada frame tertentu atau dibagian dimana kamu ingin menampilkan highscore :D

DataSkor = SharedObject.getLocal(”NamaGameKamu”);
DataSkor.data.pemain.sortOn(”scorenya”, Array.DESCENDING | Array.NUMERIC);
for (i=0; i<7; i++) {
highscores += (DataSkor.data.pemain[i].playernya)+” : “+DataSkor.data.pemain[i].scorenya+newline;
}

Untuk mengurutkan data Array berdasarkan besar skor, kita menggunakan perintah Array.DESCENDING dan Array.NUMERIC

    
 Flash, All About Flash30 December 2006 11:33 am 

Waduw… dah lama niy gak posting sesuatu yang berbau flash, heuehehehehe… kebanyakan nulis kehidupan pribadi :P

Ehm… ehm… uhuk… uhuk… (*batuk : mode on*)

Pada dasarnya setiap movieclip yang di attach dari library atau melakukan duplikasi movieclip atau membuat movieclip baru melalui function createEmptyMovieClip(), diharuskan mempunyai depth yang unik. Hal ini dikarenakan jika ada movieclip dengan depth yang sama, maka salah satu movieclip tersebut otomatis akan di-remove dan digantikan dengan movieclip yang baru (diasumsikan kedua movieclip tersebut berada dalam timeline utama). Sebagai contoh kita melakukan attach movie sbb :

/* buat 2 buah movieclip kemudian pada library beri nama masing-masing dengan nama linkage-nya "kotak1" dan "kotak2" */

_root.attachMovie("kotak1", "kotak1", 1); //nilai depth=1
_root.attachMovie("kotak2", "kotak2", 1); //nilai depth=1

Setelah dijalankan maka yang muncul hanya movieclip "kotak2" karena movieclip "kotak1" akan otomatis di-remove karena menempati depth yang sama dengan "kotak2". Agar kedua movieclip tadi dimunculkan, kita cukup ganti depth "kotak2" atau "kotak1" menjadi angka yang berbeda satu sama lain. Semakin besar angka depth suatu movieclip maka movieclip tersebut berpeluang menempati posisi teratas (mirip dengan konsep layer di photoshop, layer paling atas akan terlihat menumpuki layer dibawahnya)

Dalam pemrograman yang lebih kompleks, misalnya dalam pembuatan game, biasanya kita memerlukan banyak movieclip dengan depth yang unik. Sebenarnya ada trik yang mudah agar kita mendapatkan depth unik tersebut, yakni menggunakan function getNextHighestDepth(). Contoh :

/* buat sebuah movieclip kemudian pada library beri nama linkage-nya "kotak" */

for (i=1; i<=5; i++) {
_root.attachMovie("kotak", "kotak"+i, _root.getNextHighestDepth());
_root["kotak"+i]._x = random(200);
_root["kotak"+i]._y = random(200);
trace("Depth ke : "+ _root.getNextHighestDepth());
}

Dengan function ini kita tidak perlu repot-repot memeriksa berapa depth yang sudah kita gunakan dan berapa yang belum pernah kita gunakan, karena dengan function ini kita akan diberikan nilai depth yang unik yakni nilai depth selanjutnya setelah depth terakhir.

Availability : ActionScript 1.0; Flash Player 7

    
 Flash, All About Flash6 April 2006 10:44 am 

Wah… akhirnya aku temukan juga cara untuk menghilangkan background di flash (maksudnya biar transparan gitu… jadi malu niy… padahal cara ini dah lama, cuma aku kurang teliti aja… huehehehehehe :) ).

Critanya kemarin lagi browsing gitu, terus disitu ada flash yang transparan thd background halaman webnya, ketika aku view souce, eh… ternyata cuma sederhana… disitu cuma ditambahin parameter wmode="transparent" wah… memang pengalaman sungguh pelajaran yang sangat berharga… :)

Ketika konfirmasi ke Om Janu eh… ternyata dari dulu dah ada di publish setting html di flash…;)) duh… begonya diriku… Terima kasih buanyak buat Om Janu atas bimbingannya selama ini… You’re the great Indonesian flasher…

    
 Flash, All About Flash29 March 2006 10:13 am 

Sungguh luarbiasa komponen flash buatan si Jolan ini, dengan menggunakan komponen tersebut kita bisa membuat smiley di textfield, dan yang lebih menyenangkan smiley bisa kita buat sesuka hati mo dianimasikan kayak apa hehehehe… :P

Meskipun masih menggunakan Actionscript 1, tetapi bagiku ini sudah cukup memuaskan untuk flasher pemula kayak diriku… :D

Kawan-kawan bisa dapatkan source FLAnya di http://www.flashcomponents.net

Jolan Smiley TextField

    
 Flash, All About Flash 9:12 am 

Ini merupakan pengalaman yang sangat berharga selama aku belajar flash, bagaimana tidak, sempat kebingungan cara mengirimkan variabel dari movie di level utama ke movie di level-level lainnya akhirnya aku temukan juga cara mengatasinya. Yap… simple juga ternyata… kita cuma memanfaatkan actionscript “_global” agar variabel yang kita buat nanti bisa diambil di movie-movie dilevel manapun. Sungguh hebat… mungkin bagi sebagian orang hal ini merupakan sesuatu yang biasa, tetapi bagi diriku adalah pengalaman yang sangat mengesankan…

Penggunaannya cukup sederhana, contoh:

_global.nama=”Zawa”;

Dengan script diatas, kita dapat memanggil variabel “nama” dimana saja, baik didalam movieklip maupun di level yang berbeda…