
赛车游戏的编写
文章平均质量分 80
赛车游戏的编写
棉猴
这个作者很懒,什么都没留下…
展开
-
Python游戏编程之赛车游戏6-6
发送自定义事件的代码如图7所示。图7 发送自定义事件的代码其中,第65行代码自定义了事件INC_SPEED,第66行代码通过pygame.time.set_timer()函数每隔1秒钟发送一次INC_SPEED事件。在while True循环中,处理自定义事件,代码如图8所示。图8 处理自定义事件的代码第69行代码从事件队列中取出事件,第70行代码判断取出的事件是否是自定义事件INC_SPEED,如果是,则第71行代码改变“敌人”汽车的速度SPEED的值,实现变速的目的。原创 2025-02-24 20:39:42 · 490 阅读 · 0 评论 -
Python游戏编程之赛车游戏6-5
定义游戏帧数,并且创建pygame.time.Clock类的实例,代码如图3所示。图3 定义游戏帧数及创建pygame.time.Clock类的实例的代码其中,变量FPS即为游戏帧数,可以通过修改该变量的值来调整“敌人”汽车的速度;FramePerSec是pygame.time.Clock类的实例。原创 2025-02-24 20:36:30 · 475 阅读 · 0 评论 -
Python游戏编程之赛车游戏6-4
与“2.2 将“敌人”汽车类的实例加入到all_sprites “精灵组”中”中的all_sprites “精灵组”不同,Enemies“精灵组”中并不是游戏的所有精灵,而是只包括敌人汽车精灵(后续增加游戏难度时,可以加入多个敌人)。将“敌人”汽车类的实例加入到all_sprites “精灵组”中的代码如图5所示。将“敌人”汽车类的实例加入到Enemies“精灵组”中的代码如图6所示。图6 将“敌人”汽车类的实例加入到Enemies“精灵组”中的代码。图5 将“敌人”汽车类的实例加入到“精灵组”中的代码。原创 2025-02-24 09:44:40 · 426 阅读 · 0 评论 -
Python游戏编程之赛车游戏6-3
第45-48行代码的作用是当“敌人”汽车移动到屏幕下方之后的处理,当rect.bottom大于HEIGHT,表示“敌人”汽车移动到屏幕下方,此时表示玩家成功躲避了一辆敌人的汽车,第46行代码将玩家分数加1,第47-48行代码重新设置“敌人”汽车的位置,使其重新回到屏幕的上方,并随机设置其水平位置。第40行代码设置“敌人”汽车的初始位置,因为其初始位置在屏幕的最上方,所以其纵坐标的值是0,横坐标是一个随机值,可以保证“敌人”汽车出现的随机性,原理如图2所示。图3 “敌人”汽车类的move()方法代码。原创 2025-02-24 09:41:45 · 412 阅读 · 0 评论 -
Python游戏编程之赛车游戏6-2
Player类的move()方法用于玩家控制汽车左右移动,当玩家点击键盘上的左右按键时,汽车会相应地进行左右移动。move()方法的代码如图7所示。图7 move()方法的代码其中,第20行代码通过pygame.key.get_pressed()函数获取键盘中所有按键的状态,并将其保存在变量pressed_keys中,当玩家按下了向左的按键,pressed_keys[K_LEFT]的值是True,当玩家按下了向右的按键,pressed_keys[K_RIGHT]的值是True。原创 2025-02-23 21:34:35 · 1551 阅读 · 0 评论 -
Python游戏编程之赛车游戏6-1
玩家类的__init__()方法在实例化该类时调用,代码如图6所示。图6 玩家类的__init__()方法的代码其中,第13行中将玩家类的名字设置为Player,该类的父类是pygame.sprite.Sprite类。第14-18行代码定义了玩家的__init__()方法,在该方法中,首先在第17行导入表示玩家的红色汽车图片,即“Player.png”;第18行通过image.get_rect()方法得到图片的位置及大小;原创 2025-02-23 21:30:28 · 1303 阅读 · 0 评论