0
我試圖做到:如何使用SDL切換點擊事件?
- 當用戶點擊在遊戲中,用戶點擊地板磚就會如果用戶點擊一次(任何地方)顯示邊框
- 邊界消失
我到目前爲止有:
- 當用戶單擊遊戲,邊框周圍出現選擇瓷磚
我似乎什麼都不能找出(我用盡了一切我能想到的)
- 如何獲得邊境接一個地點擊
關於我的代碼走開:
我有一個MouseInput類,檢查是否按下鼠標左鍵。我使用布爾變量來嘗試切換顯示瓦片邊界的變量(如果單擊)或不顯示邊界(如果再次單擊)。我有的代碼將允許邊框顯示,但我無法讓它消失另一次點擊。我無法真正展示我嘗試過的所有事情(一直試着這樣做2天,不記得我做了什麼)。這是我的代碼到目前爲止的一個總括:
bool toggle; // Set to false in constructor
bool justPressed; // Set to false in constructor
bool justReleased; // Set to false in constructor
void Mouse::Update() // My custom mouse class Updating function (updates position, etc)
{
input.Update(); // My MouseInput class Updating function.
if (input.Left() && !toggle) // input.Left() checks if left mouse was pressed. True if it is pressed down, and false if it's not pressed.
{
// So we have pressed the mouse
justPressed = true;
justReleased = false;
printf("UGH FML");
}
else if (!input.Left()) // So the mouse has been released (or hasn't clicked yet)
{
justPressed = false;
justReleased = true;
}
if (justPressed)
{
toggle = true;
}
}
我試過了所有我能想到的切換回到錯誤。現在我的大腦受傷了。可能有一個真正簡單的解決方案,但我無法圍繞它解決問題。建議?
像'如果(事件)的邊界=邊界;' – sp2danny