Shock Wave ゲームを作ろう
「モグラたたき」を作ろう
(その6)


15 dcrファイルを作ろう。
ゲーム「モグラたたき」はできました。では次にShockWaveファイルを作りましょう。
手順は簡単です。"ファイル"メニュー > "ShockWaveムービーとして保存"を選択するだけです。ファイル名は"MOGURA.DCR"としておきましょう。こうすることで19Kあったファイルが約3Kに圧縮されました。しかもdcrファイルはDirectorでも開けませんので、あなたの書いたスクリプトはもう誰も読むことはできません。これで安心してホームページに上げられます。

16 HTMLファイルを作ろう。
ただdcrファイルだけをサーバーにアップしても、遊べることは遊べますが、やはりかっこ悪いですしゲームの説明もできません。ここはやはりきちんとタグを組んで、HTMLファイルを作りましょう。
HTMLファイル上に ShockWave を配置するタグは以下のとおりです。

<EMBED SRC = "MOGURA.DCR" WIDTH=320 HEIGHT=240>

"MOGURA.DCR"は ShockWaveファイル名、320は画面の横幅、240は高さです。
詳しくはここのソース等を参考にしてみて下さい。

17 自分のサイトにアップしよう。
ローカルでHTMLファイルを開いて動作確認が終わったら、次はいよいよホームページへのアップです。
アップは JPG や GIF といった画像ファイルと同様に FTP でアップします。ただし DCR の場合、それらの画像ファイルと違い、注意しなければならないのは、サーバーに MIME 設定が必要な点です。この MIME がされていないと、ブラウザで見ても「なんだろうアイコン」になってしまいます。設定の仕方はプロバイダーによってマチマチですし、中には設定の必要がない場合もありますので、各プロバイダーの指示に従って下さい。設定する項目は次のとおりです。

 MIME type : application
 Sub type : x-director
 Extensions : dcr,dir,dxr


18 最後に。。。
さて長々と説明してまいりましたが、Shock Wave ゲームを作ろう「モグラたたきを作ろう」はこれにて終了です。お疲れ様でした。
今回は最も簡単で、かつイメージが沸きやすいサンプルとして「モグラたたき」を作りましたが、色々なゲームを作ろうと思うと、今回の内容ではまだまだ不充分です。例えばサウンドも付いてませんし、グローバル変数も使ってません。さらにはリスト、スプライトの移動等々を使うことで、ゲームの世界はまだまだ広がります。
また画像についても今回の様にDirectorのペイントウィンドウで描く事は少なく、PhotoShopや3Dソフトで作成して読み込むことが多いです。

それでは最後に、ゲームで良く使うLingoを紹介して、この場はお開きとしましょう。それぞれのシンタックスはLingo辞書に詳しく出ていますので、そちらを参考にして下さい。
add listの最後にデータを追加します
addAt listの指定した箇所にデータを追加します
case of 複数の分岐をifよりも効率良く行えます
currentSpriteNum そのスクリプトが置かれているスプライト番号を返します
cursor カーソルを指や手のひらに変えたり、カーソルを消すときに使います
deleteAt listの中のデータを削除します
duplicate() listのコピーを作成する関数
on enterFrame そのフレームに入った時に実行されるイベントハンドラ
getAt listからデータを取り出します
global 複数のスクリプトの間で変数を共有する時、宣言文に使用します
integer() 数値を整数に四捨五入します
the keyCode 最後に押されたキーのコード番号を返す関数です
on keyDown キーが押されたときに実行されるイベントハンドラです
the loc of sprite スプライトの素材(画像)を画面内で移動させる時に使用します
the memberNum of sprite スプライトの素材(画像)を他の素材と入れ換える時に使用します
on mouseEnter カーソルがスプライトの領域に入った時に実行されるイベントハンドラです
on mouseLeave カーソルがスプライトの領域を出た時に実行されるイベントハンドラです
the mouseH/the mouseV カーソルの水平位置、垂直位置を返します
puppetSound 効果音を鳴らすときに使用します
random() 1から指定した値の間のランダムな整数を返します
the rect of sprite スプライトの四隅の座標を調べたり、変更したりできます
repeat with to repeat 〜 end repeat 間の命令を繰り返し実行します
rollOver() カーソルがスプライトと重なっているかどうか調べます
setAt listの指定した箇所のデータを入れ換えます
soundBusy() サウンドが再生されているかどうかを調べます
sprite...intersects 2つのスプライトが接しているかどうかを調べます
sprite...within 片方のスプライト領域がもう一方に含まれているかを調べます
on startMovie ムービーの再生が開始された時に、一度だけ実行されるイベントハンドラです
stillDown マウスのボタンが押されているかどうかを調べます
the ticks コンピュータが起動した時からのチック数(1チック= 1/60秒)を調べます
the timer startTimerからのチック数(1チック= 1/60秒)を調べます
updateStage フレーム間の以外のタイミングでステージの描き直しを行います
the visible of sprite スプライトの表示/非表示を調べたり、変更したりできます

PREV   伝言板   HOME