/*

	a03a_photo.h

		長廊下（写真撮影ミッション用）

	2002/02/01 S.Kaneyoshi

	$Id: a03a_photo.h,v 1.21 2002/08/30 05:46:20 usr04249 Exp $

*/



#define MISSION_PHOTO	1	// 写真撮影ミッション用プロック起動用



#include "dcam_alt.h"

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

// chara マップの前に呼ばれるproc

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

	proc 写真撮影ミッション用マップ定義前設定 {

		command セットＶＲステータス d:VR_PHOTOGRAPH

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

		@写真撮影ミッション用ＶＲウィンドウ設定

		@ＶＲクリア設定 p:A_ミッションエンド p:A_ＲＥＴＲＹプロック

	}



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

// chara マップの後に呼ばれるproc

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

	proc 写真撮影ミッション用マップ定義後設定 {



		// 全マップ共通基本キャラ設定

		command マップ設定	左舷長廊下０ \

						左舷長廊下１ \

						左舷長廊下２ \

						左舷長廊下３ \

						中央長廊下 \

		-set {

			@各ミッション用ゴール表示 -17000 0 -15000

			@写真撮影ミッション用ローカル変数初期化

			@写真撮影ミッション用サウンド設定

			@写真撮影ミッション用変数設定

			//@写真撮影ミッション用コマンダー設定

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

		}



		// 各マップで使用するキャラの設定(アイテム等)

		command マップ設定 左舷長廊下２ -set {

			@死体セット

			@怨霊プロック	// 死体が起動されてから

			@怨霊トラップ

		}

		

		command マップ設定 左舷長廊下０ -set {

			//@写真撮影ミッション用左舷長廊下０アイテムセット

			@怨霊トラップ２

		}

	}



	proc 写真撮影ミッション用ローカル変数初期化 {

	

		@写真撮影用ローカル変数初期化プロック

		

		$$f:ライト壊されたフラグ = 0;

	}

	proc 写真撮影ミッション用サウンド設定 {

		#if d:DEBUG_PRINT

			print 'sound_set-bomb_misson'

		#endif

		/*

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

		@サウンド効果音設定

		*/

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

		mesg  サウンドマネージャー ＳＤマネ SD_CODE d:SE_REVERB_ON

		@サウンド効果音設定

	}



	proc 写真撮影ミッション用ＢＧＭ設定 {

		#if d:DEBUG_PRINT

			print 'bgm_set-bomb_misson'

		#endif

		/*

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

		*/

		chara ＢＧＭマネージャー ＢＧＭマネ -s 0x00000001

	}



	proc 写真撮影ミッション用変数設定 {

		#if d:DEBUG_PRINT

			print 'stage_var_set-bomb_misson'

		#endif

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

		// ドアに関する設定

		//		DOOR_FLAG_CLOSE			0		// 絶対開かない

		//		DOOR_FLAG_OPEN			1		// 絶対開く

		//		DOOR_FLAG_ENEMY_ONLY	2		// 敵兵のみ開く

		//		DOOR_FLAG_CLOSE_LEVEL	3		// カードレベルが足りなくて開かない

		//		DOOR_FLAG_OPEN_LEVEL	4		// カード持っているので開く

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

		$$b:ドアフラグ[0] = 0;

		$$b:ドアフラグ[1] = 0;

		

		// 初期装備セット

		$w:アイテム数Ｒ[ d:アイテム:デジカメ ] = 1;

		command シナリオ前装備変更 -number d:アイテム:デジカメ

		

		$w:武器弾数Ｒ[ d:武器:ＵＳＰ ] = 50;

		command シナリオ前武器変更 -number d:武器:ＵＳＰ

	}



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

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

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

proc 写真撮影ミッション用ＶＲウィンドウ設定 {

	#if d:DEBUG_PRINT

		print 'vr_window_set'

	#endif



	@写真撮影用ＶＲウィンドウ設定	\

		[VRMSG_J:ALT_PHT_a03a_RAI] [VRMSG_E:ALT_PHT_a03a_RAI] \	// 日、英

		[VRMSG_G:ALT_PHT_a03a_RAI] [VRMSG_F:ALT_PHT_a03a_RAI] \	// 独、仏

		[VRMSG_I:ALT_PHT_a03a_RAI] [VRMSG_S:ALT_PHT_a03a_RAI] \	// 伊、西

		[VRMSG_K:ALT_PHT_a03a_RAI] \						// 韓

		p:写真撮影ミッション用ステージ開始時処理 \		// 終了プロック

		photo_odai odai_ghost





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

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





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

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



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

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

		-c 1 \	

		-p -16750,-3000,-39000 -t -16150,-3718,-42500 \

		-r 125,2048,0 -f 3565 \

		-a 200 \

		-i 0 -1 0 0 \

		-s 1



}





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

// ステージ開始時処理

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

proc 写真撮影ミッション用ステージ開始時処理 {

	#if d:DEBUG_PRINT

		print 'game_start!!!!!'

	#endif



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

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





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

	// 全体図

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

		-c 1 \	

		-p -16750,-3000,-39000 -t -16150,-3718,-42500 \

		-r 125,2048,0 -f 3565 \

		-a 200 \

		-i 4 4 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 0

/*

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

			-c 1 \

			-p -2209,-13877,-60193 -t -2480,-14860,-57681 \

			-r 242,4026,0 -f 2711 \

			-a 200 \

			-i 2 2 0 0 \

			-s 1

*/

	}



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

// 敵兵の設定

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

#define ENE_DEF_X_1		11000

#define ENE_DEF_Y_1		-5000

#define ENE_DEF_Z_1		-23250



	proc 写真撮影ミッション用警備兵セット {

		#if d:DEBUG_PRINT

			print 'watcher_set-bomb_misson'

		#endif



		@A_警備兵 敵兵:01 \

			8 \		// ルート

			0 \		// ノード

			d:ENE_STATUS_GUNLIGHT \

			d:ENE_DEF_X_1 d:ENE_DEF_Y_1 d:ENE_DEF_Z_1 \

			右舷小部屋

	}



	proc 写真撮影ミッション用攻撃兵セット {

		#if d:DEBUG_PRINT

			print 'attacker_set-bomb_misson'

		#endif



		@A_攻撃兵 敵兵:61 \

			13 \

			d:ENE_STATUS_GUNLIGHT \

			d:ENE_EQUIP_TYPE_NORMAL

	}



	proc 写真撮影ミッション用警備兵コマンダー {

		#if d:DEBUG_PRINT

			print 'wccomm_set-bomb_misson'

		#endif



		chara 警備コマンダー wccomm \

			-e { 写真撮影ミッション用警備兵セット }

	}



	proc 写真撮影ミッション用攻撃兵コマンダー {

		#if d:DEBUG_PRINT

			print 'atcomm_set-bomb_misson'

		#endif



		chara 攻撃コマンダー atcomm \

			-e { 写真撮影ミッション用攻撃兵セット } \

			-wait		180 \

			-avoidwait	300

	}



	proc 写真撮影ミッション用コマンダー設定 {

		#if d:DEBUG_PRINT

			print 'commander_set-bomb_misson'

		#endif



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

			-w 写真撮影ミッション用警備兵コマンダー \

			//-a 写真撮影ミッション用攻撃兵コマンダー \

			-s (d:ENE_STAGE_VR_ANOTHER) \

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

			-r 8000,-5000,-128250 中央長廊下 \

			   -17000,-5000,-125500 中央長廊下 \

			-c 14000,-5000,-97000 左舷長廊下３ \

			-x [ghq_area_alert_voice:w03a] \

			-y [ghq_caution_voice:w03a] \

			-v [ene_tank_voice:01] \

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

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

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

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

	}



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

// アイテム関連

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

	proc 写真撮影ミッション用アイテム取得時番号設定 $:ボックス名 {

		#if d:DEBUG_PRINT

			print 'item_no_set'

		#endif

/*

		if ($:ボックス名 == ＵＳＰ弾１) {

			eval($b:w02a_取得ロード回数[0] = $w:グローバルロード回数);

		}

*/

		#if d:DEBUG_PRINT

			print $:ボックス名

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

		#endif

	}



	proc 写真撮影ミッション用左舷長廊下０アイテムセット {

/*

		@アイテム再セットチェック $b:w02a_取得ロード回数[0]

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

			@弾薬_ＵＳＰ_初期設置 ＵＳＰ弾１ 16224 -4000 -22618 0

		}

*/

	}





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

// 怨霊関連プロック

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

	proc 怨霊プロック {

	

		chara 怨霊 タンカークルー怨霊 \ 

			-target 死体 \ //追跡目標になる死体君の名前 先に死体が起動していること

			-pos /*-10000*/-9000 -5000 -70250 \ //初期配置座標 壁の向こうにしましょう

			-dir 0 \ //初期方向 あまり意味無い

			-evm human_tnc_ghost \ //幽霊EVMモデル

			-kms tnc_def \ //何か死体と同じような体格の21間接モデル

			-mar gbs \ //幽霊姿勢に近い姿勢のモーションを含むmar ここでは敵兵のものを流用

			-status 0 \ 

			-number 119 \//敵兵の死体運ばれモーション番号 敵兵以外のmarをつかう場合は、そのmar内での幽霊姿勢モーション番号

			-b 16		// 怨霊音声

		/*

		chara 怨霊 ウォークマン兵怨霊 \ 

			-target 敵兵:01 \ //追跡目標になる死体君の名前 先に死体が起動していること

			-pos -10000 -5000 -70250 \ //初期配置座標 壁の向こうにしましょう

			-dir 0 \ //初期方向 あまり意味無い

			-evm human_tnc_ghost \ //幽霊EVMモデル

			-kms tnc_def \ //何か死体と同じような体格の21間接モデル

			-mar gbs \ //幽霊姿勢に近い姿勢のモーションを含むmar ここでは敵兵のものを流用

			-status 0 \ 

			-number 119 //敵兵の死体運ばれモーション番号 敵兵以外のmarをつかう場合は、そのmar内での幽霊姿勢モーション番号

		

		mesg 怨霊 ウォークマン兵怨霊 移動開始

		*/

	}

	

	proc 怨霊トラップ {

		trap ghost 死体 \

			-mask ？ \

			-exec {

				if( $3 == 出る ) {	

					mesg 怨霊 タンカークルー怨霊 移動開始

				} else {

					if( $$f:ライト壊されたフラグ == 0 ) {

						mesg 怨霊 タンカークルー怨霊 怨霊退散

					}

				}

			}

	}

	

	proc 怨霊トラップ２ {

		trap ghost2 死体 \

			-mask ？ \

			-exec {

				if( $3 == 出る ) {	

					mesg 怨霊 タンカークルー怨霊 移動開始

				} else {

					mesg 怨霊 タンカークルー怨霊 怨霊退散

				}

			}

	}

	

	proc 死体セット {

		// 当たりの都合上１マップに登録する？

		chara 死体君 死体 \

				-m tnc_def_blood \

				-d 1 \

				//-p -15300,-5000,-69750 \

				-p -13300,-5000,-69850 \

				-r 0,3072,0 \

				-s d:CORP_STATUS_NOHIT 



		chara 電灯虫 羽虫 \

			-n	8 \

			-p	-15300,-5000,-69750 \	// ライト位置 ->> プレイヤー誘導時は無視

			-b	0 \	// 下のバウンディングボックスで壁との当たり見るか  1 : 判定あり, 0 : 判定なし

			-s	(-15300-500) (-5000-500) (-69750-500) \	// 最小ボックス座標

			-l	(-15300+500) (-5000+500) (-69750+500)	// 最大ボックス座標



		mesg 電灯虫 羽虫 人誘導 死体

	}

	

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

// 写真撮影用プロック

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

	proc 写真撮影ミッション用最終設定 {

		command カメラ撮影時プロック -proc 撮影チェック

		command カメラチェックキャラワーク確保

		

		command カメラチェックキャラ登録 \

			-name タンカークルー怨霊 \

			-joint 2 \

			-far 1 \

			-proc 怨霊ボディ写真撮影



		

		command カメラチェックキャラ登録 \

			-name タンカークルー怨霊 \

			-joint 12 \

			-far 1 \

			-proc 怨霊フェイス写真撮影

	}

	

	proc 怨霊ボディ写真撮影 {

		print '*****************ボディ判定******************'

		command ゲットデジカメ被写体情報 $$i:Ｘ画面位置 $$i:Ｙ画面位置 $$i:画面占有率



		#if d:DEBUG_PRINT

			@写真判定プリント文 $1

		#endif

		

		if( $1 == 1 ) {

			if( `@写真中心チェックＸＹ 20 30` ) {

				@撮影成功フラグ入力 100

			} else if( `@写真中心チェックＸＹ 30 50` ) {

				@撮影成功フラグ入力 50

			} else {

				@撮影成功フラグ入力 10

			}

		}

	}



	proc 怨霊フェイス写真撮影 {

		print '*****************フェイス判定******************'

		command ゲットデジカメ被写体情報 $$i:Ｘ画面位置 $$i:Ｙ画面位置 $$i:画面占有率



		#if d:DEBUG_PRINT

			@写真判定プリント文 $1

		#endif

		

		if( $1 == 1 ) {

			if( `@写真中心チェックＸＹ 15 15` ) {

				@撮影成功フラグ入力 100

			} else if( `@写真中心チェックＸＹ 30 30` ) {

				@撮影成功フラグ入力 50

			} else {

				@撮影成功フラグ入力 10

			}

		}

	}



	proc 撮影チェック {

		print '$$b:撮影成功フラグ'$$b:撮影成功フラグ

		if( $$b:撮影成功フラグ >= 100 ) {

			command ＶＲクリア＿星の数の設定 3

			command ＶＲクリア＿スコアの設定 ( d:PHOTO_STAR_SCORE * 3 )

		} else if( $$b:撮影成功フラグ >= 50 ) {

			command ＶＲクリア＿星の数の設定 2

			command ＶＲクリア＿スコアの設定 ( d:PHOTO_STAR_SCORE * 2 )

		} else if( $$b:撮影成功フラグ >= 10 ) {

			command ＶＲクリア＿星の数の設定 1

			command ＶＲクリア＿スコアの設定 ( d:PHOTO_STAR_SCORE * 1 )

		}

		

		if( $$b:撮影成功フラグ != 0 ) {

			command ＶＲポーズ中クリア

		} else {

			@ミッション共通ゲームオーバー処理

		}

	}



	