You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					41 lines
				
				1.2 KiB
			
		
		
			
		
	
	
					41 lines
				
				1.2 KiB
			| 
								 
											6 years ago
										 
									 | 
							
								import sys
							 | 
						||
| 
								 | 
							
								import pygame
							 | 
						||
| 
								 | 
							
								from pygame.locals import *
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								class Window():
							 | 
						||
| 
								 | 
							
								  def __init__(self, w, h, caption="window", double=False):
							 | 
						||
| 
								 | 
							
								    self.w = w
							 | 
						||
| 
								 | 
							
								    self.h = h
							 | 
						||
| 
								 | 
							
								    pygame.init()
							 | 
						||
| 
								 | 
							
								    pygame.display.set_caption(caption)
							 | 
						||
| 
								 | 
							
								    self.double = double
							 | 
						||
| 
								 | 
							
								    if self.double:
							 | 
						||
| 
								 | 
							
								      self.screen = pygame.display.set_mode((w*2,h*2), pygame.DOUBLEBUF)
							 | 
						||
| 
								 | 
							
								    else:
							 | 
						||
| 
								 | 
							
								      self.screen = pygame.display.set_mode((w,h), pygame.DOUBLEBUF)
							 | 
						||
| 
								 | 
							
								    self.camera_surface = pygame.surface.Surface((w,h), 0, 24).convert()
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  def draw(self, out):
							 | 
						||
| 
								 | 
							
								    pygame.surfarray.blit_array(self.camera_surface, out.swapaxes(0,1))
							 | 
						||
| 
								 | 
							
								    if self.double:
							 | 
						||
| 
								 | 
							
								      camera_surface_2x = pygame.transform.scale2x(self.camera_surface)
							 | 
						||
| 
								 | 
							
								      self.screen.blit(camera_surface_2x, (0, 0))
							 | 
						||
| 
								 | 
							
								    else:
							 | 
						||
| 
								 | 
							
								      self.screen.blit(self.camera_surface, (0, 0))
							 | 
						||
| 
								 | 
							
								    pygame.display.flip()
							 | 
						||
| 
								 | 
							
								  
							 | 
						||
| 
								 | 
							
								  def getkey(self):
							 | 
						||
| 
								 | 
							
								    while 1:
							 | 
						||
| 
								 | 
							
								      event = pygame.event.wait()
							 | 
						||
| 
								 | 
							
								      if event.type == QUIT:
							 | 
						||
| 
								 | 
							
								        pygame.quit()
							 | 
						||
| 
								 | 
							
								        sys.exit()
							 | 
						||
| 
								 | 
							
								      if event.type == KEYDOWN:
							 | 
						||
| 
								 | 
							
								        return event.key
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  def getclick(self):
							 | 
						||
| 
								 | 
							
								    for event in pygame.event.get():
							 | 
						||
| 
								 | 
							
								      if event.type == pygame.MOUSEBUTTONDOWN:
							 | 
						||
| 
								 | 
							
								        mx, my = pygame.mouse.get_pos()
							 | 
						||
| 
								 | 
							
								        return mx, my
							 |