2

私の簡単な質問は、スプライトまたはアイテムでpygame.MOUSEBUTTONDOWNを使用してイベントをトリガーするにはどうすればよいですか?

たとえば、item_Aがあり、マウスでオブジェクトを押したときに音楽を開始したい。

4

3 に答える 3

3

http://www.pygame.org/docs/ref/event.htmlを参照してください。

buttonssを持つスプライトグループはどこにありますかRect()click()ボタンごとに異なるサウンドの関数を定義できます。

for event in pygame.event.get():    
    if event.type == MOUSEBUTTONDOWN :
        x, y = event.pos
        for button in buttons:
            if button.rect.collidepoint(x, y):
                print("play sound here.")

                # or, if button handles on clicking, by a defined function:
                button.click()
于 2012-05-31T22:58:35.827 に答える
1

メインループでイベントを使用する

for event in pygame.event.get():
    if event.type == MOUSEBUTTONDOWN :
        play_music()
于 2012-05-31T18:18:13.413 に答える
0

メインループ内のイベントをポーリングする必要があります。MOUSEBUTTONDOWNイベントを検出したら、それが目的のスプライト上にあるかどうかを確認し、それが音楽を開始するかどうかを確認する必要があります。

于 2012-05-31T18:18:21.763 に答える