简单的代码(空闲游戏)概念
Simple Ticker (Idle Game) Concept
我正在尝试制作一个简单的自动收报机游戏。代码以每秒 1 clix 的速度运行,如下面的代码所示。当有足够的 clix 时(在这种情况下,40
用于 Apple
)我希望能够购买它,并且 clix 应该重置 -40
的数量并继续计数 1每秒。
购买 1 个 Apple 后,我还想将 clix 速率从之前的 1/秒增加到 2/秒,依此类推。
当代码遵循自上而下的顺序时,Python 这怎么可能?在这种情况下,函数 clicker()
永远不会到达它下面的行。
我将使用 类 让这一切变得更简单,但在此之前有人可以帮助我解决这个障碍吗?(我可以在后台以某种方式让点击 运行 而其他部分的代码可以 运行 还是有其他方法?)
import time
def clicker():
global clix
clix = 0
endgame = False
while not endgame:
clix += 1
time.sleep(1)
return clix
c = clicker()
print('1. Apple : 40 clix | 2. Orange : 75 clix')
ch = int(input('\nPurchase ID: '))
if c == 1 and c >= 40:
print('Got an Apple!')
clix += 2 # Just to get the point across, I know this line will throw an error.
elif ch == 2 and c >= 75:
print('Got an Orange!')
clix += 4
else:
print('Need more Clix')
您的代码中还有一些其他错误。但是要回答您的具体问题,是的,您可以 运行 一些东西在后台,而其他部分 运行。
您正在寻找的是线程。
查看此答案了解更多详情:Creating Threads in python
我正在尝试制作一个简单的自动收报机游戏。代码以每秒 1 clix 的速度运行,如下面的代码所示。当有足够的 clix 时(在这种情况下,40
用于 Apple
)我希望能够购买它,并且 clix 应该重置 -40
的数量并继续计数 1每秒。
购买 1 个 Apple 后,我还想将 clix 速率从之前的 1/秒增加到 2/秒,依此类推。
当代码遵循自上而下的顺序时,Python 这怎么可能?在这种情况下,函数 clicker()
永远不会到达它下面的行。
我将使用 类 让这一切变得更简单,但在此之前有人可以帮助我解决这个障碍吗?(我可以在后台以某种方式让点击 运行 而其他部分的代码可以 运行 还是有其他方法?)
import time
def clicker():
global clix
clix = 0
endgame = False
while not endgame:
clix += 1
time.sleep(1)
return clix
c = clicker()
print('1. Apple : 40 clix | 2. Orange : 75 clix')
ch = int(input('\nPurchase ID: '))
if c == 1 and c >= 40:
print('Got an Apple!')
clix += 2 # Just to get the point across, I know this line will throw an error.
elif ch == 2 and c >= 75:
print('Got an Orange!')
clix += 4
else:
print('Need more Clix')
您的代码中还有一些其他错误。但是要回答您的具体问题,是的,您可以 运行 一些东西在后台,而其他部分 运行。
您正在寻找的是线程。
查看此答案了解更多详情:Creating Threads in python