0
나는 pygame
으로 게임을 만들고 있는데, 타일 타일에 대해 다양한 것을 파싱하려면 ConfigParser
을 사용하고 있습니다. 나는이 부분에 도착하면 그러나 나는 내가 parse.read(filename)
대신 의도 한 개체의 목록을 반환 같은데요이 오류Pythons ConfigParser가 내 파일을 목록으로 읽기.
self.level = self.config.get("level","map")
AttributeError: 'list' object has no attribute 'get'
를 출력
parse.read(filename)
하는 곳. 다음은 제 코드입니다. 나는 구글을 찾고 있었지만 이것과 관련된 것을 찾을 수 없었다.
import pygame
import ConfigParser
parse = ConfigParser.ConfigParser()
class MakeLevel():
def MapMake(self,spriteList,filename):
self.config = parse.read(filename)
self.level = self.config.get("level","map")
self.LegendDict = self.config.get("dictionary")
self.Proper = []
self.newTile = None
self.x = 0
self.y += 50
#Get propper legend stats
for items in LegendDict:
for row in level:
for col in row:
if col == items:
#LegendDict[items]
self.image = self.config.get(items, "image")
self.newTile = MapTile(self.image,self.x,self.y)
return spriteList.add(self.newTile)
x += 50
y += 50
x = 0
class MapTile(pygame.sprite.Sprite):
def __init__(self,image,x,y):
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(image)
self.rect = Rect(x, y, 32, 32)
class Controller():
def __init__(self):
pass
def Keys(self):
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_a:
return 'a'
if event.key == pygame.K_d:
return 'd'
if event.type == pygame.KEYUP:
if event.key == pygame.K_a:
return 'a up'
if event.key == pygame.K_d:
return 'd up'
AllSprites = pygame.sprite.Group()
makeLevel = MakeLevel()
makeLevel.MapMake(AllSprites,"level1.ini")
AllSprites.draw()
또한 파일을 미리 열어 보았지만 여전히 작동하지 않았습니다.
mapFile = open("level1.ini")
makeLevel.MapMake(AllSprites, mapFile)
은 내가
level1.ini
파일이
main.py
파일과 같은 폴더에 있는지 확인했다. 문제가 너무 분명하지 않기를 바랍니다.
오케이, 작동합니다. 고맙습니다! –