/********************************************************************************
					-------------------------
				 	 Ultra 64 MARIO Brothers
					-------------------------
					  Tatefuda  Strategy

					Feburary 3 1996       programed by Iwamoto Daiki
 ********************************************************************************/

/*################*/
#ifdef ASSEMBLER
/*################*/

/********************************************************************************
					e_Tatefuda
 ********************************************************************************/

e_tatefuda:
	p_initialize(moveBG)
	p_setbit( flag,stf_moveON)
	p_setshapeinfo(tatefuda_check_info)
	p_setobjname(FRIEND)
	p_setd(enemyinfo,ENEMYINFO_KANBAN)
	p_BGcheckYset
	p_sethitbox(150,80)
	p_setd(work0,0)

	p_while
		p_hitON
		p_program(stMainMoveBG)
		p_setd(mail,0)
	p_loop

e_kanban:
	p_initialize(moveBG)
	p_setbit( flag,stf_moveON)
	p_setobjname(FRIEND)
	p_setd(enemyinfo,ENEMYINFO_KANBAN)
	p_sethitbox(150,80)
	p_setd(work0,0)

	p_while
		p_hitON
		p_setd(mail,0)
	p_loop


/*################*/
#else
/*################*/


/***************************************************************************************************
		C Program
 ****************************************************************************************************/
#define tatefuda_messNo		(execstp->s[stw_programselect].d)
#define tatefuda_trig		(execstp->s[stw_work0].d)


















#if 0
/***************************************************************************************************
						    Main
***************************************************************************************************/
extern void s_tatefuda_main(void)
{


	switch(obj_mode) {

		case 0: if ( s_hitcheck(execstp,player1stp) == 1  ){
					if (tatefuda_trig == 0) {
						tatefuda_trig = 1; 
						obj_timer = 0;
						Mbitset(execstp->s[stw_flag].d,stf_playerangleON);
					}

					if (tatefuda_trig == 1 &&  ShapeSameAngle(obj_angleY,player_angleY+0x8000,0x2000)==1 
							   &&  ShapeSameAngle(obj_angleY,obj_targetangle     ,0x800)==1) {
							
							obj_mode = 1;
					}
				}
				else {
					tatefuda_trig = 0;
					Mbitclr(execstp->s[stw_flag].d,stf_playerangleON);
				}				
				break;

		case 1: if (obj_timer == 0) {
					ViewingCam(VIEW_ON);
				}
				if (obj_timer == 20) {
					CallMessageFuda(tatefuda_messNo);
					obj_mode = 2;
				}
				break;

		case 2: if ( s_hitcheck(execstp,player1stp) == 0  ){
					tatefuda_trig = 0;
					Mbitclr(execstp->s[stw_flag].d,stf_playerangleON);
					obj_mode = 0;
				}
				break;					

	}

		
}

#endif



/*################*/
#endif
/*################*/


