升级改为四选一并重做赌徒与方块改造机制
This commit is contained in:
+40
-6
@@ -264,19 +264,53 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
case VK_LEFT:
|
||||
case 'A':
|
||||
upgradeUiState.selectedIndex--;
|
||||
if (upgradeUiState.selectedIndex < 0)
|
||||
if (upgradeUiState.optionCount > 1)
|
||||
{
|
||||
upgradeUiState.selectedIndex = upgradeUiState.optionCount - 1;
|
||||
if ((upgradeUiState.selectedIndex % 2) == 1)
|
||||
{
|
||||
upgradeUiState.selectedIndex--;
|
||||
}
|
||||
else
|
||||
{
|
||||
upgradeUiState.selectedIndex = (upgradeUiState.selectedIndex + 1 < upgradeUiState.optionCount)
|
||||
? upgradeUiState.selectedIndex + 1
|
||||
: upgradeUiState.selectedIndex;
|
||||
}
|
||||
}
|
||||
InvalidateRect(hWnd, nullptr, FALSE);
|
||||
break;
|
||||
case VK_RIGHT:
|
||||
case 'D':
|
||||
upgradeUiState.selectedIndex++;
|
||||
if (upgradeUiState.selectedIndex >= upgradeUiState.optionCount)
|
||||
if (upgradeUiState.optionCount > 1)
|
||||
{
|
||||
upgradeUiState.selectedIndex = 0;
|
||||
if ((upgradeUiState.selectedIndex % 2) == 0 && upgradeUiState.selectedIndex + 1 < upgradeUiState.optionCount)
|
||||
{
|
||||
upgradeUiState.selectedIndex++;
|
||||
}
|
||||
else
|
||||
{
|
||||
upgradeUiState.selectedIndex--;
|
||||
if (upgradeUiState.selectedIndex < 0)
|
||||
{
|
||||
upgradeUiState.selectedIndex = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
InvalidateRect(hWnd, nullptr, FALSE);
|
||||
break;
|
||||
case VK_UP:
|
||||
case 'W':
|
||||
if (upgradeUiState.optionCount > 2 && upgradeUiState.selectedIndex >= 2)
|
||||
{
|
||||
upgradeUiState.selectedIndex -= 2;
|
||||
}
|
||||
InvalidateRect(hWnd, nullptr, FALSE);
|
||||
break;
|
||||
case VK_DOWN:
|
||||
case 'S':
|
||||
if (upgradeUiState.optionCount > 2 && upgradeUiState.selectedIndex + 2 < upgradeUiState.optionCount)
|
||||
{
|
||||
upgradeUiState.selectedIndex += 2;
|
||||
}
|
||||
InvalidateRect(hWnd, nullptr, FALSE);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user