82 lines
1.7 KiB
OpenEdge ABL
82 lines
1.7 KiB
OpenEdge ABL
/********************************************************************************
|
|
-------------------------
|
|
Ultra 64 MARIO Brothers
|
|
-------------------------
|
|
|
|
File : patheffectbreath.s
|
|
Description :
|
|
Date : 1995.
|
|
Author : H.yajima
|
|
|
|
********************************************************************************/
|
|
|
|
|
|
/*################*/
|
|
#ifdef ASSEMBLER
|
|
/*################*/
|
|
|
|
e_effectbreath_obj:
|
|
p_initialize(effect)
|
|
p_setbit(flag,stf_moveON )
|
|
p_softspritemodeON
|
|
p_setd(alpha,254)
|
|
p_setf(speedF,20)
|
|
p_setf(speedY,-8)
|
|
p_addf(worldY,62)
|
|
p_while
|
|
p_program(s_effectbreath_obj)
|
|
p_loop
|
|
|
|
|
|
e_effectbreath:
|
|
p_initialize(option)
|
|
p_setbit(flag,stf_moveON )
|
|
p_do(8)
|
|
p_program(s_effectbreath)
|
|
p_next
|
|
p_killobj
|
|
|
|
|
|
/*################*/
|
|
#else
|
|
/*################*/
|
|
|
|
/********************************************************************************
|
|
C Program (effectbreath)
|
|
********************************************************************************/
|
|
extern void s_effectbreath(void)
|
|
{
|
|
s_clear_motherbit(stf_breath);
|
|
s_makeobj_nowpos(execstp,S_hiteffect,e_effectbreath_obj);
|
|
}
|
|
|
|
extern void s_effectbreath_obj(void)
|
|
{
|
|
|
|
float scale;
|
|
|
|
if ( obj_timer == 0 ){
|
|
obj_angleY = player1stp->s[stw_angleY].d;
|
|
s_random_XZ_offset(execstp,10);
|
|
}
|
|
|
|
s_optionmove_F();
|
|
|
|
obj_alpha -= 42;
|
|
scale = ((254- obj_alpha )/ 254.0 )* 1.0 + 0.5;
|
|
s_set_scale(scale);
|
|
if ( obj_alpha <= 1 ) s_remove_obj(execstp);
|
|
|
|
|
|
}
|
|
|
|
/*################*/
|
|
#endif
|
|
/*################*/
|
|
/*===============================================================================
|
|
end end end end end end end end
|
|
===============================================================================*/
|
|
|
|
|
|
|