2015-12-16 43 views
-3

在我需要制作的游戏中遇到麻烦。玩家,地精,坑和黄金被随机放置在一个阵列中。玩家需要在没有陷入坑中或被妖精吃掉的情况下获得金币。即时通讯仍处于初级阶段,但我甚至无法让玩家进入随机房间。这是我的代码如何在我的冒险游戏中分配玩家

array = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]] 
print (array) 
rows=4 
cols=4 
objects = [[0 for x in range(cols)]for y in range(rows)] 
print (objects) 



import random 
player = "player" 
row=random.randrange(0,3) 
col=random.randrange(0,3) 
if (objects[row][col]) == 0: 
objects[row][col]= player 




import random 
goblin = "goblin" 
flag = True 
while (flag): 
row=random.randrange(0,3) 
col=random.randrange(0,3) 
if (objects[row][col]) == 0: 
    objects[row][col]= goblin 
    flag = False 

pit = "pit" 
flag = True 
while (flag): 
row=random.randrange(0,3) 
col=random.randrange(0,3) 
if (objects[row][col]) == 0: 
    objects[row][col]= pit 
    flag = False 

pit = "pit" 
flag = True 
while (flag): 
row=random.randrange(0,3) 
col=random.randrange(0,3) 
if (objects[row][col]) == 0: 
    objects[row][col]= pit 
    flag = False 


gold = "gold" 
flag = True 
while (flag): 
row=random.randrange(0,3) 
col=random.randrange(0,3) 
if (objects[row][col]) == 0: 
    objects[row][col]= gold 
    flag = False 
    print (objects) 

objects[0][0]=1 
objects[0][1]=2 
objects[0][2]=3 
objects[0][3]=4 
objects[1][0]=5 
objects[1][1]=6 
objects[1][2]=7 
objects[1][3]=8 
objects[2][0]=9 
objects[2][1]=10 
objects[2][2]=11 
objects[2][3]=12 
objects[3][0]=13 
objects[3][1]=14 
objects[3][2]=15 
objects[3][3]=16 

print ("Welcome to the Adventure Game") 
print ("You are in Room " , objects[player]) 

我想找到阵列中的球员的位置并打印通过说“你在房间里,”但我不知道该怎么把为显示

+1

我不是......完全确定你在问什么。 – Kris

+0

好的,我把玩家分配到一个随机房间,但我想打印一些东西,说明玩家在什么房间...... print(“你在房间里”,我需要一些东西,但我不知道该怎么做放 – becky

+0

我需要在数组中找到播放器的位置 – becky

回答

0

我假设你正在寻找球员的位置。试试这个:

import random 

array = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]] 
print (array) 
rows=4 
cols=4 
objects = [[0 for x in range(cols)]for y in range(rows)] 
print (objects) 


player = "player" 
row=random.randrange(0,3) 
col=random.randrange(0,3) 
if (objects[row][col]) == 0: 
    objects[row][col]= player 



goblin = "goblin" 
flag = True 
while (flag): 
    row=random.randrange(0,3) 
    col=random.randrange(0,3) 
    if (objects[row][col]) == 0: 
     objects[row][col]= goblin 
     flag = False 

pit = "pit" 
flag = True 
while (flag): 
    row=random.randrange(0,3) 
    col=random.randrange(0,3) 
    if (objects[row][col]) == 0: 
     objects[row][col]= pit 
     flag = False 

pit = "pit" 
flag = True 
while (flag): 
    row=random.randrange(0,3) 
    col=random.randrange(0,3) 
    if (objects[row][col]) == 0: 
     objects[row][col]= pit 
     flag = False 


gold = "gold" 
flag = True 
while (flag): 
    row=random.randrange(0,3) 
    col=random.randrange(0,3) 
    if (objects[row][col]) == 0: 
     objects[row][col]= gold 
     flag = False 
     print (objects) 


print ("Welcome to the Adventure Game") 
#iterate through the 2D array and look for player 
for room in objects: 
    for thing in room: 
     if thing == "player": 
      #this will print out the room where the player is 
      print thing + " is in room: " 
      print room 

我也想让你知道,你没有在顶部有import random很多次,只有一次!你也有一些冗余,为了简单起见我会清理一下。