/*

	a20a_elim.h

		Ｅ脚集配場(敵兵排除ミッション用モード別設定ファイル)



	2002/07/24 T.Ohtani

	$Id: a20a_elim.h,v 1.13 2002/10/03 07:44:49 usr13731 Exp $



memo: このステージはミッションの性質上クリアリングをスキップしています。

*/



#include "a_item_info.h"

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

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

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

#define		MISSION_ELIM		1		// 敵兵排除用プロック起動用



enum E_R {

	雷道１ = 4,	//ライデン

	雷道２,

	雷道３,

	雷道４,

	ぷり１,		// ぷりすきん

	ぷり２,

	ぷり３,

	ぷり４,

	辻斬１,		// 刀ライデソ

	辻斬２,

	辻斬３,

	辻斬４,

	蛇道１ = 20,// スネーク

	蛇道２,

	蛇道３,

	蛇道４,

	蛇道５,

	滝蛇１,		// タキシードスネーク

	滝蛇２,

	滝蛇３,

	滝蛇４,

	滝蛇５,

	滝蛇６,

	昔蛇１,		// 前作スネーク

	昔蛇２,

	昔蛇３,

	昔蛇４,

	昔蛇５,

	昔蛇６,

}



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

// 警備とか、アイテムとかの位置。

#define ベルト乗り場 48000 1000 -79500

#define 乗り場前内側 50000 0 -82000

#define 下ベルト内右 56000 0 -85000

#define ベルト出口前 59000 0 -94500

#define 東階段踊り場 63500 2250 -95500

#define ベルト出口台 57500 1000 -94500

#define はしご部屋前 45500 -4500 -87500

#define ベルト入口南 46750 0 -90000

#define 最北通路中央 55000 0 -97875

// 穴とか。

#define 北横ベルト穴 50000 0 -96250

#define 中横ベルト穴 51500 0 -91650

#define 中縦ベルト穴 49500 0 -90375

#define 南左ベルト穴 50000 0 -80250

#define 南右ベルト穴 54000 0 -80250



// 敵兵ステータス

#define a20a_警備ST d:ENE_STATUS_GUNLIGHT d:ENE_STATUS_NORMAL

// 攻撃兵は 		ステータス				拡張ステータス 		装備 の順

#define a20a_攻撃ST d:ENE_STATUS_GUNLIGHT d:ENE_STATUS_NORMAL d:ENE_EQUIP_TYPE_NORMAL

#define a20a_散弾ST d:ENE_STATUS_GUNLIGHT d:ENE_STATUS_NORMAL d:ENE_EQUIP_TYPE_SHOTGUN

#define a20a_光盾ST d:ENE_STATUS_GUNLIGHT d:ENE_STATUS_NORMAL d:ENE_EQUIP_TYPE_LIGHT_SHIELD



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

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

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

proc 敵兵排除ミッション用マップ定義前設定 {

	#if d:DEBUG_PRINT

		print 'proc_set1-elim_misson'

	#endif

	// 共通システムの起動 $:クリア条件フラグ $:途中ステージフラグ

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

	@敵兵排除ミッション４面ＶＲウィンドウ設定



//	テイルズＥ以外では

#ifndef d:E_TALES

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

//	テイルズＥのときは

#else

	@テイルズＥ用ＶＲクリア設定雷電

#endif



	@敵兵排除ミッション用変数設定		// ドアのスイッチなどの変数を設定



	command セットルートオフセット	d:SCN:敵兵排除 // a_vardef.h のenum



}



proc 敵兵排除ミッション用マップ定義後設定 {

	#if d:DEBUG_PRINT

		print 'proc_set2-elim_misson'

	#endif



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

	command マップ設定 Ｅ脚１Ｆ Ｅ脚２Ｆ Ｅ脚Ｂ１ Ｅ脚Ｂ１倉庫 Ｅ脚Ｂ１梯子部屋 -set {

		@各ミッション用ゴール表示 58000 0 -79000

		@敵兵排除ミッション用サウンド設定	// データは最初に呼ぶ

		@敵兵排除ミッション用コマンダー設定

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

	}



	command マップ設定 Ｅ脚１Ｆ -set {

		@敵兵排除ミッション用監視カメラ設置

		@敵兵排除ミッション用Ｅ脚１Ｆアイテム設置

	}



	command マップ設定 Ｅ脚Ｂ１ -set {

		@敵兵排除ミッション用Ｅ脚Ｂ１アイテム設置

	}



	command マップ設定 Ｅ脚Ｂ１倉庫 -set {

		@敵兵排除ミッション用Ｅ脚Ｂ１倉庫アイテム設置

	}



	command マップ設定 Ｅ脚Ｂ１梯子部屋 -set {

		@敵兵排除ミッション用Ｅ脚Ｂ１梯子部屋アイテム設置

	}

}





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

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

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

proc 敵兵排除ミッション用サウンド設定 {

	#if d:DEBUG_PRINT

		print 'sound_set-elim_misson'

	#endif



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

	@サウンド効果音設定

}



proc 敵兵排除ミッション用ＢＧＭ設定 {

	#if d:DEBUG_PRINT

		print 'bgm_set-elim_misson'

	#endif



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

}







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

// 変数に関する設定

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

proc 敵兵排除ミッション用変数設定 {

	#if d:DEBUG_PRINT

		print 'stage_var_set-elim_misson'

	#endif



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

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

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

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

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

	$$b:ドアフラグ[2] = d:DOOR_FLAG_ENEMY_ONLY;	// ヘリポートへのドア

	$$b:ドアフラグ[3] = d:DOOR_FLAG_CLOSE;	// 倉庫へのドア

	$$b:ドアフラグ[4] = d:DOOR_FLAG_CLOSE;	// はしご部屋へのドア



	// 初期装備セット

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

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

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

	@敵兵排除用キャラ別標準装備設定



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

		case(ライデン){

			@A_弾数設定 d:アイテム:ＡＫサプレッサ 121

			@A_装備武器 d:武器:ＡＫＳ

		}

		case(スネーク){

			@A_弾数設定 d:武器:Ｍ４ 61

			@A_装備武器 d:武器:Ｍ４

		}

		case(プリスキン){

			@A_弾数設定 d:武器:Ｍ４ 31

			@A_装備武器 d:武器:Ｍ４

		}

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

			@A_弾数設定 d:武器:Ｍ９ 5

			@A_弾数設定 d:武器:Ｍ４ 61

			@A_装備武器 d:武器:Ｍ４

		}

		case(刀ライデン){

			// 刀ライデンは刀のみに生きるのでつ。

			@A_弾数設定 d:武器:ブレード 1

			@A_装備武器 d:武器:ブレード

		}

		case(前作スネーク){

			@A_弾数設定 d:武器:Ｍ４ 61

			@A_装備武器 d:武器:Ｍ４

		}

		default{ // ライデン

			#if d:DEBUG_PRINT

			if(`@スネーク達`){

				@A_弾数設定 d:武器:ＰＳＧ１ 20

				@A_弾数設定 d:武器:ＰＳＧ１−Ｔ 7

				@A_アイテム数設定 d:アイテム:ジアゼパム 4

				@A_装備アイテム d:アイテム:ジアゼパム

				// Q装備

				print'debug default setting - snake items'

			} else {

				@A_弾数設定 d:武器:ＰＳＧ１ 20

				@A_弾数設定 d:武器:ＰＳＧ１−Ｔ 7

				@A_アイテム数設定 d:アイテム:ジアゼパム 5

				@A_装備アイテム d:アイテム:ジアゼパム

				// Q装備

				print'debug default setting - raiden items'

			}

			#endif

		}

	}



}

/*************************************************************************************/

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

/*************************************************************************************/

proc 敵兵排除ミッション４面ＶＲウィンドウ設定 {

	#if d:DEBUG_PRINT

		print 'vr_window_set'

	#endif



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

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

						[VRMSG_K:ALT_ELM_a20a] \												// 韓

						p:敵兵排除ミッション４面ステージ開始時処理								// 終了プロック





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

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





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

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



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

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

		-c 1 \

		-p 60727,2067,-77550 -t 57661,765,-79244 \

		-r 232,2743,0 -f 3737 \

		-a 200 \

		-i 0 0 0 0 \

		-s 1



}







/*************************************************************************************/

// ステージ開始時処理

/*************************************************************************************/

proc 敵兵排除ミッション４面ステージ開始時処理 {

	#if d:DEBUG_PRINT

		print 'game_start!!!!!'

	#endif



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

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



	// コンベア動かす。

	#if d:DEBUG_PRINT

		print '--------------------------- belt -------move'

	#endif

	command ベルトコンベア動作 -move



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

	// 全体図

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

		-c 1 \

		-p 48400,8990,-90683 -t 48400,1920,-96738 \

		-r 600,2048,0 -f 10000 \

		-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 'game clear'

	#endif

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



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

		-c 1 \

		-p 60701,305,-80243 -t 58335,956,-79010 \

		-r -156,3385,0 -f 2747 \

		-a 164 \

		-i 2 2 0 0 \

		-s 1



}







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

// 敵兵に関する設定

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

proc 敵兵排除ミッション用警備兵セット {

	#if d:DEBUG_PRINT

		print 'watcher_set-elim_misson'

	#endif

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

		case( ライデン ){

			@A_敵兵排除警備兵 敵兵:01 d:E_R:雷道１ 1 d:a20a_警備ST d:ベルト出口前 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:雷道３ 7 d:a20a_警備ST d:乗り場前内側 Ｅ脚１Ｆ

		}

		case( プリスキン ){

			@A_敵兵排除警備兵 敵兵:01 d:E_R:ぷり１ 0 d:a20a_警備ST d:ベルト出口前 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:ぷり３ 0 d:a20a_警備ST d:乗り場前内側 Ｅ脚１Ｆ

		}

		case( 刀ライデン ){

			@A_敵兵排除警備兵 敵兵:01 d:E_R:辻斬１ 0 d:a20a_警備ST d:下ベルト内右 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:辻斬３ 0 d:a20a_警備ST d:乗り場前内側 Ｅ脚１Ｆ

		}

		case( スネーク ){

			@A_敵兵排除警備兵 敵兵:01 d:E_R:蛇道１ 0 d:a20a_警備ST d:下ベルト内右 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:蛇道２ 1 d:a20a_警備ST d:乗り場前内側 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:03 d:E_R:蛇道３ 1 d:a20a_警備ST d:ベルト出口前 Ｅ脚１Ｆ

		}

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

			@A_敵兵排除警備兵 敵兵:01 d:E_R:滝蛇１ 4 d:a20a_警備ST d:下ベルト内右 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:滝蛇３ 0 d:a20a_警備ST d:ベルト入口南 Ｅ脚１Ｆ

		}

		case( 前作スネーク ){

			@A_敵兵排除警備兵 敵兵:01 d:E_R:昔蛇１ 3 d:a20a_警備ST d:ベルト出口前 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:昔蛇３ 0 d:a20a_警備ST d:ベルト入口南 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:03 d:E_R:昔蛇６ 0 d:a20a_警備ST d:最北通路中央 Ｅ脚１Ｆ



		}

		default{// ライデン

			@A_敵兵排除警備兵 敵兵:01 d:E_R:雷道１ 1 d:a20a_警備ST d:下ベルト内右 Ｅ脚１Ｆ

			@A_敵兵排除警備兵 敵兵:02 d:E_R:雷道３ 7 d:a20a_警備ST d:乗り場前内側 Ｅ脚１Ｆ

			#if d:DEBUG_PRINT

				print ' $s:選択プレイヤー'  $s:選択プレイヤー

			#endif

/*			command assert(d:FALSE) 'select player error!!'

*/

		}

	}

}



proc 敵兵排除ミッション用攻撃兵セット {

	#if d:DEBUG_PRINT

		print 'attacker_set-elim_misson'

	#endif

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

		case( ライデン ){

			@A_敵兵排除警備攻撃兵 敵兵:61 d:E_R:雷道２	2 d:a20a_攻撃ST

			@A_敵兵排除警備攻撃兵 敵兵:62 d:E_R:雷道４	1 d:a20a_攻撃ST

		}

		case( プリスキン ){

			@A_敵兵排除警備攻撃兵 敵兵:61 d:E_R:ぷり２	0 d:a20a_光盾ST

			@A_敵兵排除警備攻撃兵 敵兵:62 d:E_R:ぷり４	0 d:a20a_光盾ST

		}

		case( 刀ライデン ){

			@A_敵兵排除警備攻撃兵 敵兵:61 d:E_R:辻斬２	3 d:a20a_散弾ST

			@A_敵兵排除警備攻撃兵 敵兵:62 d:E_R:辻斬４	0 d:a20a_散弾ST

		}

		case( スネーク ){

			@A_敵兵排除警備攻撃兵 敵兵:62 d:E_R:蛇道４	0 d:a20a_攻撃ST

			@A_敵兵排除警備攻撃兵 敵兵:63 d:E_R:蛇道５	2 d:a20a_攻撃ST

		}

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

			@A_敵兵排除警備攻撃兵 敵兵:61 d:E_R:滝蛇２	7 d:a20a_攻撃ST

			@A_敵兵排除警備攻撃兵 敵兵:63 d:E_R:滝蛇４	0 d:a20a_攻撃ST

			@A_敵兵排除警備攻撃兵 敵兵:64 d:E_R:滝蛇５	2 d:a20a_光盾ST

			@A_敵兵排除警備攻撃兵 敵兵:65 d:E_R:滝蛇６	0 d:a20a_散弾ST

		}

		case( 前作スネーク ){

			@A_敵兵排除警備攻撃兵 敵兵:61 d:E_R:昔蛇２	0 d:a20a_光盾ST

			@A_敵兵排除警備攻撃兵 敵兵:62 d:E_R:昔蛇４	0 d:a20a_光盾ST

			@A_敵兵排除警備攻撃兵 敵兵:63 d:E_R:昔蛇５	0 d:a20a_光盾ST

		}

		default{

			// ライデン

			@A_敵兵排除警備攻撃兵 敵兵:61 d:E_R:雷道２	2 d:a20a_攻撃ST

			@A_敵兵排除警備攻撃兵 敵兵:62 d:E_R:雷道４	1 d:a20a_攻撃ST

			#if d:DEBUG_PRINT

				print ' $s:選択プレイヤー'  $s:選択プレイヤー

			#endif

/*			command assert(d:FALSE) 'select player error!!'

*/		}

	}

}



proc 敵兵排除ミッション用警備兵コマンダー {

	#if d:DEBUG_PRINT

		print 'wccomm_set-elim_misson'

	#endif



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

}



proc 敵兵排除ミッション用攻撃兵コマンダー {

	#if d:DEBUG_PRINT

		print 'atcomm_set-elim_misson'

	#endif



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

}







proc 敵兵排除ミッション用コマンダー設定 {

	#if d:DEBUG_PRINT

		print 'commander_set-elim_misson'

	#endif



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

		-w 敵兵排除ミッション用警備兵コマンダー \

		-a 敵兵排除ミッション用攻撃兵コマンダー \

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

		-r	40625,0,-98125 Ｅ脚１Ｆ 61750,5500,-83500 Ｅ脚２Ｆ \

		-c	40625,0,-98125 Ｅ脚１Ｆ 61750,5500,-83500 Ｅ脚２Ｆ \

//		-x [ghq_area_alert_voice:w20a] \

//		-y [ghq_caution_voice:w20a] \

		-v [ene_plant_voice:03] \

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

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

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

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

		-d Ｅ脚１Ｆ \

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



	// クリアリングは無しよ。

	mesg コマンダー 敵兵セット クリアリングエリアスキップオン 0

}







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

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

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

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

}



proc 敵兵排除ミッション用監視カメラ設置 {

	#if d:DEBUG_PRINT

		print 'a20a0_svc_camera_set-elim_mission'

	#endif

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

		case( プリスキン ){

			// 南側のカメラ

			@A_監視カメラ 南カメラ 48950 3000 -82100 364 1024 317 0 0

		}

		case( 刀ライデン ){

			// 北西側のカメラ(スタート北側)

			@A_監視カメラ 北東カメラ 48050 3000 -95100 452 3072 3150 0 0

		}

		case( スネーク ){

		}

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

			// 北西側のカメラ(スタート北側)

			@A_監視カメラ 北東カメラ 48050 3000 -95100 452 3072 3150 0 0

			// 東側のカメラ

//			@A_監視カメラ 東カメラ 55950 3000 -82900 452 1024 1433 0 0

		}

		case( 前作スネーク ){

			// 北側のカメラ

			@A_監視カメラ 北カメラ 48950 3000 -95100 496 1024 1863 0 0

			// 南側のカメラ

//			@A_監視カメラ 南カメラ 48950 3000 -82100 364 1024 317 0 0

			// 北西側のカメラ(スタート北側)

			@A_監視カメラ 北東カメラ 48050 3000 -95100 452 3072 3150 0 0

		}



		default{

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

			// 北側のカメラ

			@A_監視カメラ 北カメラ 48950 3000 -95100 496 1024 1863 0 0

			// 南側のカメラ

			@A_監視カメラ 南カメラ 48950 3000 -82100 364 1024 317 0 0

			// 東側のカメラ

			@A_監視カメラ 東カメラ 55950 3000 -82900 452 1024 1433 0 0

			// 北西側のカメラ(スタート北側)

			@A_監視カメラ 北東カメラ 48000 3000 -95500 452 3072 3300 0 0

*/

		}

	}

}





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

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

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

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

	#if d:DEBUG_PRINT

		print 'item_no_set-elim_misson'

	#endif

}





proc 敵兵排除ミッション用Ｅ脚１Ｆアイテム設置 {

	#if d:DEBUG_PRINT

		print 'w20a0_item_set-elim_misson'

	#endif



}



proc 敵兵排除ミッション用Ｅ脚Ｂ１アイテム設置 {

	#if d:DEBUG_PRINT

		print 'w20a2_item_set-elim_misson'

	#endif



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

		case( プリスキン ){

			// @弾薬_Ｍ４_初期設置 $:p_ボックス名 $:p_Ｘ座標 $:p_Ｙ座標 $:p_Ｚ座標 $:p_水飛沫

			@弾薬_Ｍ４_初期設置 Ｍ４弾薬 d:ベルト乗り場 0

		}

		case( スネーク ){

			@弾薬_Ｍ４_初期設置 Ｍ４弾薬 d:南左ベルト穴 0

			@弾薬_Ｍ４_初期設置 Ｍ４弾薬 d:東階段踊り場 0

		}

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

	//		@レーション_初期設置 $:p_ボックス名 $:p_Ｘ座標 $:p_Ｙ座標 $:p_Ｚ座標 $:p_水飛沫

			@弾薬_Ｍ４_初期設置 Ｍ４弾薬 d:東階段踊り場 0

			@レーション_初期設置 レーション d:はしご部屋前 0

		}

		case( 前作スネーク ){

			// Ｍ９_初期設置 $:p_ボックス名 $:p_Ｘ座標 $:p_Ｙ座標 $:p_Ｚ座標 $:p_水飛沫 $:p_変更アイテム名 {

			@A_Ｍ９_初期設置 えむきゅー d:ベルト出口台 0 なし 6

		}

		default{

			// 無し。

		}

	}

}



proc 敵兵排除ミッション用Ｅ脚Ｂ１倉庫アイテム設置 {

	#if d:DEBUG_PRINT

		print 'w20a3_item_set-elim_misson'

	#endif

}



proc 敵兵排除ミッション用Ｅ脚Ｂ１梯子部屋アイテム設置 {

	#if d:DEBUG_PRINT

		print 'w20a2_item_set-elim_misson'

	#endif

}





