Slash Games
JapaneseEnglishKoreanShmplified ChineseTraditional Chinese
     
トップ
読み物
カレンダー
Other languages

 「カンフーファイター」制作舞台裏
 

[お知らせ] 今回使用したFLAファイルがこのページの最後でダウンロードできます

米光:今回は、全体の構成を見てみましょうか。
荻原:はい。じゃぁ、まずレイヤーとフレームから。


米光:レイヤーってのは、透明のシートみたいなものを想像すればいいんだよね。
荻原:そうです。アニメのセルみたいなものですね。
米光:そのレイヤーに、いろんな絵を置いていって。
荻原:重ねて画面を構成するわけです。
米光:「カンフーマスター」って、レイヤーいっぱいですね。
荻原:ほんとうはもっと少なくてもいいんですけど、まぁ、いつもだいたいこんな感じでやってるので、こうなってます。
米光:上の二つは、アクションスクリプト(ac)とラベル(label)を設置。残りの7つに画像が配置されてる、と。
荻原:タイトル画像(title)、ボタン(b)、スコア表示(score)、ライフ表示(life)、敵(eSet)、プレイヤー(pSet)、背景(bg)と分けて配置しています。こういう階層になっています。


米光:これって、たくさん分けてるのは、どうして?
荻原:うーん、単純に作りやすいから。
米光:それにくらべて、タイムラインは2コマ。
荻原:そうですねー。昔は、もっと多かったんですが、だんだんシンプルに、2コマで作るようになってきました。
米光:えーと、1コマ目がゲーム開始前で、2コマ目がゲーム中なわけですね。ゲームオーバーは?
荻原:ゲームオーバーも2コマ目。プレイヤーなどの制御を止めて、ゲームオーバーの文字を重ねてます。


米光:Flashって、たとえばプレイヤーの絵そのものにアクションスクリプトをつけたりするんだよね。
荻原:そうです。制御するアイテムにスクリプトをつけます。たとえば、「カンフーマスター」では、プレイヤー、敵、背景などにアクションスクリプトが組み込まれています。
米光:背景にも!
荻原:プレイヤーを動かす時、プレイヤーの位置を動かすんじゃなくて、背景を動かしてるんです。では、「背景とプレイヤーを配置して、キーを押すと移動する」ってところまでを作ってみますか。
米光:了解。まずbgのレイヤーを作って、そこに背景の絵を配置。その上にレイヤーを作って、pSetって名づけて、プレイヤーの絵を配置、と。


米光:あら、プレイヤー小さい。
荻原:プレイヤーの絵(ムービークリップ)のプロパティで縦横の大きさを変えられます。とりあえず、それぞれ倍の大きさに。
米光:で、プレイヤーのムービークリップ内のキーフレームに右キーを押した場合のアクションスクリプトをつけるんですね。
荻原:こんな感じですね。


    if (Key.isDown(39)) {
        //右
        _root.speed = -2;
        _xscale = 200;
        gotoAndStop(2);
    } 

if( ){ }
 条件分岐。( )の条件を満たした場合、{ }の処理を行う

Key.isDown( )
 キーが押されている状態を調べる。右矢印のキーコードは39なので、Key.isDown(39)は右矢印が押されているかどうかを調べるの意。


米光:もしキーを右に入れたら、以下を実行せよ、と。
 _root.speed = -2;
なので、speedの値を-2にするんですね。

荻原:そう。で、このspeedの値は、bgのアクションスクリプトのここで使われるんですよ。

    this.onEnterFrame = function(){
        _x += _root.speed;
        if (_x > 0) {
            _x -= 78;
        } else if (_x < -78){
            _x += 78;
        }
    } 

米光:_x += _root.speed;ってのは、_x にspeedの値を加算せよ、と。_x ってのは、背景のX座標。
荻原:そう。背景の絵を、speedの値だけX座標ぶんずらすわけです。キーを右に入れたときはspeedは-2になっているので、背景の絵が、左に2ドットずれるんですね。
米光:右キーを押した場合のスクリプトで、_xscale = 200;ってあったのは?
荻原:これはプレイヤーの向きです。キーを左に入れたときは、_xscale = -200;になってるんです。そうするとプレイヤーキャラクターの向きが反対になる。
米光:ほう。_xscaleって横幅を指定しているわけですよね。200って200%?
荻原:そう。最初にプレイヤーの大きさを倍にしたから、100%じゃなくて200%になってます。
米光:で、キーを左に入れたときは-200%だから、反対側に200%横幅伸ばしてるってことで、反対向きになるわけか。
荻原:そうそう。

._xscale 横幅(%)


米光:右キーと反転した感じで、左キーを入れたスクリプトをつけて、これで、いったんパブリッシュしてみよう。
■上のスクリプトを組み込んでプレイヤーキャラクタが動くようにしたバージョン
(左右矢印キーでキャラクタが動きます)

米光:あら? キーを一度入れると、止まらずに動きつづける。
荻原:あぁ。speedが2になったままになってるからですね。プレイヤーのアクションスクリプトに、これをつけたします。

    else {
        _root.speed = 0;
        gotoAndStop(1);
    }
else { }
 ifの後につけて、条件を満たしてない場合に実行する


米光:えーと、右キーを押していたら、speedに2を入れて、そうじゃない場合は、speedに0を入れる。0になると、背景が止まる。というわけですね。
荻原:これで、キーをはなせば、止まりますよ。

■キーを離すとプレイヤーキャラクタが止まるバージョン
(左右矢印キーでキャラクタが動きます)
※「playerido2.fla」をダウンロード(ZIP形式 565KB)


 今回は、とりあえずここまで!

 次回「ゲームデザイン研究所」は、「ゲームの勝敗って何?」を予定している。
乞う御期待!



米光一成(よねみつ・かずなり)
1964年生まれ。広島県出身。コンパイル、スティングを経てフリーランス。
「ぷよぷよ」「トレジャーハンターG」「バロック」「キングオブワンズ」などを企画監督脚本。ゲームデザイナー、ライター、講師 として幅広く活動中。著作に『日本文学ふいんき語り』(麻野一哉・飯田和敏・米光一成/双葉社)、『デジタルの夢でメシを食うた めにボクらは!』(米光一成編著/マイクロマガジン社)がある。
「こどものもうそう」ブログを更新中。

荻原貴明(おぎわら・たかあき)
1976年生まれ。群馬県出身。(株)デジタルビイムを経て2004年9月に独立し、フリーランスとして活動開始。
現在は、Niftyが運営する「デイリーポータルZ」「Game@Nifty」にてFlashゲームを制作。
主にFlashを使ったサイト制作、ゲーム制作を中心に活動中。

●米光一成&荻原貴明 一覧へ●

●ご意見・ご感想をお寄せ下さい●

BACK PAGE TOP
新着ニュース
記事一覧へ
Weeklyアンケート
あなたはiPhoneを買いますか?
買う

買わない

わからない

その他


現在の状況 過去の結果を見る
リリースRSSによる配信についてバナー広告問い合わせ会社概要プライバシーポリシーリンクについて
RBB TODAY RESONSE e-nenpi.com cbook24.com DOKOYO MONO ONLINE
本サイトの内容は、著作権による保護を受けています。 Copyright (c) 1998-2006 IRI Commerce and Technology, Inc. All Rights Reserved.
IRI Commerce and Technology, Inc.