最近はモバゲーやmixiアプリといった、
ブラウザベースのゲームが流行っていますよね。
サイブリッジでも積極的に取り組んでいます。
ちなみに自分は学生の頃、俗に言うブラウザゲームや
Flashゲームにハマって夜更かしすることも多かったので、
社内でこのような案件が増えてきたのは嬉しい限りですw
こうした業界の流れもあるので、HTMLやPHPはもちろん、
最低限のActionScriptぐらいは書けないといけないですよね!
というわけで今回は、プログラムが書けないデザイナーでも
簡単に利用することができる、SharedObjectについてご紹介します。
SharedObjectって何?
すでにご存知の方も多いかもしれませんが、SharedObjectというのはFlash版cookieでおなじみのアレです。
ユーザーのローカルに変数などのデータを格納できるので、
動画共有サイトの音量やミュートの設定を他ページでも引き継いだり、
わざわざデータベースを使って設定ファイルを作る必要もないような、
一時的なデータをユーザ側に保存させる時などによく利用されます。
SharedObjectの凄いところ
cookieはブラウザの設定で削除できたり、保存期間の指定が可能ですよね。SharedObjectは、
ユーザ側が意図的に削除しない限り永久的にデータが残り続けます。
そんなことから、Flashゲームのセーブデータなどでも幅広く利用できます。
CGIを動かす必要すらないのでサーバの負荷も気にする必要がありません。
早速データを保存しましょう!
「データの保存なんてすごい大変そう」と思う方もいるかも知れませんが、全然そんなことはありません。たとえばユーザー側に「サイブリッジ」という
文字列を保存させるには、下記の通りに記載するだけで完了します。
var so = SharedObject.getLocal("savedata" , "/");
so.data.cybridge = "サイブリッジ";
so.flush();
まずはSharedObjectをsoという変数に代入します。
この一行だけで下準備完了です(笑)。
あとはご覧の通り、soのdataプロパティ内に変数を入れていくだけでOK。
データは自動的に保存されていきますが、念のため最後にso.flush();で保存します。
アクセスカウンタを作る
たとえばこんな感じに書くだけで、
訪問者別のアクセスカウンタなんかも作れますね。
var so = SharedObject.getLocal("lab20100226" , "/");
if (so.data.counter == undefined) {
so.data.counter = 1;
} else {
so.data.counter++;
}






