如何在 pygame 中制作视觉清单
How do I make a visual inventory in pygame
我正在制作一个小游戏,我需要一个五到六个插槽的库存,它基本上看起来像这样 [ ][ ][ ][ ][ ][ ],在每个盒子中,项目需要放置。目前,我已经尝试过使用字典,但他们没有给我想要的东西。我想要的清单:一个 6 槽库存,可将任何东西(例如:矩形)放在第一个开放槽中。如果按下一个键,最右边的插槽中有一个项目的项目将会消失,当按下另一个键时,它应该将一个项目放入第一个打开的插槽中。我只是希望有人向我发送正确的方向,并告诉我以这种方式创建库存有什么用。
我对 pygame 不太熟悉,但我对 python 很熟悉所以希望这对您有所帮助..
听起来你需要制作一个列表作为 stack
inv = []
下面的代码会将一个项目添加到该列表。
if len(inv) < 6:
inv.append(item)
else:
print("No inventory space")
此代码将删除最近添加的项目:
inv.pop()
.pop() 删除 python 列表中最近添加的项目。此时此人可以尝试将前一项重新添加到 space 中,它应该进入 space 6(在列表中是 inv[5] 因为列表将 0 计为第一个插槽).
编辑 1 评论回复:
导入 pygame, 系统
pygame.init()
inv = []
#Code below will add an item to that list.
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
key_pressed = pygame.key.get_pressed()
if key_pressed[pygame.K_x]:
if len(inv) < 6:
inv.append("someItem")
else:
print("No inventory space")
#This code will remove the most recently added item:
if key_pressed[pygame.K_z]:
inv.pop()
if key_pressed[pygame.K_c]:
print(inv)
我正在制作一个小游戏,我需要一个五到六个插槽的库存,它基本上看起来像这样 [ ][ ][ ][ ][ ][ ],在每个盒子中,项目需要放置。目前,我已经尝试过使用字典,但他们没有给我想要的东西。我想要的清单:一个 6 槽库存,可将任何东西(例如:矩形)放在第一个开放槽中。如果按下一个键,最右边的插槽中有一个项目的项目将会消失,当按下另一个键时,它应该将一个项目放入第一个打开的插槽中。我只是希望有人向我发送正确的方向,并告诉我以这种方式创建库存有什么用。
我对 pygame 不太熟悉,但我对 python 很熟悉所以希望这对您有所帮助..
听起来你需要制作一个列表作为 stack
inv = []
下面的代码会将一个项目添加到该列表。
if len(inv) < 6:
inv.append(item)
else:
print("No inventory space")
此代码将删除最近添加的项目:
inv.pop()
.pop() 删除 python 列表中最近添加的项目。此时此人可以尝试将前一项重新添加到 space 中,它应该进入 space 6(在列表中是 inv[5] 因为列表将 0 计为第一个插槽).
编辑 1 评论回复: 导入 pygame, 系统 pygame.init()
inv = []
#Code below will add an item to that list.
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
key_pressed = pygame.key.get_pressed()
if key_pressed[pygame.K_x]:
if len(inv) < 6:
inv.append("someItem")
else:
print("No inventory space")
#This code will remove the most recently added item:
if key_pressed[pygame.K_z]:
inv.pop()
if key_pressed[pygame.K_c]:
print(inv)