首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查某个条件并参考pygame实现它一次?

如何检查某个条件并参考pygame实现它一次?
EN

Stack Overflow用户
提问于 2020-06-15 18:40:27
回答 2查看 31关注 0票数 1

我正在做一个电子游戏,我想要增加敌人的数量,当玩家达到20杀,即kills % 20 == 0。我有一个函数enemy_spawn(number_of_enemies),我实现了下面的代码。我想知道我做错了什么,因为一旦它执行,就会有无限的敌人。请建议一些可能的修复方法。我只附上了相关的代码。谢谢。

代码语言:javascript
复制
number_of_enemies = 5
num_check = False

redrawWindow():
    global num_check
    global number_of_enemies

    if kills%20 == 0 and kills > 1:
        num_check = True
    if num_check:
        number_of_enemies += 1
        num_check = False
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-06-15 18:48:23

这是有道理的。将num_check设置为False后,如果用户未获得任何新的杀死,则第一个if条件将其设置回True。

一种解决方案是当num_check为真时也将终止计数重置为0。在实际应用中,使用第二个杀伤数来跟踪总杀伤量可能是符合逻辑的。

票数 2
EN

Stack Overflow用户

发布于 2020-06-16 02:54:44

将第二个if更改为elif,这样它就不会在第一个if设置num_check = True之后立即执行。如下所示:

代码语言:javascript
复制
if kills%20 == 0 and kills > 1:
    num_check = True
elif num_check:
    number_of_enemies += 1
    num_check = False
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62386498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档