How to use the init() function for Python?
The question may seem silly, but I just started learning Python and don't know how to do it. When I write code, I don't use the init() function, since I can't get values from this function in the update() and draw() functions. So I can't understand why Python needs an initialization function. The code before the init() function is also executed once. The only thing I can't do without using the initialization function is to restart the game (by calling init()). The specific question is: how do I get the values from the init() function in other functions? Here is a sample code.
If you put all the code before the init() function in the init() function, then nothing will work.
class Player: def __init__(self): self.name = 'player' self.x = 0 self.y = 0 self.width = 8 self.height = 8 self.speed = 2 def draw(self): screen.drawSprite('player', self.x, self.y, self.width, self.height) def move(self): if checkInput(keyboard, "UP"): self.y += self.speed if checkInput(keyboard, "DOWN"): self.y -= self.speed if checkInput(keyboard, "LEFT"): self.x -= self.speed if checkInput(keyboard, "RIGHT"): self.x += self.speed player1 = Player() def init(): pass def update(): player1.move() pass def draw(): screen.clear("rgb(142,255,255)") player1.draw() pass #Monitors whether the keyboard object field is defined before checking the value of this field def checkInput(obj, val): if hasattr(obj, val): return obj[val] != 0 return 0