« 予告 これから毎日パチンコ通い | メイン | スロットゲームを作ろう その2 何事ものんびりと »

スロットゲームを作ろう(2007/04/04)

 さて、前回の予告どおり、パチンコ屋通いの成果を見せていこう。服がタバコくさくてたまらん。まずは昨日の収支報告。ではなく、ステート変数を使いゲームの状態を管理するところから解説。初歩の初歩。

 まず、それにはステート変数が一つ必要だ。UJMLでは良く、画面に表示するオブジェクトの表示/非表示を管理するために、boolean型でステート変数を宣言することが多いが、今回はint型で宣言した。その名も、sBaseStatus。

<state-var name="sBaseStatus" type="int"/>

こんな感じ。(一応下のソースコードでは太字にしてある)

 この変数はint値をとることになるのだが、その値によってゲームの状態を管理しよう。最初のステップはこんなところで、実際に作ってみたサンプルはこちら。ゲームの状態を

0:スタート画面
1:ゲーム中
2:ゲーム終了(結果表示とか)

と思いっきり簡単にした。それで、それぞれの値を変更し、sBaseStatusの各値に定義したことをさせているのだが、ここでは単に<label>要素を表示されているだけ。

※おっと、せっかくなのでflash版で貼り付けようとしたが、今回はお休みということで。次回以降に持ち越し。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ujml PUBLIC "-//UIEVOLUTION//DTD UJML 2.1//EN"
"http://www.uievolution.com/dtd/ujml-2.1.dtd" [
]>

<ujml>
    <application>
   
        <state-variables>
            <state-var name="sBaseStatus" type="int"/>
        </state-variables>
   
        <script>
            sBaseStatus = 0;
        </script>

        <display>
            <!-- Display F1 function key for exiting app -->
            <fn>
                <text>終了</text>
                <event name="onselect">
                    <accelerators>
                        <key>F1</key>
                    </accelerators>
                    <script>
                        _unload();
                    </script>

                </event>
            </fn>
            <fn>
                <text>次へ</text>
                <event name="onselect">
                    <accelerators>
                        <key>F2</key>
                    </accelerators>
                    <script>
                        if(sBaseStatus==0){
                            sBaseStatus = 1;
                        }else if(sBaseStatus==1){
                            sBaseStatus = 2;
                        }else if(sBaseStatus==2){
                            sBaseStatus = 0;
                        }
                    </script>

                </event>
            </fn>
        </display>
        <states>
            <state var="sBaseStatus">
                <transition value="0">
                    <comment>スタート画面の状態:各種機能メニュー等を表示</comment>
                    <display>
                        <label>
                            <text>スタート画面</text>
                        </label>
                    </display>
                </transition>
                <transition value="1">
                    <comment>ゲーム中</comment>
                    <display>
                        <label>
                            <text>ゲーム中</text>
                        </label>
                    </display>
                </transition>
                <transition value="2">
                    <comment>ゲーム終了 結果表示等</comment>
                    <display>
                        <label>
                            <text>ゲーム終了:結果表示</text>
                        </label>
                    </display>
                </transition>
            </state>
        </states>
    </application>
</ujml>

トラックバック

この記事のトラックバックURL:
https://www.typepad.com/services/trackback/6a00d8341c2e2e53ef00e5509582318833

スロットゲームを作ろうを参照しているブログ:

コメント

この記事へのコメントは終了しました。