This commit is contained in:
parent
54c7cfc803
commit
7101daf48a
3 changed files with 28 additions and 14 deletions
|
@ -53,35 +53,35 @@ CFXBaseAnim::sFXBaseData FXDropBaseData=
|
||||||
{
|
{
|
||||||
FRM__DRIP,FRM__DRIP,1,
|
FRM__DRIP,FRM__DRIP,1,
|
||||||
FX_FLAG_LOOP | FX_FLAG_COLLIDE_KILL | FX_FLAG_HAS_GRAVITY | FX_FLAG_NO_THINK_KILL,
|
FX_FLAG_LOOP | FX_FLAG_COLLIDE_KILL | FX_FLAG_HAS_GRAVITY | FX_FLAG_NO_THINK_KILL,
|
||||||
0,CSoundMediator::SFX_HAZARD__ACID_DROP,
|
0,0,CSoundMediator::SFX_HAZARD__ACID_DROP,
|
||||||
};
|
};
|
||||||
|
|
||||||
CFXBaseAnim::sFXBaseData FXSplashBaseData=
|
CFXBaseAnim::sFXBaseData FXSplashBaseData=
|
||||||
{
|
{
|
||||||
FRM__SPLASH001,FRM__SPLASH006,1,
|
FRM__SPLASH001,FRM__SPLASH006,1,
|
||||||
FX_FLAG_NO_THINK_KILL,
|
FX_FLAG_NO_THINK_KILL,
|
||||||
0,0,
|
0,0,0,
|
||||||
};
|
};
|
||||||
|
|
||||||
CFXBaseAnim::sFXBaseData FXExplodeBaseData=
|
CFXBaseAnim::sFXBaseData FXExplodeBaseData=
|
||||||
{
|
{
|
||||||
FRM__EXPLOSION0001,FRM__EXPLOSION0008,1,
|
FRM__EXPLOSION0001,FRM__EXPLOSION0008,1,
|
||||||
FX_FLAG_NO_THINK_KILL,
|
FX_FLAG_NO_THINK_KILL,
|
||||||
CSoundMediator::SFX_HAZARD__FIREBALL_LAND,0,
|
CSoundMediator::SFX_HAZARD__FIREBALL_LAND,0,0,
|
||||||
};
|
};
|
||||||
|
|
||||||
CFXBaseAnim::sFXBaseData FXFireBaseData=
|
CFXBaseAnim::sFXBaseData FXFireBaseData=
|
||||||
{
|
{
|
||||||
FRM__FIRE01,FRM__FIRE08,1,
|
FRM__FIRE01,FRM__FIRE08,1,
|
||||||
FX_FLAG_LOOP | FX_FLAG_TRANS,
|
FX_FLAG_LOOP | FX_FLAG_TRANS,
|
||||||
0,0,
|
0,CSoundMediator::SFX_FIRE_CRACKLING,0,
|
||||||
};
|
};
|
||||||
|
|
||||||
CFXBaseAnim::sFXBaseData FXBubbleBaseData=
|
CFXBaseAnim::sFXBaseData FXBubbleBaseData=
|
||||||
{
|
{
|
||||||
FRM__BUBBLE_2,FRM__BUBBLE_2,1,
|
FRM__BUBBLE_2,FRM__BUBBLE_2,1,
|
||||||
FX_FLAG_LOOP | FX_FLAG_COLLIDE_KILL | FX_FLAG_NO_THINK_KILL,
|
FX_FLAG_LOOP | FX_FLAG_COLLIDE_KILL | FX_FLAG_NO_THINK_KILL,
|
||||||
0,0,
|
0,0,0,
|
||||||
};
|
};
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -51,17 +51,23 @@ void CFXBaseAnim::think(int _frames)
|
||||||
m_soundId=CSoundMediator::playSfx((CSoundMediator::SFXID)BaseData->StartSnd,true,true);
|
m_soundId=CSoundMediator::playSfx((CSoundMediator::SFXID)BaseData->StartSnd,true,true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
if(!CSoundMediator::isSfxStillPlaying(m_soundId))
|
|
||||||
{
|
|
||||||
CSoundMediator::stopAndUnlockSfx(m_soundId);
|
|
||||||
m_soundId=NOT_PLAYING;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EndSnd=BaseData->EndSnd;
|
EndSnd=BaseData->EndSnd;
|
||||||
HasInit=true;
|
HasInit=true;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if ( !( Flags & FX_FLAG_HIDDEN ) )
|
||||||
|
{
|
||||||
|
if(m_soundId==NOT_PLAYING)
|
||||||
|
{
|
||||||
|
if (BaseData->MainSnd)
|
||||||
|
{
|
||||||
|
m_soundId=CSoundMediator::playSfx((CSoundMediator::SFXID)BaseData->MainSnd,true,true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
CFX::think(_frames);
|
CFX::think(_frames);
|
||||||
|
|
||||||
|
@ -85,6 +91,14 @@ int ThisFrame=CurrentFrame>>BaseData->FrameShift;
|
||||||
renderFrame=BaseData->StartFrame+ThisFrame;
|
renderFrame=BaseData->StartFrame+ThisFrame;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( m_soundId != NOT_PLAYING )
|
||||||
|
{
|
||||||
|
if(!CSoundMediator::isSfxStillPlaying(m_soundId))
|
||||||
|
{
|
||||||
|
CSoundMediator::stopAndUnlockSfx(m_soundId);
|
||||||
|
m_soundId=NOT_PLAYING;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -15,7 +15,7 @@ public:
|
||||||
{
|
{
|
||||||
s16 StartFrame,EndFrame,FrameShift;
|
s16 StartFrame,EndFrame,FrameShift;
|
||||||
u16 Flags;
|
u16 Flags;
|
||||||
u16 StartSnd,EndSnd;
|
u16 StartSnd,MainSnd,EndSnd;
|
||||||
};
|
};
|
||||||
|
|
||||||
virtual void init(DVECTOR const &Pos);
|
virtual void init(DVECTOR const &Pos);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue