(Jan-03-2020, 07:13 PM)michael1789 Wrote: try replacing your code with what I have.
class TileMap:
def __init__(self, filename):
tm = load_pygame(filename, pixelalpha=True)
self.width = tm.width * tm.tilewidth
self.height = tm.height * tm.tilewidth
self.tmxdata = tm
They are very different.
Where you define "tm" I think you need "()" at the end.
I replayed it with your code and now I have this error:
Traceback (most recent call last):
File "/Users/.../Desktop/MyRPG/main.py", line 5171, in <module>
g = Game()
File "/Users/.../Desktop/MyRPG/main.py", line 15, in __init__
self.load_data()
File "/Users/.../Desktop/MyRPG/main.py", line 61, in load_data
self.map = TiledMap(path.join(map_folder, 'map1.tmx'))
File "/Users/.../Desktop/MyRPG/tilemap.py", line 29, in __init__
tm = load_pygame(filename, pixelalpha=True)
NameError: name 'load_pygame' is not defined
It says that load_pygame is not defined. You said, that at the tm thing I'd need a () at the end. But you don't have that either. So I tried it also this way:
def __init__(self, filename):
tm = pytmx.util_pygame.load_pygame()
#tm = load_pygame(filename, pixelalpha=True)
self.width = tm.width * tm.tilewidth
self.height = tm.height * tm.tilewidth
self.tmxdata = tm
There I am getting a different error, which is:
Traceback (most recent call last):
File "/Users/.../Desktop/MyRPG/main.py", line 5, in <module>
from sprites import *
File "/Users/.../Desktop/MyRPG/sprites.py", line 4, in <module>
from tilemap import collide_hit_rect
File "/Users/.../Desktop/MyRPG/tilemap.py", line 28
def __init__(self, filename):
^
IndentationError: unindent does not match any outer indentation level
I checked that it is intentioned, but although I'm getting this error above.