代码之家  ›  专栏  ›  技术社区  ›  ForceVII Pythonidae

我试着做一个没有pygame(带字母)的游戏机。但我不知道我该写什么

  •  0
  • ForceVII Pythonidae  · 技术社区  · 7 年前

    我试图制作游戏机,但我不知道如何编码地图。

    import time
    
    class Map:
        def showMap(self):
            print()
            #?
    
    player_x = 2
    player_y = 2
    
    def Loop(): #Objects
        print(" - RPG Game\n")
        Map1 = Map()
        Map1.showMap()
        print(" X = "+str(player_x)+" Y = "+str(player_y)+"\n")
    
    while True:
        time.sleep(0.1)
    
        keys = input()
    
        if keys == "w":
            player_y -= 1
        if keys == "a":
            player_x -= 1
        if keys == "s":
            player_y += 1
        if keys == "d":
            player_x += 1
        Loop()
    

    我正在尝试创建一个5x5的地图。 但我不能创造。我要写什么
    def showMap(self): ?

    谢谢。

    0 回复  |  直到 7 年前
        1
  •  2
  •   ForceVII Pythonidae    6 年前

    我做到了。感谢@Ken White。

    import time
    
    pl = "O "
    
    l1 = "+ "
    l2 = "+ "
    l3 = "+ "
    l4 = "+ "
    l5 = "+ "
    l6 = "+ "
    l7 = "+ "
    l8 = "+ "
    l9 = "+ "
    
    loc = 5
    
    class Map:
        def showMap(self):  
            if loc==1:
                print(pl,l2,l3) #O is player.
                print(l4,l5,l6)
                print(l7,l8,l9)
            elif loc==2:
                print(l1,pl,l3)
                print(l4,l5,l6)
                print(l7,l8,l9)
            elif loc==3:
                print(l1,l2,pl)
                print(l4,l5,l6)
                print(l7,l8,l9)
            elif loc==4:
                print(l1,l2,l3)
                print(pl,l5,l6)
                print(l7,l8,l9)
            elif loc==5:
                print(l1,l2,l3)
                print(l4,pl,l6)
                print(l7,l8,l9)
            elif loc==6:
                print(l1,l2,l3)
                print(l4,l5,pl)
                print(l7,l8,l9)
            elif loc==7:
                print(l1,l2,l3)
                print(l4,l5,l6)
                print(pl,l8,l9)
            elif loc==8:
                print(l1,l2,l3)
                print(l4,l5,l6)
                print(l7,pl,l9)
            elif loc==9:
                print(l1,l2,l3)
                print(l4,l5,l6)
                print(l7,l8,pl)
    
    while True:
        print(" - RPG Game\n")
    
        time.sleep(0.1)
        Map1 = Map()
        Map1.showMap()
        print(" X = "+str(loc%3)+" Y = "+str(loc//3)+"\n")
        keys = input(" > ")
    
        if keys == "w":
            loc -= 3 #3 here because we have 3 letter in columns
        if keys == "a":
            loc -= 1
        if keys == "s":
            loc += 3 
        if keys == "d":
            loc += 1
    
        print("\n"*10)