2013-10-20 93 views
0

我正在用pygame製作一個遊戲,我希望玩家可以在十字線上看到這張臉,這是我的代碼,我讓它在閒置時打印出角度,我注意到無論如何,所有錯誤和玩家都沒有旋轉的角度。我見過一些這樣的其他問題,我已經跟着他們,但我仍然得到錯誤的角度和圖像dosnt旋轉反正用pygame找到點之間的角度

,這裏是我的角度和旋轉圖像代碼:

mouse_x, mouse_y = pygame.mouse.get_pos() 
mouse_x -= crosshair.get_width()/2 
mouse_y -= crosshair.get_height()/2 
player_atan = math.atan2(player_x-player_y, mouse_x-mouse_y) 
player_angle = degrees(player_atan) 
pygame.transform.rotate(screen, player_angle) 

回答

0

你應該看看python文檔:它有一些有價值的信息。

你的精靈不旋轉的原因是因爲旋轉返回一個新的旋轉表面。

鏈接到文檔:docs

+0

多數民衆贊成在我一直在使用的網站,我使用旋轉圖像funtion和它dosnt工作obviasly,你說功能返回一個新的旋轉表面,那是什麼意思? – user2899360

+0

這意味着該功能無法正常工作,它會返回旋轉圖像的副本。所以要旋轉圖像,必須將函數的結果返回給變量。 'image = rotate(image)' –

+0

好的,非常感謝您的幫助,只是一件事情,當我運行腳本時,玩家會在大約5秒鐘後顯示dosnt appaer,然後顯示寬度或高度。 – user2899360

1

您必須從不同的點中減去相同的組件。

player_atan = math.atan2(mouse_y - player_y, mouse_x - player_x) 
+0

感謝,即與不正確的角度,但仍圖像旋轉心不是固定的問題。 – user2899360

+0

以及數字的上半部分都是負數。 – user2899360

+0

這個問題還沒有得到解決。任何人都會關心它嗎? – user2899360