def move(self,direction): self.lastPos=self.getPosition() if direction[0] == "LEFT": self.setPosX(self.getPosX()-self.speed) elif direction[0] == "RIGHT": self.setPosX(self.getPosX()+self.speed) if direction[1] == "UP": self.setPosY(self.getPosY()-self.speed) elif direction[1] == "DOWN": self.setPosY(self.getPosY()+self.speed) if self.getPosX() <= 0: self.setPosX(0) elif self.getPosX() - self.anim.getSize()[0] >= ScreenManager.getInstance().getScreenSize()[0]: self.setPosX(ScreenManager.getInstance().getScreenSize()[0]-self.anim.getSize()[0]) if self.getPosY() <= 0: self.setPosY(0) elif self.getPosY() - self.anim.getSize()[1] >= ScreenManager.getInstance().getScreenSize()[1]: self.setPosY(ScreenManager.getInstance().getScreenSize()[1]-self.anim.getSize()[1])
def prepareOwner(self,mode): #Debugging #return True # Startup if mode == 1: center = [i/2 for i in ScreenManager.getInstance().getScreenSize()] return self.moveOwnerToPosition(*center) ''' newPos = ScreenManager.getInstance().getScreenSize() if self.getOwner().getPosX() != newPos[0]/2: self.getOwner().move( ("RIGHT" if self.getOwner().getPosX() < newPos[0]/2 else "LEFT")) if self.getOwner().getPosY() != newPos[1]/2: self.getOwner().move( ("DOWN" if self.getOwner().getPosX() < newPos[0]/2 else "UP")) return newPos[0] == self.getOwner().getPosX() and newPos[1] == self.getOwner().getPosY() ''' else: return True
def updatePosition(self): s = ScreenManager.getInstance() #s.renderToMainSurface(self.surf,(self.position[0],self.position[1])) self.anim.setPos((self.getPosX(),self.getPosY())) self.anim.render(s)
def prepareOwner(self,mode): if mode == 1: center = [i/2 for i in ScreenManager.getInstance().getScreenSize()] return self.moveOwnerToPosition(*center) else: return True