・概要

 マスクのMCは、「ゲーム開始直後から、常に画面上に存在する」ため、「初期設定」「モニタリング」にも利用している。
 勿論、それらの役割をするような別のMCを作成し、配置してもいい。

・各種の初期値に関する処理

・・デバッグ用の変数

 デバッグ用の変数。この値が「1」の場合は、「デバッグモード」になり、「ダブルジャンプのカウントの最大値」などが変化する。

ASのファイル:mask.txt
 
	_root.debug=0	//デバッグ用の変数(0:通常モード,1:デバッグモード)
 

・・キー入力

 キー入力を参照。

・・ゼロ関連

 「ゼロのライフ」「ゼロのリトライの回数」「ゼロの属性」…「各種EX」「各種チップ」…などの初期値を設定している。

ASのファイル:mask.txt
 
	_root.zero_initial_life=32	//ゼロのライフの初期値
︙
 

・・深度

・・・概要

 深度の意味に関しては、参考サイト(https://hakuhin.jp/as/z.html)に丸投げ。

 一応、「ゼロの深度が、敵やアイテムなどの深度よりも大きくなるように設定」したり、「敵のエフェクトの深度が、敵の深度よりも大きくなるように設定」したりしているが、このゲームにおけるグラフィックはスカスカのAAなので、そこまで意味はないかもしれない。
 「字幕」「ポーズメニュー」「ホワイトアウト、ホワイトイン」などは、当然ながら、非常に大きな値となるように設定している。

ASのファイル:mask_depth.txt
 
_root.depth_zero=5000	//ゼロ
︙
 

・・・深度の基本値

 一部のゼロの攻撃やエフェクトなどは、「深度の基本値」を設定している。
 そして、それらのMCを出現させる場合は、「深度の基本値」を深度として設定し、「深度の基本値」を用いてインスタンス名を設定し、同時に「深度の基本値」を増加させるように処理している。
 このような処理により、深度やインスタンス名の重複を極力回避できるようにしている。

ASのファイル:mask_depth.txt
 
_root.initial_depth_zero_attack=4300	//ゼロの攻撃(初期値)
_root.depth_zero_attack=_root.initial_depth_zero_attack	//ゼロの攻撃
︙
 

 「深度の基本値」は、一定の値以上となった場合に、リセットされるようにしている。

ASのファイル:mask_depth_reset.txt
 
if(_root.depth_zero_attack>=_root.initial_depth_zero_attack+90){_root.depth_zero_attack=_root.initial_depth_zero_attack}	//ゼロの攻撃
 

・・その他

・一時停止判定、イベント停止判定:一時停止、イベント停止を参照。
・敵からのアイテムドロップの出現確率:アイテムの出現・消滅の「・敵からのアイテムドロップ」を参照。
・フレーム移動:フレーム移動を参照

・各種のMCの出現

 マスクにおいて、「フレーム(外枠)」「地形の出現判定用のMC」「敵・アイテムの出現判定用のMC」などを出現させている。

↓出現させたMC。「フレーム(外枠)」は黒線の四角形、「地形の出現判定用のMC」「敵・アイテムの出現判定用のMC」は灰色の矩形。

ASのファイル:mask.txt
 
	_root.attachMovie("frame","frame",_root.depth_frame)	//フレーム(外枠)を出現させる
︙
 

 「出現判定用のMC」に関しては、「出現」に関する処理を参照。

・各種の値のモニタリング

・・フレームのカウント

・・・概要

 Flashにおいては、複数のMCが、それぞれに記述されたASに基づいて処理を行うので、「MCの処理の順序」を把握しておく必要がある。そこで、以下のように、フレームのカウントをすることで、把握できるようにしている。

ASのファイル:mask.txt
 
onClipEvent(load){_root.count_frame=0	//フレームのカウント(検証用)}
onClipEvent(enterFrame){
	_root.count_frame++	//フレームのカウント(検証用)}
 

・・・例

 例えば、「A」「B」のMCのASにおいて、それぞれ以下のような記述をすることで、「A」「B」のMCの処理の順序を把握できる。traceに関する参考サイト(https://hakuhin.jp/as/develop.html#DEVELOP_01)。

「A」のMCのAS
 
trace(_root.count_frame+"/A")
 

「B」のMCのAS
 
trace(_root.count_frame+"/B")
 

 以下のような結果となった場合は、処理の順序が「A→B」であると把握できる。

1/A
1/B
2/A
2/B
︙
 

 逆に、以下のような結果となった場合、処理の順序が「B→A」であると把握できる。

1/B
1/A
2/B
2/A
︙
 

・・各キーの入力に関する判定

 キー入力を参照。

最終更新:2020年12月19日 09:34
添付ファイル