sm64/data/p/patheffectbreath.p
2022-12-04 22:27:02 -05:00

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
===============================================================================*/