单向场景切换版本 #1
@@ -1,9 +1,52 @@
|
|||||||
import pygame
|
import pygame
|
||||||
from src.config.color import Color
|
|
||||||
|
from src.config.game_config import GameConfig
|
||||||
from src.scenes.base_scene import BaseScene
|
from src.scenes.base_scene import BaseScene
|
||||||
|
|
||||||
|
|
||||||
class GameScene(BaseScene):
|
class GameScene(BaseScene):
|
||||||
|
def __init__(self, screen):
|
||||||
|
super().__init__(screen)
|
||||||
|
self.dirty_x = 400
|
||||||
|
self.dirty_y = 300
|
||||||
|
|
||||||
|
self.Left_status = False
|
||||||
|
self.right_status = False
|
||||||
|
self.up_status = False
|
||||||
|
self.down_status = False
|
||||||
|
|
||||||
|
# 颜色
|
||||||
|
self.WHITE = (255, 255, 255)
|
||||||
|
self.RED = (255, 0, 0)
|
||||||
|
self.BLUE = (0, 0, 255)
|
||||||
|
|
||||||
def update(self):
|
def update(self):
|
||||||
pygame.draw.rect(self.screen, Color.a, [10,20,30,40])
|
if self.Left_status and self.dirty_x >= 0:
|
||||||
|
self.dirty_x -= 1
|
||||||
|
if self.right_status and self.dirty_x <= GameConfig.window_x - 20:
|
||||||
|
self.dirty_x += 1
|
||||||
|
if self.up_status and self.dirty_y >= 0:
|
||||||
|
self.dirty_y -= 1
|
||||||
|
if self.down_status and self.dirty_y <= GameConfig.window_y - 30:
|
||||||
|
self.dirty_y += 1
|
||||||
|
dirty = pygame.draw.rect(self.screen, self.BLUE, [self.dirty_x, self.dirty_y, 20, 30])
|
||||||
|
|
||||||
|
def handle_event(self, event):
|
||||||
|
if event.type == pygame.KEYDOWN:
|
||||||
|
if event.key == pygame.K_LEFT or event.key == pygame.K_a:
|
||||||
|
self.Left_status = True
|
||||||
|
elif event.key == pygame.K_RIGHT or event.key == pygame.K_d:
|
||||||
|
self.right_status = True
|
||||||
|
elif event.key == pygame.K_UP or event.key == pygame.K_w:
|
||||||
|
self.up_status = True
|
||||||
|
elif event.key == pygame.K_DOWN or event.key == pygame.K_s:
|
||||||
|
self.down_status = True
|
||||||
|
elif event.type == pygame.KEYUP:
|
||||||
|
if event.key == pygame.K_LEFT or event.key == pygame.K_a:
|
||||||
|
self.Left_status = False
|
||||||
|
elif event.key == pygame.K_RIGHT or event.key == pygame.K_d:
|
||||||
|
self.right_status = False
|
||||||
|
elif event.key == pygame.K_UP or event.key == pygame.K_w:
|
||||||
|
self.up_status = False
|
||||||
|
elif event.key == pygame.K_DOWN or event.key == pygame.K_s:
|
||||||
|
self.down_status = False
|
||||||
Reference in new issue
Block a user