MCPcopy Create free account
hub / github.com/Mrinank-Bhowmick/python-beginner-projects / GameState

Class GameState

projects/PONG/main.py:205–265  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

203
204
205class GameState:
206 def __init__(self) -> None:
207 self.state = "menu"
208
209 def start_game(self):
210 if self.state == "menu":
211 self.menu()
212 elif self.state == "easy_game":
213 self.easy_game()
214 elif self.state == "med_game":
215 self.med_game()
216 elif self.state == "hard_game":
217 self.hard_game()
218
219 def menu(self):
220 WIN.fill(bg_color)
221 WIN.blit(menu_head, menu_head_rect)
222 easy.draw()
223 medium.draw()
224 hard.draw()
225 cursor.update()
226 pygame.display.flip()
227
228 def easy_game(self):
229 global created, FPS, started
230 if created:
231 create_ball()
232 ball.reset_ball()
233 started = 2
234 created = False
235 FPS = 110
236 pygame.draw.rect(WIN, accent_color, middle_strip)
237 cursor.update()
238 game_manager.run_game()
239
240 def med_game(self):
241 global FPS, ball_speed, created, started
242 opponent.speed = 8
243 if created:
244 create_ball()
245 ball.reset_ball()
246 started = 2
247 created = False
248 FPS = 140
249 pygame.draw.rect(WIN, accent_color, middle_strip)
250 cursor.update()
251 game_manager.run_game()
252
253 def hard_game(self):
254 global FPS, ball_speed, created, started
255 opponent.speed = 10
256 if created:
257 create_ball()
258 ball.reset_ball()
259 started = 2
260 created = False
261 ball_speed = 20
262 FPS = 170

Callers 1

main.pyFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected