添加粒子效果

This commit is contained in:
2026-04-26 13:20:00 +08:00
parent 03bf93afaa
commit b537d3c193
4 changed files with 266 additions and 0 deletions
+13
View File
@@ -4,7 +4,9 @@
#define MAX_LOADSTRING 100
#define GAME_TIMER_ID 1
#define EFFECT_TIMER_ID 2
#define GAME_TIMER_INTERVAL 500
#define EFFECT_TIMER_INTERVAL 33
HINSTANCE hInst;
TCHAR szTitle[MAX_LOADSTRING];
@@ -355,6 +357,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
ReturnToMainMenu();
StartBackgroundMusic();
ResetGameTimer(hWnd);
SetTimer(hWnd, EFFECT_TIMER_ID, EFFECT_TIMER_INTERVAL, nullptr);
InvalidateRect(hWnd, nullptr, FALSE);
break;
case WM_COMMAND:
@@ -375,6 +378,15 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
}
break;
case WM_TIMER:
if (wParam == EFFECT_TIMER_ID)
{
if (TickVisualEffects())
{
InvalidateRect(hWnd, nullptr, FALSE);
}
break;
}
if (wParam == GAME_TIMER_ID)
{
bool shouldRefresh = false;
@@ -823,6 +835,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
break;
case WM_DESTROY:
KillTimer(hWnd, GAME_TIMER_ID);
KillTimer(hWnd, EFFECT_TIMER_ID);
StopBackgroundMusic();
PostQuitMessage(0);
break;