在继续之前等待鼠标按下

Waiting for a mousepress before proceeding

哟, 所以我正在尝试开发一个非常简单的游戏,基本上你只有一个 window 并且每当你按下一次 pygame.mouse.get_pos() 数据被存储。 我遇到的问题是等待另一次鼠标点击,这样我就可以存储更多的鼠标位置数据,这样我最终可以在两次鼠标点击之间绘制一个 rectangle/square 。 代码:

import sys
import pygame as pg
import time
title = "draw rect thign"
running = True
pg.display.init()
surface = pg.display.set_mode(size=(400, 200))
color = (255,0,0)
pg.display.set_caption(title)

while running:
    for event in pg.event.get():
        if event.type == pg.QUIT:
            running = False
        if event.type == pg.KEYDOWN:
            if event.key== pg.K_q:
                pg.display.quit()
        if event.type == pg.MOUSEBUTTONDOWN:
            pos1 = pg.mouse.get_pos()
            if event.type == pg.MOUSEBUTTONDOWN:
                pos2 = pg.mouse.get_pos()

为此,创建一个列表并在每次单击鼠标时在其中添加坐标就足够了。不要忘记为下一轮游戏清空名单。

import sys
import pygame as pg
import time
title = "draw rect thign"
running = True
pg.display.init()
surface = pg.display.set_mode(size=(400, 200))
color = (255,0,0)
pg.display.set_caption(title)
angles = []

while running:
    for event in pg.event.get():
        if event.type == pg.QUIT:
            running = False
        if event.type == pg.KEYDOWN:
            if event.key== pg.K_q:
                pg.display.quit()
        if event.type == pg.MOUSEBUTTONDOWN:
            pos = pg.mouse.get_pos()
            angles.append(pos)
            print(angles)