飞机大战-我方飞机移动基于事件

简介: 飞机大战-我方飞机移动基于事件。

相关代码如下:
import pygame
from pygame.locals import *

创建类,描述我机

class HeroPlane:

def __init__(self, scree):
    self.x = 190
    self.y = 576
    self.scree = scree
    self.image = pygame.image.load("./feiji/hero1.png")

# 用于显示飞机
def display(self):
    self.scree.blit(self.image, (self.x, self.y))  # 显示我机

# 飞机左移
def move_left(self):
    self.x -= 5

# 飞机右移
def move_right(self):
    self.x += 5

def key_control(hero):

# 获取事件,比如按键等
for event in pygame.event.get():

    # 判断是否是点击了退出按钮
    if event.type == QUIT:
        print("exit")
        exit()
    # 判断是否是按下了键
    elif event.type == KEYDOWN:
        # 检测按键是否是a或者left
        if event.key == K_a or event.key == K_LEFT:
            print('left')
            hero.move_left()

        # 检测按键是否是d或者right
        elif event.key == K_d or event.key == K_RIGHT:
            print('right')
            hero.move_right()

        # 检测按键是否是空格键
        elif event.key == K_SPACE:
            print('space')

def main():

# 1.创建一个窗口,用来显示内容,窗口宽480,高852
scree = pygame.display.set_mode((480, 700), 0, 32)

# 2.创建一个和窗口大小的图片,用来当背景图
background = pygame.image.load("./feiji/background.png")
# 创建我机
hero = HeroPlane(scree)  # 创建对象

# 3.把背景图放到窗口中显示
while True:
    # 设定需要显示的背景图
    scree.blit(background, (0, 0))  # 背景图的左上角,和窗口左上角重合
    # 显示我机
    hero.display()  # 对象调用方法
    key_control(hero)

    # 更新需要显示的内容
    pygame.display.update()

if name == 'main':
main()

相关文章
|
6月前
|
流计算
泡泡龙游戏开发实战教程(3):泡泡如何发射,反弹,移动,停靠
泡泡龙游戏开发实战教程(3):泡泡如何发射,反弹,移动,停靠
101 0
|
存储
飞机大战-飞机爆炸(8)
编写飞机大战,完成飞机爆炸功能。
73 0
|
Python
飞机大战-发射子弹(5)
用Python语言编写飞机大战,主要编写发射子弹。
81 0
|
5月前
|
图形学 开发者
【unity小技巧】两种办法解决FPS游戏枪或者人物穿墙穿模问题
【unity小技巧】两种办法解决FPS游戏枪或者人物穿墙穿模问题
209 0
|
5月前
|
前端开发 C语言 C++
每周一坑--打飞机游戏
每周一坑--打飞机游戏
|
Python
飞机大战-显示我方飞机
用Python进行编写飞机大战,显示我方飞机。
54 0
【unity2D横板】【sunnyland】敌人巡逻追击主角以及返回原点
【unity2D横板】【sunnyland】敌人巡逻追击主角以及返回原点
Egret学习笔记 (Egret打飞机-8.敌机和主角飞机发射子弹)
Egret学习笔记 (Egret打飞机-8.敌机和主角飞机发射子弹)
69 0
Threejs实现开门关门动画
Threejs实现开门关门动画
681 0
Threejs实现开门关门动画
【“玩物立志”scratch少儿编程】坦克动荡-“穿墙控制”和“子弹反弹”的实现-含完整代码
【“玩物立志”scratch少儿编程】坦克动荡-“穿墙控制”和“子弹反弹”的实现-含完整代码
664 0
【“玩物立志”scratch少儿编程】坦克动荡-“穿墙控制”和“子弹反弹”的实现-含完整代码