16,473
社区成员
发帖
与我相关
我的任务
分享
void CALLBACK Monsterhit (HWND hWnd, UINT uMSG, UINT idEvent, DWORD dwTime)
{
if(currentStage->stageID >= 1)
{
for(int i = 0; i < monsters.size(); i++)
if(monsters[i]->hit)
{
monsters[i]->img = bmp_Monsterhit;
InvalidateRect(hWnd, NULL, FALSE);
//希望在此停顿100毫秒
monsters[i]->img = bmp_Monster;
monsters[i]->hit = false;
}
}
}
void CALLBACK Monsterhit (HWND hWnd, UINT uMSG, UINT idEvent, DWORD dwTime)
{
if(currentStage->stageID >= 1)
{
BOOL bInvalidFlag = FALSE;
for(int i = 0; i < monsters.size(); i++)
{
if(monsters[i]->hit)
{
monsters[i]->img = bmp_Monsterhit;
monsters[i]->dwUpdateTick = GetTickCount() + 100; //开始计时
bInvalidFlag = TRUE;
monsters[i]->hit = false;
}
else
{
if(monsters[i]->dwUpdateTick && GetTickCount() >= monsters[i]->dwUpdateTick) //计时时间到
{
monsters[i]->img = bmp_Monster;
monsters[i]->dwUpdateTick = 0; //清除计时
bInvalidFlag = TRUE;
}
}
}
if(bInvalidFlag)
{
InvalidateRect(hWnd, NULL, FALSE);
}
}
}