For loop movement and collision

def move(self,x,y):

so its the move function relative to mother? or just move any where like a teleport … assuming its teleport

self.mother.setPos(self.mother.getPos() + Point3(x*self.tilesize,y*self.tilesize,0))

why are we setting mothers position before we know if we can move there?

if ((self.maze.mazeList[self.maze.row][self.maze.col])==0):

where did self.maze.row self.maze.col come from??? We have x and y and mother’s position but that looks like the size of the maze … should be more like:

    if self.maze.mazeList[x][y]:

==0 is implisit in python and extra () are not needed

self.motherZPos=0

why are we setting this? If we never set mothers postion to any thing but zero … its a tiled map why set it back to 0 it always 0 as it is

self.mother.setPos(self.motherXPos, self.motherYPos,self.motherZPos)

ahah? where did self.motherYPos,self.motherZPos come form should it be x and y?

self.mother.setHpr(self.motherZRot,0,0)

why we rotate mother in random direction? Shouln’t it be at least facing a way from the position we teleported from?

i guess you want some thing like this

def move(self,x,y):
    if self.maze.mazeList[x][y]:
        self.mother.setPos(x*self.tilesize,y*self.tilesize,0)