2017-12-09 30 views
2

ウィンドウモードでPygameでFPSゲームを作りたい。ウィンドウ内のマウスをロックするPygame

私のカメラを360度以上動かすことができます。

私はPygameのset_visibleset_posを使用しましたが、私のマウスがウィンドウから出て画面の境界線でブロックされることはありません。

import pygame 
pygame.init() 
game_display = pygame.display.set_mode((800,600)) 
pygame.mouse.set_visible(False) 

exit = False 

while (not exit): 
    pygame.mouse.set_pos = (400, 300) 
    mouse_move = (0,0) 
    for event in pygame.event.get(): 
     if event.type == pygame.QUIT: 
      exit = True 
     if event.type == pygame.MOUSEMOTION: 
      mouse_move = event.rel 
    if mouse_move != (0,0): 
     print(mouse_move) 

pygame.quit() 
+0

BTW: 'set_pos'は変数ではなく、' pygame.mouse.set_pos((400、300)) 'メソッドであり、マウスを内部に保持します。 – furas

答えて

2

pygame.event.set_grab(True)に電話する必要があります。

ユーザーがEscキーまたは別のキーを使用して終了できるようにすると、xボタンをクリックしてウィンドウを閉じることができなくなるため、

elif event.type == pygame.KEYDOWN: 
    if event.key == pygame.K_ESCAPE: 
     exit = True 
関連する問題