ゲームの進行状況などをローカルストレージに保存しよう

やっぱりゲームにはセーブ機能が欲しいよなぁ(´Д`)

という願いを叶えてくれるのがローカルストレージというブラウザが持っている機能です。このローカルストレージという機能がどういったものかっていうのはさっぱりわからんが、使えると大変便利な機能です。

例えばパズルゲームの進行状況を保存したり(何面までクリアしたか)とか、ハイスコアを記録させたりとか簡単にできます。

まぁローカルストレージの詳しい話はよそのサイトでしてもらうとして(^^;)、私はこんな感じに作りました(‘ω’)ノ

var Storage = enchant.Class.create({
    initialize: function(name){
        this.name = name;
        this.data = {};
    },
    delete: function(){
        window.localStorage.removeItem(this.name);
    },
    load: function(){
        var data;
        if(window.localStorage){//ローカルストレージ機能が使用可能なら
            data =  JSON.parse(window.localStorage.getItem(this.name));
        }
        if(data){//
            this.data = data;
        }
    },
    save: function(){
        data = JSON.stringify(this.data);
        if(window.localStorage){
            window.localStorage.setItem(this.name, data); 
        }
    }
});

適当な説明

Storageというクラスを作ってストレージを操作する処理を作っています。

各メソッド名そのままの機能です(^^;)

基本的にセーブとロードができればいいんですが、開発してるときにはデータを消したりする必要もあるのでデリートも出来るようにしてあります。

クラスを生成するときに引数にローカルストレージの名前を指定します。この名前でローカルストレージが読み書きされます。

dataはゲーム内容を保存するオブジェクトです。プログラム内ではここに好きなデータを保存します。ハイスコアを保存したいならhiscoreというプロパティを作って値を保存します。

JSON.○○○というのはローカルストレージがJSON形式で保存するためらしく、そのための変換処理を行う命令のようです。

サクッと簡単な説明でしたが、実際ローカルストレージはすごい簡単に使えます(*´ω`)ただしゲームの進行状況をどういう風に保存するかは自分で考えないといけないのでそっちが問題ですね(‘ω’)ノ

同カテゴリー記事

当サイトのオリジナルゲーム(ランダム表示)

純喫茶ファッション~不思議な世界へ迷い込んだ
おすすめ度
ショートストーリー。ふと立ち寄った純喫茶「ファッション」で起こる不思議な体験。
あほげー「世紀末サラダ伝序章」のサムネイル
おすすめ度
あほげー。世紀末な感じの世界で熱い男たちの戦いの火ぶたが切って落とされる!?
カジュアルパズルゲーム「ライツオン」のサムネイル
おすすめ度
ボタンを押して決められたパターンに電気をつけるパズルゲーム
餌を全部食べるパズルゲーム「醜い蛇の子」のサムネイル
おすすめ度
餌を全部食べて巣に帰るゲーム。食べる順番が大事。全10ステージ。

記事の感想・コメント

※コメントはまだありません※

コメントを残す

メールアドレスが公開されることはありません。

ゲームジャンルタグ

新着技術ブログ記事

新着開発日記