0

I'm beginning in python and I wanted to follow a simple guide to make a little game, but I encountered a problem and I can't seem to fix it. The problem is that after running my program, my IDE is showing the "IndexError: list index out of range" but I don't know why, I suspect one part of my code for this problem ( I think it's TileColour[map1[row][col]]) but I can't figure what's wrong with it. So I came here hoping you could help me with that problem. Thanks for the help!

import pygame, sys

#Define which tile to use
L = 0 #LAVA
R = 1 #ROCK
F = 2 #FOREST
G = 3 #BURNEDGRASS


#Tiles colours
LAVARED = (207, 16, 32)
ROCKYGREY = (169,169,169)
GREENFOREST = (0,76,0)
BURNEDGRASS = (187, 155, 96)

#Associating Color and Tiles
TileColour = { L : LAVARED,
               R : ROCKYGREY,
               F : GREENFOREST,
               G : BURNEDGRASS
               }

#Map Creation

map1 = [[G,G,G,G,G,R,G,G,F,F,F,F,F,F],      #15*15
        [G,L,L,G,G,R,G,G,F,F,F,F,F,F],
        [G,L,L,G,G,G,G,G,F,G,F,F,F,F],
        [G,G,G,R,G,G,G,G,G,G,G,G,G,F],
        [G,G,G,G,G,G,G,G,G,G,G,G,G,G],
        [G,R,G,G,G,R,G,G,G,G,G,R,G,G],
        [G,G,G,G,G,G,R,G,G,G,G,G,G,G],
        [G,G,G,G,G,G,G,G,G,G,G,G,G,G],
        [G,G,G,G,G,G,G,G,G,G,G,G,G,G],
        [G,L,G,G,G,G,G,G,G,R,L,G,G,G],
        [G,L,L,G,G,R,G,L,L,L,G,G,G,G],
        [G,G,G,G,G,G,G,G,G,L,L,G,G,G],
        [G,R,R,G,G,G,G,G,G,G,G,G,R,G],
        [G,G,R,G,G,G,G,G,G,G,G,G,G,G],
        ]

#Map Size
TILESIZE = 35
MAPWIDTH = 15
MAPHEIGHT = 15

#Display
pygame.init()
DISPLAY = pygame.display.set_mode((MAPWIDTH*TILESIZE,MAPHEIGHT*TILESIZE))

#Basic HUD
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
    
    for row in range(MAPHEIGHT):
        for col in range(MAPWIDTH):
            pygame.draw.rect(DISPLAY,TileColour[map1[row][col]],(col*TILESIZE,row*TILESIZE,TILESIZE,TILESIZE))
            
            
    pygame.display.update()
    
  • The mp size 14x14, not 15x15. `MAPWIDTH = 14` `MAPHEIGHT = 14` – Rabbid76 Mar 24 '21 at 16:40
  • 1
    Ahhh that's why x), Thanks man, Think I was going for 14*14 but my mind wanted 15*15. Well a nice little rookie mistake, have a good day man and thanks for the quick answer – CacheCaille Mar 24 '21 at 16:42

0 Answers0