26 lines
757 B
C
26 lines
757 B
C
|
// lll_volcano_flames.c.inc
|
||
|
|
||
|
void bhv_volcano_flames_loop(void) {
|
||
|
obj_update_floor_height();
|
||
|
obj_compute_vel_xz();
|
||
|
o->oPosX += o->oVelX;
|
||
|
o->oPosZ += o->oVelZ;
|
||
|
obj_move_y(-4.0f, -0.7f, 2.0f);
|
||
|
if (o->oMoveFlags & 0x33)
|
||
|
mark_object_for_deletion(o);
|
||
|
}
|
||
|
|
||
|
void func_802BBFDC(void) {
|
||
|
struct Object *sp1C;
|
||
|
f32 size;
|
||
|
sp1C = spawn_object(o, MODEL_RED_FLAME, bhvVolcanoFlames);
|
||
|
sp1C->oPosY += 550.0f;
|
||
|
sp1C->oMoveAngleYaw = RandomU16() << 0x10 >> 0x10;
|
||
|
sp1C->oForwardVel = RandomFloat() * 40.0f + 20.0f;
|
||
|
sp1C->oVelY = RandomFloat() * 50.0f + 10.0f;
|
||
|
size = RandomFloat() * 6.0 + 3.0;
|
||
|
scale_object_xyz(sp1C, size, size, size);
|
||
|
if (RandomFloat() < 0.1)
|
||
|
PlaySound2(SOUND_GENERAL_EXPLOSION2);
|
||
|
}
|