擅长:python、mysql、java
<p>这听起来像是使用回调函数的例子。Pygame的<a href="http://pygame-zero.readthedocs.org/en/latest/builtins.html#animations" rel="nofollow">animation</a>类具有<code>on_finished</code>属性,该属性用于分配给回调。一旦动画播放完毕,就会调用回调函数并停止游戏。下面是一个爆炸类的例子。你知道吗</p>
<pre><code>class Explosion:
def __init__(self, rect, size, cb_func):
self.animate_explosion(cb_func)
...
def animate_explosion(self, cb_func):
# start animation here
...
# when animation finishes
self.on_finished = cb_func()
</code></pre>
<p>在你的游戏逻辑中,你有如下的东西:</p>
<pre><code>def callback():
running = False
if playerHealth <= 0: # If the player dies
expl = Explosion(hit.rect.center, 'lg', callback())
all_sprites.add(expl) # Show animation of him blowing up
</code></pre>