else:
print("No image to draw")
-myGame = Config(1500, 1000)
-flags = pygame.OPENGL & pygame.DOUBLEBUF
-depth = 0
-
-# main loop sleep (100 milliseconds)
-delay = 0.01
-
-pygame.display.set_caption("TJ's platform scroller")
-
-# background colour
-stepping = 8 # pixels scrolled each flip
-background_colour = (20, 20, 64)
-screen = pygame.display.set_mode(myGame.resolution, flags, depth)
-resolution = screen.get_size()
-screen.fill(background_colour)
-
-# background image
-background_image = SeamlessBackground(os.path.join("resources", "binary.jpg"))
-background_image.draw(screen, -1, 0) # -1 flags initial background drawing
-pygame.display.flip()
-
-# scrolling object
-blip = pygame.Surface((abs(stepping), abs(stepping)), pygame.HWSURFACE)
-blip_colour = (128, 128, 128)
-blip.fill(blip_colour)
-
-# starting position
-y = resolution[1] / 2
-
-if myGame.config['sound'] == 1:
- myGame.soundtrack.play(os.path.join("resources","Music","Rolemusic_-_Savage_Steel_Fun_Club.mp3"), loops=-1)
-
-auto_scroll = False
-movement = 0
-x_pos = 0
-myGame.play = True
-while (myGame.play):
- # update game state
- if x_pos + movement >= 0:
- x_pos += movement
- else:
- movement = 0
-# print(movement)
-
- # change colour randomly
- d_red = random.randrange(-1,2) *8
- d_green = random.randrange(-1,2) *8
- d_blue = random.randrange(-1,2) *8
- # build a new tuple, ensuring all values are valid
- blip_colour = tuple( b+d if b+d < 256 and b+d >=0 else b for b, d in zip(blip_colour, (d_red, d_green, d_blue)) )
- blip.fill(blip_colour)
- # change position up or down randomly by one step
- dy = random.randrange(-1,2) * abs(stepping)
- if((y + dy) < resolution[1] and (y + dy) >= 0):
- # screen.fill(background_colour, pygame.Rect(resolution[0] - abs(stepping), y, abs(stepping), abs(stepping) ))
- y += dy
+def main():
+ myGame = Config(1500, 1000)
+ flags = pygame.OPENGL & pygame.DOUBLEBUF
+ depth = 0
+
+ # main loop sleep (100 milliseconds)
+ delay = 0.01
+
+ pygame.display.set_caption("TJ's platform scroller")
- # debug info
- #if myGame.debug:
- #print(y, blip_colour)
+ # background colour
+ stepping = 8 # pixels scrolled each flip
+ background_colour = (20, 20, 64)
+ screen = pygame.display.set_mode(myGame.resolution, flags, depth)
+ resolution = screen.get_size()
+ screen.fill(background_colour)
- # redraw the display
- screen.scroll(-movement, 0)
- background_image.draw(screen, x_pos, movement)
- screen.blit(blip, (resolution[0] - abs(stepping), y))
+ # background image
+ background_image = SeamlessBackground(os.path.join("resources", "binary.jpg"))
+ background_image.draw(screen, -1, 0) # -1 flags initial background drawing
pygame.display.flip()
-
- # manage the frame-rate
- time.sleep(delay)
-
- # process events
- for event in pygame.event.get():
- if event.type == pygame.QUIT or (event.type == pygame.KEYDOWN and event.key == pygame.K_q):
- myGame.play = False
- if event.type == pygame.KEYDOWN:
- k = event.key
- if k == pygame.K_p:
- time.sleep(10)
- if not auto_scroll:
+
+ # scrolling object
+ blip = pygame.Surface((abs(stepping), abs(stepping)), pygame.HWSURFACE)
+ blip_colour = (128, 128, 128)
+ blip.fill(blip_colour)
+
+ # starting position
+ y = resolution[1] / 2
+
+ if myGame.config['sound'] == 1:
+ myGame.soundtrack.play(os.path.join("resources","Music","Rolemusic_-_Savage_Steel_Fun_Club.mp3"), loops=-1)
+
+ auto_scroll = False
+ movement = 0
+ x_pos = 0
+ myGame.play = True
+ while (myGame.play):
+ # update game state
+ if x_pos + movement >= 0:
+ x_pos += movement
+ else:
movement = 0
- keys_pressed = pygame.key.get_pressed()
- if sum(keys_pressed):
- if keys_pressed[pygame.K_6]:
- # volume down
- myGame.soundtrack.down()
- elif keys_pressed[pygame.K_7]:
- # volume up
- myGame.soundtrack.up()
- elif keys_pressed[pygame.K_d]:
- movement = stepping
- elif keys_pressed[pygame.K_a]:
- movement = -stepping
- elif keys_pressed[pygame.K_l]:
- auto_scroll = True if auto_scroll == False else False
-
-myGame.soundtrack.fadeout(5000)
-time.sleep(5)
-pygame.display.quit()
-exit(0)
+ # print(movement)
+
+ # change colour randomly
+ d_red = random.randrange(-1,2) *8
+ d_green = random.randrange(-1,2) *8
+ d_blue = random.randrange(-1,2) *8
+ # build a new tuple, ensuring all values are valid
+ blip_colour = tuple( b+d if b+d < 256 and b+d >=0 else b for b, d in zip(blip_colour, (d_red, d_green, d_blue)) )
+ blip.fill(blip_colour)
+
+ # change position up or down randomly by one step
+ dy = random.randrange(-1,2) * abs(stepping)
+ if((y + dy) < resolution[1] and (y + dy) >= 0):
+ # screen.fill(background_colour, pygame.Rect(resolution[0] - abs(stepping), y, abs(stepping), abs(stepping) ))
+ y += dy
+
+ # debug info
+ #if myGame.debug:
+ #print(y, blip_colour)
+
+ # redraw the display
+ screen.scroll(-movement, 0)
+ background_image.draw(screen, x_pos, movement)
+ screen.blit(blip, (resolution[0] - abs(stepping), y))
+ pygame.display.flip()
+
+ # manage the frame-rate
+ time.sleep(delay)
+
+ # process events
+ for event in pygame.event.get():
+ if event.type == pygame.QUIT or (event.type == pygame.KEYDOWN and event.key == pygame.K_q):
+ myGame.play = False
+ if event.type == pygame.KEYDOWN:
+ k = event.key
+ if k == pygame.K_p:
+ time.sleep(10)
+ if not auto_scroll:
+ movement = 0
+ keys_pressed = pygame.key.get_pressed()
+ if sum(keys_pressed):
+ if keys_pressed[pygame.K_6]:
+ # volume down
+ myGame.soundtrack.down()
+ elif keys_pressed[pygame.K_7]:
+ # volume up
+ myGame.soundtrack.up()
+ elif keys_pressed[pygame.K_d]:
+ movement = stepping
+ elif keys_pressed[pygame.K_a]:
+ movement = -stepping
+ elif keys_pressed[pygame.K_l]:
+ auto_scroll = True if auto_scroll == False else False
+
+ myGame.soundtrack.fadeout(5000)
+ time.sleep(5)
+ pygame.display.quit()
+ exit(0)
+
+if __name__ == '__main__':
+ main()