PYTHON飞机大战(第五天)

  • 记录一下今天不认真看书的日子
    今天制作飞机大战外星人代码,话不多说先放代码:
import pygame
from pygame.sprite import Sprite

class Alien(Sprite):
   def __init__(self,ai_settings,screen):
       super(Alien,self).__init__()
       self.screen = screen
       self.ai_settings = ai_settings
       self.image = pygame.image.load('ship.bmp')
       self.rect = self.image.get_rect()
       self.rect.x = self.rect.width
       self.rect.y = self.rect.height
       self.x = float(self.rect.x)
       self.alien_width = self.image.get_width()

   def blitme(self):
       self.screen.blit(self.image,self.rect)

这是外星人的类代码,同样的将每个外星人添加为一组,就是昨天我没搞懂得Group。
主程序:
def run_game():
   pygame.display.set_caption("Alien Invasion")
   ai_setting = plant_game()
   ship = Ship(ai_setting,ai_setting.screen)
   bullets = Group()
   ###这里,建立了Group
   aliens = Group()

到这里,我都明白。外星人制作实际上和飞船制作是同一个道理,区别在于外星人需要多个外星人,并且建立多个外星人Group,就是上面得那个。我现在得问题在于,我会建立单行的外星人,只有单个列。
在这里插入图片描述

书上写的代码,我没有看懂。。然后我下午我自己试了一下。建立了别的形状。
在这里插入图片描述
这个写出来后,发现代码写的不对。。明天接着改一下,我想说可以让第一行矩形以一个Group的形式,然后进行Y轴下移,相当于将其设置为一个整体,但是Y轴变化,我想应该是可以的。
然后今天,下午刷了B站看了别的PYTHON教程,设计了一个烤地瓜程序。。

  • 程序的设计初衷是这样:
  • 1、从仓库拿出地瓜,放入烤箱
  • 2、开始进行烤地瓜,判断烤地瓜时间,烤了5分钟,然后询问是否要拿出来?如果不拿出来,继续烤,烤到10分钟询问是否拿出来,拿出来的话我们就添加到一个列表里,命名为地瓜1,然后记下来刚刚烤好的地瓜。
  • 3、这个程序目前只能有效烤一个地瓜,而且每次记下来的地瓜也是有问题的,应该是我的迭代器和循环有问题。
  • 这个程序就是随便玩玩。。然后看看明天能不能做好一点,随便找个灵感练习了一些类的用法。

猜你喜欢

转载自blog.csdn.net/weixin_49712647/article/details/112689877
今日推荐