121 lines
2.7 KiB
OpenEdge ABL
121 lines
2.7 KiB
OpenEdge ABL
/********************************************************************************
|
|
-------------------------
|
|
Ultra 64 MARIO Brothers
|
|
-------------------------
|
|
|
|
File : pathwatersplash.s
|
|
Description :
|
|
Date : 1995.
|
|
Author : H.yajima
|
|
|
|
********************************************************************************/
|
|
|
|
|
|
/*################*/
|
|
#ifdef ASSEMBLER
|
|
/*################*/
|
|
|
|
/*--------------------------------------------------------------*/
|
|
/* small splash !! */
|
|
/*--------------------------------------------------------------*/
|
|
|
|
e_smallsplash:
|
|
p_initialize(option)
|
|
p_setbit(flag,stf_moveON)
|
|
p_shapeDISABLE
|
|
p_do(5)
|
|
p_makeobj_initdata(small_splash_init)
|
|
p_next_imm
|
|
p_wait(1)
|
|
p_mother_clrbit(effect,stf_sink)
|
|
p_killshape
|
|
|
|
/*--------------------------------------------------------------*/
|
|
/* small splash !! */
|
|
/*--------------------------------------------------------------*/
|
|
|
|
e_jumpsplash:
|
|
p_initialize(option)
|
|
p_setbit(flag,stf_moveON)
|
|
p_shapeDISABLE
|
|
p_do(18)
|
|
p_makeobj_initdata(splash_init);
|
|
p_next_imm
|
|
p_program(s_jumpsplash_init)
|
|
p_wait(1)
|
|
p_mother_clrbit(effect,stf_jumpsink)
|
|
p_killshape
|
|
|
|
/*################*/
|
|
#else
|
|
/*################*/
|
|
|
|
|
|
|
|
|
|
MoveInitRecord splash_init[] = {
|
|
{
|
|
MOVEINIT_RANDOMANGLE+MOVEINIT_POSWATER,
|
|
S_waterdrop, /* shape name */
|
|
e_smallwaterdrop, /* path pointer */
|
|
0, /* angle Y */
|
|
0, /* random offset (XZ) */
|
|
2,3, /* speed F */
|
|
20,20, /* speed Y */
|
|
0.5,1, /* scale */
|
|
}
|
|
};
|
|
|
|
MoveInitRecord fish_init[] = {
|
|
{
|
|
MOVEINIT_RANDOMANGLE+MOVEINIT_POSWATER,
|
|
S_fish, /* shape name */
|
|
e_smallwaterdrop, /* path pointer */
|
|
0, /* angle Y */
|
|
0, /* random offset (XZ) */
|
|
2,3, /* speed F */
|
|
20,20, /* speed Y */
|
|
1,0, /* scale */
|
|
}
|
|
};
|
|
|
|
MoveInitRecord small_splash_init[] = {
|
|
{
|
|
MOVEINIT_RANDOMANGLE + MOVEINIT_POSWATER + MOVEINIT_ANGLE_BACK ,
|
|
S_waterdrop, /* shape name */
|
|
e_smallwaterdrop, /* path pointer */
|
|
0x6000, /* angle Y */
|
|
0, /* random offset (XZ) */
|
|
2,8, /* speed F */
|
|
10,10, /* speed Y */
|
|
0.5,1, /* scale */
|
|
}
|
|
};
|
|
|
|
|
|
/*------------------------------------------------------------------------------*/
|
|
/* jump */
|
|
/*------------------------------------------------------------------------------*/
|
|
extern void s_jumpsplash_init(void)
|
|
{
|
|
|
|
StrategyRecord *stp;
|
|
if ( ( Randomd() & 0xff ) < 1 ){
|
|
stp = s_makeobj_initdata(execstp,fish_init);
|
|
s_set_skeletonobj(stp,(void *)RCP_fishAnime,0);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/*################*/
|
|
#endif
|
|
/*################*/
|
|
/*===============================================================================
|
|
end end end end end end end end
|
|
===============================================================================*/
|
|
|
|
|
|
|