最もわかりやすいチュートリアルやドキュメントなどが提供されているので、最近Kivyをダウンロードしました.pygameとcocosを試しましたが、基礎を得ることができませんでした.
ここに私の問題があります。ポンゲームを作成しました。ポンボールを停止してゲームを一時停止し、一時停止が解除されたら(速度を変更して)ゲームを再開しようとしています。
これが私のコードです:
class PongGame(Widget):
...
def _on_keyboard_down(self, keyboard, keycode, text, modifiers):
if keycode[1] == 'escape':
#Why doesnt it work without global?
#If I don't use a global i get "tempBallVelocity referenced before assignment
global tempBallVelocity
tempBallVelocity = self.ball.velocity
self.ball.velocity = 0,0
if keycode[1] == '`':
#Make the ball go again, thus exiting pause
#This is where the error occurs if I don't use global
self.ball.velocity = tempBallVelocity
コメントでわかるように、グローバルを使用しないと、割り当てエラーの前に参照されます。しかし、これはローカル変数です。なぜこれが起こっているのかわかりません。
誰にもアイデアはありますか?ありがとう?
編集:誰もが私の意図を明確にするために、グローバルを使用したくありませんが、それが機能する唯一の方法です。グローバルを使用しないことをお勧めします。