Detecting if Wall Solid. GetTileProperties() not reporting the solid attribute?

Hey, here’s the lowdown (video): http://screencast.com/t/caowosDQnaf

After digging around I found an error in mte.getTileProperties() which causes the function to fail if the tile is the first tile in a tileset and the tileset is not the first tileset. This would explain the lack of collisions with the chest easily enough, but it would only explain the lack of collisions with walls if 1) all your solid walls are the same first tile in the set, rotated as needed, and 2) the wall tileset is not the first tileset in the map file. If this is the case please let me know, otherwise there may be bugs hiding elsewhere. Preferably we can get all of these bugs squashed at once.

You can test the current solution by going to getTileProperties at about line 1823 in mte.lua and changing every instance of:

if tile \> map.tilesets[i].firstgid then

to:

if tile \>= map.tilesets[i].firstgid then

in that specific function. 

The chest tile is indeed the first tile in the second set i’m using, but the walls  are not the first tile in the first set I’m using.

OK I will test this and get back

Thanks!

Any news on whether this solved your collision issues, Steve?

After digging around I found an error in mte.getTileProperties() which causes the function to fail if the tile is the first tile in a tileset and the tileset is not the first tileset. This would explain the lack of collisions with the chest easily enough, but it would only explain the lack of collisions with walls if 1) all your solid walls are the same first tile in the set, rotated as needed, and 2) the wall tileset is not the first tileset in the map file. If this is the case please let me know, otherwise there may be bugs hiding elsewhere. Preferably we can get all of these bugs squashed at once.

You can test the current solution by going to getTileProperties at about line 1823 in mte.lua and changing every instance of:

if tile \> map.tilesets[i].firstgid then

to:

if tile \>= map.tilesets[i].firstgid then

in that specific function. 

The chest tile is indeed the first tile in the second set i’m using, but the walls  are not the first tile in the first set I’m using.

OK I will test this and get back

Thanks!

Any news on whether this solved your collision issues, Steve?