|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
运行之后就会报错:
Traceback (most recent call last):
File "G:\python\测试\pygame\我的飞机\main.py", line 92, in <module>
main()
File "G:\python\测试\pygame\我的飞机\main.py", line 52, in main
me = myplane.Myplane(bg_size)
File "G:\python\测试\pygame\我的飞机\myplane.py", line 13, in __init__
self.height - self.rect.height - 60
ValueError: not enough values to unpack (expected 3, got 2)
这是我写的mian部分,和myplane部分:
main:- import myplane
- #import bullet
- #import enemy
- #import supply
- from pygame.locals import *
- from random import *
- #游戏 音乐初始化
- pygame.init()
- pygame.mixer.init()
- #尺寸,背景,标题
- bg_size = width, height = 480, 700
- screen = pygame.display.set_mode(bg_size)
- pygame.display.set_caption('飞机大战')
- background = pygame.image.load('images/background.png').convert()
- #载入游戏音乐
- pygame.mixer.music.load("sound/game_music.ogg")
- pygame.mixer.music.set_volume(0.2)
- def main():
- pygame.mixer.music.play(-1)
- #生成我方飞机
- me = myplane.Myplane(bg_size)
-
- clock = pygame.time.Clock()
-
- running = True
- while running:
- #设置退出条件
- for event in pygame.event.get():
- if event.type == QUIT:
- pygame.quit()
- sys.exit()
- #检测用户的键盘操作
- key_pressed = pygame.key.get_pressed()
- if key_pressed[K_w] or key_pressed[K_UP]:
- me.moveUP()
- if key_pressed[K_s] or key_pressed[K_DOWN]:
- me.moveDOWN()
- if key_pressed[K_a] or key_pressed[K_LEFT]:
- me.moveLEFT()
- if key_pressed[K_d] or key_pressed[K_RIGHT]:
- me.moveRIGHT()
-
- #打印背景
- screen.blit(background,(0,0))
- #绘制我方飞机
- screen.blit(me.image, me.rect)
-
- pygame.display.flip()
- clock.tick(60)
-
- #主程序运行
- if __name__ == '__main__':
- try:
- main()
- except SystemExit:
- pass
- except:
- traceback.print_exc()
- pygame.quit
- input()
复制代码
myplane 部分
- import pygame
- class Myplane(pygame.sprite.Sprite):
- def __init__ (self, bg_size):
- pygame.sprite.Sprite.__init__(self)
- self.image = pygame.image.load('images/me1.png').convert_alpha()
- self.rect = self.image.get_rect()
- self.width,self.height = bg_size[0], bg_size[1]
- self.rect.left, self,rect.top = \
- (self.width - self.rect.width) //2, \
- self.height - self.rect.height - 60
- self.speed = 10
- #定义上下左右属性
- def moveUP(self):
- if self.rect.top > 0:
- self.rect.top -= self.speed
- else:
- self.rect.top = 0
-
- def moveDOWN(self):
- if self.rect.bottom < self.height - 60:
- self.rect.top += self.speed
- else:
- self.rect.bottom = self.height -60
- def moveLEFT(self):
- if self.rect.left > 0:
- self.rect.left -= self.speed
- else:
- self.rect.left = 0
- def moveRIGHT(self):
- if self.rect.right < self.width:
- self.rect.left += self.speed
- else:
- self.rect.right = self.width
-
复制代码
求各位大佬指教!!万分感谢!!
myplane里:
- self.rect.left, self,rect.top = \
- (self.width - self.rect.width) //2, \
- self.height - self.rect.height - 60
复制代码
把上面第一行self后面的逗号改成点号:
- self.rect.left, self.rect.top = \
- (self.width - self.rect.width) //2, \
- self.height - self.rect.height - 60
复制代码
|
|