/*

	a14a_hold.h

		Ｂ脚変電室(アナザーミッション用モード別設定ファイル)

	武装解除ミッション Lv5

	2002/05/20 T.Ohtani

	$Id: a14a_hold.h,v 1.21 2002/08/15 07:49:07 usr13731 Exp $





*/



//------------------------------------------------------------

// 各ミッション別で使用するdefine

//------------------------------------------------------------

#define		MISSION_HOLD		1		// 武装解除用プロック起動用



enum E_R{

	敵兵出現ポイント１ = 1,

	敵兵出現ポイント２,

	雷電道１,

	雷電道２,

	雷電道３,

	雷電道４,

	蛇道１,

	蛇道２,

	蛇道３,

	蛇道４,

	蛇道５,

	昔蛇１= 15,

	昔蛇２,

	昔蛇３,

	昔蛇４,

	昔蛇５,

}



// 敵兵ステータス

#define 警備ST	d:ENE_STATUS_GUNLIGHT d:ENE_STATUS_NORMAL -55000 0 -41000 廊下

#define 連絡ST	(d:ENE_STATUS_GUNLIGHT | d:ENE_STATUS_REPORT) d:ENE_STATUS_NORMAL -55000 0 -41000 廊下



//------------------------------------------------------------

// mode.hで呼び出されるプロック

//------------------------------------------------------------

proc 武装解除ミッション用マップ定義前設定 {

	#if d:DEBUG_PRINT

		print 'proc_set1-hold_misson'

	#endif



	// 共通システムの起動 $:クリア条件フラグ $:タイマー初期値

	@全ミッション共通システム設定 d:VR_GOAL_SCN

	@武装解除ミッション５面ＶＲウィンドウ設定

	@ＶＲクリア設定 p:load_alt_hold_a22a p:A_ＲＥＴＲＹプロック



	command セットルートオフセット d:SCN:武装解除

}



proc 武装解除ミッション用マップ定義後設定 {

	#if d:DEBUG_PRINT

		print 'proc_set2-hold_misson'

	#endif



	// 全マップ共通で使用する基本キャラの設定

	command マップ設定 廊下 変電室 -set {

		@各ミッション用ゴール表示 -54750 0 -41000	//	a_stdproc.hで定義	ゴール座標Ｘ、Ｙ、Ｚの順

		@武装解除ミッション用サウンド設定			// データは最初に呼ぶ

		@武装解除ミッション用変数設定				// ドアのスイッチなどの変数を設定

		@武装解除ミッション用コマンダー設定

		@武装解除ミッション用ＢＧＭ設定				// プレイヤー→敵兵→BGMの順で呼ぶ

		@武装解除ミッション用アイテム設置

	}



	// 各マップで使用する基本キャラの設定

	command マップ設定 廊下 -set {

//		@武装解除ミッション用監視カメラ設置

	}

}



//------------------------------------------------------------

// ＶＲウィンドウの設定と表示

//------------------------------------------------------------

proc 武装解除ミッション５面ＶＲウィンドウ設定 {

	#if d:DEBUG_PRINT

		print 'vr_window_set-hold up LEVEL2'

	#endif



	@ＶＲウィンドウ設定	[VRMSG_J:ALT_HLD_a14a] [VRMSG_E:ALT_HLD_a14a] [VRMSG_G:ALT_HLD_a14a] \	// 日、英、独

						[VRMSG_F:ALT_HLD_a14a] [VRMSG_I:ALT_HLD_a14a] [VRMSG_S:ALT_HLD_a14a] \	// 仏、伊、西

						[VRMSG_K:ALT_HLD_a14a] \												// 韓

						p:武装解除ミッション５面ステージ開始時処理								// 終了プロック





	// ＶＲウィンドウを表示する

	mesg ＶＲウィンドウ ＶＲウィンドウ君 開く



	// スタート時とクリア時に使用するカットインカメラ

	chara カメラ カットインカメラ		-c 0 -l 0 -p  0



	// スタート時のカメラ(必要な場合)

	chara カメラ設定 カットインカメラ \

		-c 1 \

		-p -54834,4309,-33143 -t -54750,0,-41000 \

		-r 327,2041,0 -f 8961 \

		-a 200 \

		-i 0 0 0 0 \

		-s 1



}







//------------------------------------------------------------

// ステージ開始時処理

//------------------------------------------------------------

proc 武装解除ミッション５面ステージ開始時処理 {

	#if d:DEBUG_PRINT

		print 'game_start!!!!!'

	#endif



	// プレイヤーやパッドの制御等を行う a_stdproc.hで定義

	@全ミッション共通ステージ開始時処理



	// カメラワークスタート(必要な場合)

	// 全体図

	chara カメラ設定 カットインカメラ \

		-c 1 \

		-p -46673,3167,-15788 -t -45839,1000,-19639 \

		-r 327,1909,0 -f 4496 \

		-a 200 \

		-i 0 0 d:START_CAMERA_CHANGE_TIME d:START_CAMERA_CHANGE_TIME \

		-s 1



	chara delay ディレイ \

		-time d:START_CAMERA_CHANGE_TIME \

		-exec {

			chara カメラ設定 カットインカメラ -s -1

		}



}









//------------------------------------------------------------

// クリアしたときの処理

//------------------------------------------------------------

proc 武装解除ミッション用クリア時処理 {

	#if d:DEBUG_PRINT

		print 'clear'

	#endif

	// 強制モーションを発動

	@全ミッション共通クリアモーション発動 d:モーションリスト:non_mclr_1 0



	// カメラを移動

	chara カメラ設定 カットインカメラ \

		-c 1 \

		-p -54831,535,-37000 -t -54831,1057,-40935 \

		-r -66,2048,0 -f 5171 \

		-a 200 \

		-i 0 0 0 0 \

		-s 1



}







//------------------------------------------------------------

// サウンドに関する設定

//------------------------------------------------------------

proc 武装解除ミッション用サウンド設定 {

	#if d:DEBUG_PRINT

		print 'sound_set-hold_misson'

	#endif



	chara サウンドマネージャー ＳＤマネ -pak 2

	@サウンド効果音設定

}



proc 武装解除ミッション用ＢＧＭ設定 {

	#if d:DEBUG_PRINT

		print 'bgm_set-hold_misson'

	#endif



	chara ＢＧＭマネージャー ＢＧＭマネ

}







//------------------------------------------------------------

// 変数に関する設定

//------------------------------------------------------------

proc 武装解除ミッション用変数設定 {

	#if d:DEBUG_PRINT

		print 'stage_var_set-hold_misson'

	#endif



	//------------------------------------------------------------

	// 武器／アイテムに関する設定

	//------------------------------------------------------------

	@武装解除キャラ別標準装備設定



	switch ( $s:選択プレイヤー) {

		case ( ライデン ){

		}

		case ( プリスキン ){

		}

		case ( スネーク ){

		}

		case ( タキシードスネーク ){

		}

		case( 前作スネーク ){

		}

		default{

			@A_弾数設定 d:武器:ＵＳＰ 0

			@A_装備武器 d:武器:ＵＳＰ

			eval ($w:アイテム数Ｒ[ d:アイテム:ダンボール] = 25);

			eval ($w:武器弾数Ｒ[ d:武器:雑誌] = 2);

		}

	}



	//------------------------------------------------------------

	// ドアに関する設定(0-開かない 1-開く)

	//------------------------------------------------------------

	$$b:ドアフラグ[0] = d:DOOR_FLAG_ENEMY_ONLY;	// ＡＢ連絡橋へのドア

	$$b:ドアフラグ[1] = d:DOOR_FLAG_ENEMY_ONLY;	// ＢＣ連絡橋へのドア

	$$b:ドアフラグ[2] = d:DOOR_FLAG_OPEN;	// 部屋西側のドア

	$$b:ドアフラグ[3] = d:DOOR_FLAG_OPEN;	// 部屋北側のドア

}







//------------------------------------------------------------

// 敵兵に関する設定

//------------------------------------------------------------

proc 武装解除ミッション用警備兵セット {

	#if d:DEBUG_PRINT

		print 'watcher_set-hold_misson'

	#endif

	switch($s:選択プレイヤー){

		case( ライデン ){



			@A_武装解除警備兵 敵兵:01 d:E_R:雷電道１ 0 d:警備ST

			@A_武装解除警備兵 敵兵:02 d:E_R:雷電道２ 0 d:連絡ST

			@A_武装解除警備兵 敵兵:03 d:E_R:雷電道３ 0 d:警備ST

			@A_武装解除警備兵 敵兵:04 d:E_R:雷電道４ 2 d:警備ST

		}

		case( プリスキン ){

			@A_武装解除警備兵 敵兵:01 d:E_R:雷電道１ 0 d:警備ST

			@A_武装解除警備兵 敵兵:02 d:E_R:雷電道２ 2 d:連絡ST

			@A_武装解除警備兵 敵兵:03 d:E_R:雷電道３ 2 d:警備ST

			@A_武装解除警備兵 敵兵:04 d:E_R:雷電道４ 5 d:警備ST

		}

		case( スネーク ){

			@A_武装解除警備兵 敵兵:01 d:E_R:蛇道１ 4 d:警備ST

			@A_武装解除警備兵 敵兵:02 d:E_R:蛇道２ 4 d:警備ST

			@A_武装解除警備兵 敵兵:03 d:E_R:蛇道３ 6 d:警備ST

			@A_武装解除警備兵 敵兵:04 d:E_R:蛇道４ 0 d:連絡ST

		}

		case( タキシードスネーク ){

			@A_武装解除警備兵 敵兵:01 d:E_R:蛇道１ 7 d:警備ST

			@A_武装解除警備兵 敵兵:02 d:E_R:蛇道２ 8 d:警備ST

			@A_武装解除警備兵 敵兵:03 d:E_R:蛇道３ 2 d:警備ST

			@A_武装解除警備兵 敵兵:04 d:E_R:蛇道４ 1 d:連絡ST

		}

		case(前作スネーク){

			@A_武装解除警備兵 敵兵:01 d:E_R:昔蛇１ 0 d:警備ST

			@A_武装解除警備兵 敵兵:02 d:E_R:昔蛇２ 0 d:警備ST

			@A_武装解除警備兵 敵兵:03 d:E_R:昔蛇３ 0 d:警備ST

			@A_武装解除警備兵 敵兵:04 d:E_R:昔蛇４ 0 d:警備ST

			@A_武装解除警備兵 敵兵:05 d:E_R:昔蛇５ 1 d:連絡ST

		}

		default{// ( ライデン )

			@A_武装解除警備兵 敵兵:01 d:E_R:雷電道１ 0 d:警備ST

			@A_武装解除警備兵 敵兵:02 d:E_R:雷電道２ 0 d:連絡ST

			@A_武装解除警備兵 敵兵:03 d:E_R:雷電道３ 0 d:警備ST

			@A_武装解除警備兵 敵兵:04 d:E_R:雷電道４ 2 d:警備ST

		}

	}

}



proc 武装解除ミッション用攻撃兵セット {

	#if d:DEBUG_PRINT

		print 'attacker_set-hold_misson'

	#endif

	@A_武装解除サポート攻撃兵 攻撃兵:01 1 0 0 0 敵兵:01

	@A_武装解除サポート攻撃兵 攻撃兵:02 2 0 0 0 敵兵:02

}





proc 武装解除ミッション用警備兵コマンダー {

	#if d:DEBUG_PRINT

		print 'wccomm_set-hold_misson'

	#endif



	chara 警備コマンダー wccomm -e {武装解除ミッション用警備兵セット}

}



proc 武装解除ミッション用攻撃兵コマンダー {

	#if d:DEBUG_PRINT

		print 'atcomm_set-hold_misson'

	#endif



	chara 攻撃コマンダー atcomm -e {武装解除ミッション用攻撃兵セット}

}







proc 武装解除ミッション用コマンダー設定 {

	#if d:DEBUG_PRINT

		print 'commander_set-hold_misson'

	#endif

	chara コマンダー 敵兵セット \

		-w 武装解除ミッション用警備兵コマンダー \

		-a 武装解除ミッション用攻撃兵コマンダー \

		-d 廊下 \

		-r -52125 0 -50250 廊下 -34500 0 -20500 廊下 \

		-c -52125 0 -50250 廊下 -34500 0 -20500 廊下 \

		-v [ene_plant_voice:01] \

		-x [ghq_area_alert_voice:w14a] \

		-y [ghq_caution_voice:w14a] \

		-z $i:敵標準麻酔持続 \

		-h $i:標準警戒時間 \

		-o $i:敵標準気絶持続 \

		-s (d:ENE_STAGE_GPS | d:ENE_STAGE_VR_ANOTHER) \

		-b $w:敵標準再発生数 \

		-m $w:スタートアラートモード \

		-f	d:E_R:雷電道２	2 t:vc044023 t:vc044023_len \ 	//	定時連絡:ライデン

			d:E_R:蛇道４	1 t:vc044023 t:vc044023_len \	//	定時連絡:スネークッッッッッ!!!!

			d:E_R:昔蛇５	2 t:vc044023 t:vc044023_len  	//	定時連絡:昔スネーク？(語尾上げ)



	//---------------------------------------------------------

	// クリアリング子画面

//	chara サブ画面 子画面



	//---------------------------------------------------------

	// クリアリングエリア０ 子画面制御

	trap clearing_0 d:PLAYER \

		-mask 出る \

		-exec {

			if($f:クリアリングフラグ０ == 1) {

				@クリアリングカメラＯＦＦ

			}

		}

}







//------------------------------------------------------------

// 監視カメラに関する設定

//------------------------------------------------------------

proc 武装解除ミッション用監視カメラ破壊時処理 $:名前 $:フラグ {

/*	if ( $:名前 == 廊下北側カメラ ) {

		eval( $b:a14a_カメラ破壊ロード回数[0] = $w:グローバルロード回数);

		eval( $b:a14a_カメラ破壊フラグ[0] = $:フラグ );

	}



	if ( $:名前 == 廊下南側カメラ ) {

		eval( $b:a14a_カメラ破壊ロード回数[1] = $w:グローバルロード回数);

		eval( $b:a14a_カメラ破壊フラグ[1] = $:フラグ );

	}

*/

}



proc 武装解除ミッション用監視カメラ設置 {

	#if d:DEBUG_PRINT

		print 'a20a0_svc_camera_set-hold_mission'

	#endif

/*

	// 北側のカメラ

	@カメラ再セットチェック $b:a14a_カメラ破壊ロード回数[0]

	if ( $f:再セットフラグ == d:TRUE ) {

		eval( $b:a14a_カメラ破壊フラグ[0] = 0 );

	}

	// A_監視カメラ $:名前 $:場所Ｘ $:場所Ｙ $:場所Ｚ $:取付縦方向 $:取付横方向 $:カメラ振り中心角 $:振り幅 $:フラグ

	@A_監視カメラ 廊下北側カメラ -56000 3000 -39000 340 0 290 275 $b:a14a_カメラ破壊フラグ[0]



	// 南側のカメラ

	@カメラ再セットチェック $b:a14a_カメラ破壊ロード回数[1]

	if ( $f:再セットフラグ == d:TRUE ) {

		eval( $b:a14a_カメラ破壊フラグ[1] = 0 );

	}

	// A_監視カメラ $:名前 $:場所Ｘ $:場所Ｙ $:場所Ｚ $:取付縦方向 $:取付横方向 $:カメラ振り中心角 $:振り幅 $:フラグ

	@A_監視カメラ 廊下南側カメラ -53500 3000 -33500 340 3072 -275 275 $b:a14a_カメラ破壊フラグ[1]

*/

}







//------------------------------------------------------------

// アイテムに関する設定

//------------------------------------------------------------

proc 武装解除ミッション用アイテム取得時番号設定 $:ボックス名 {

	#if d:DEBUG_PRINT

		print 'item_no_set-hold_misson'

	#endif

	#if d:DEBUG_PRINT

		print $:ボックス名

		print $w:グローバルロード回数

	#endif



}





proc 武装解除ミッション用アイテム設置 {

	#if d:DEBUG_PRINT

		print 'a14a_item_set-hold_misson'

	#endif

	switch($s:選択プレイヤー){

		case( ライデン ){

			@雑誌_初期設置 雑誌１ -45000 -250 -20000 0

			@雑誌_初期設置 雑誌２ -45000 -250 -18500 0

			@ダンボール_初期設置 だんぼーる -52500 0 -23500 0 25

		}

		case( プリスキン ){

			@ダンボール_初期設置 だんぼーる -52500 0 -23500 0 25

		}

		case( スネーク ){

			@雑誌_初期設置 雑誌１ -45000 -250 -20000 0

			@雑誌_初期設置 雑誌２ -45000 -250 -18500 0

			@ダンボール_初期設置 だんぼーる -52500 0 -23500 0 25

		}

		case( タキシードスネーク ){

			@雑誌_初期設置 雑誌２ -45000 -250 -18500 0

		}

		case( 前作スネーク ){

			// なし

		}

		default{

			// ライデン

			#ifndef d:FIX_MODE

				command assert(d:FALSE) 'player_err (scn) a14a_hold.h'

			#else

				@雑誌_初期設置 雑誌１ -45000 0 -20000 0

				@雑誌_初期設置 雑誌２ -45000 0 -18500 0

				@ダンボール_初期設置 だんぼーる -52500 0 -23500 0 25

			#endif

		}

	}

}

