我是新來的Processing programming language,目前試圖使原來基於遊戲我的大學羣。不過,我在處理函數mousePressed中遇到問題。問題似乎是鼠標按下功能不止一次,即使我只按一下鼠標。我可能錯了,但任何幫助都會很好。功能的mousePressed似乎按不止一次
我有5個按鈕,如果我點擊其中一個按鈕,它會在我的ArrayList中添加X數量的玩家,之後它應該繼續玩第一個玩家,轉到骰子,這可以通過點擊屏幕來滾動。然而,當我點擊我的添加玩家按鈕時,它也會擲骰子,但我希望玩家選擇數量較多的玩家,然後再次單擊屏幕以擲骰子。
代碼:
//this is my "if" the player choose to have two players, the first player turns begin
if(player.get(0) == 1){
fill(255);
text("First player turn", width/2, height/5);
noLoop();
dice.display();
dice.mouseRoll();
// here you have my dice roll function
void mouseRoll(){
if(mousePressed==true){
dice.roll(1,4); // just a random between the two number
noLoop();
您是否嘗試過使用帶斷點調試器或使用打印語句進行調試?如果鼠標事件觸發多次,應該很容易找到確定的位置。 – Chill
我不認爲是,試圖做的println一個bug,它顯示了它有時3-7次事件發生。 –
您的示例代碼中不包含任何形式的鼠標偵聽器,這使得它很難告訴你如何接收點擊事件。每次UI循環循環時,一些庫會發送點擊信息。在這些情況下,你必須明確地跟蹤鼠標的狀態,這是非常蹩腳的。 – Chill