pygametimerandom pygame.sprite Sprite SCREEN_WIDTH = SCREEN_HEIGHT = BG_COLOR = pygame.Color() TEXT_COLOR = pygame.Color() BaseItem(Sprite): (): pygame.sprite.Sprite.() MainGame(): window = my_tank = enemyTankList = [] enemyTankCount = myBulletList = [] enemyBulletList = [] explodeList = [] (): (): pygame.display.init() MainGame.window = pygame.display.set_mode([SCREEN_WIDTHSCREEN_HEIGHT]) MainGame.my_tank = Tank() .createEnemyTank() pygame.display.set_caption() : time.sleep() MainGame.window.fill(BG_COLOR) .getEvent() MainGame.window.blit(.getTextSuface(% (MainGame.enemyTankList))()) MainGame.my_tank MainGame.my_tank.live: MainGame.my_tank.displayTank() : MainGame.my_tank MainGame.my_tank = .blitEnemyTank() .blitMyBullet() .blitEnemyBullet() .blitExplode() MainGame.my_tank MainGame.my_tank.live: MainGame.my_tank.stop: MainGame.my_tank.move() pygame.display.update() (): top = i (MainGame.enemyTankCount): left = random.randint() speed = random.randint() enemy = EnemyTank(lefttopspeed) MainGame.enemyTankList.append(enemy) (): enemyTank MainGame.enemyTankList: enemyTank.live: enemyTank.displayTank() enemyTank.randMove() enemyBullet = enemyTank.shot() enemyBullet: MainGame.enemyBulletList.append(enemyBullet) : MainGame.enemyTankList.remove(enemyTank) (): myBullet MainGame.myBulletList: myBullet.live: myBullet.displayBullet() myBullet.move() myBullet.myBullet_hit_enemyTank() : MainGame.myBulletList.remove(myBullet) (): enemyBullet MainGame.enemyBulletList: enemyBullet.live: enemyBullet.displayBullet() enemyBullet.move() enemyBullet.enemyBullet_hit_myTank() : MainGame.enemyBulletList.remove(enemyBullet) (): explode MainGame.explodeList: explode.live: explode.displayExplode() : MainGame.explodeList.remove(explode) (): () () (text): pygame.font.init() font = pygame.font.SysFont() textSuface = font.render(textTEXT_COLOR) textSuface (): eventList = pygame.event.get() event eventList: event.type == pygame.QUIT: .endGame() event.type == pygame.KEYDOWN: MainGame.my_tank MainGame.my_tank.live: event.key == pygame.K_LEFT: MainGame.my_tank.direction = MainGame.my_tank.stop = () event.key == pygame.K_RIGHT: MainGame.my_tank.direction = MainGame.my_tank.stop = () event.key == pygame.K_UP: MainGame.my_tank.direction = MainGame.my_tank.stop = () event.key == pygame.K_DOWN: MainGame.my_tank.direction = MainGame.my_tank.stop = () event.key == pygame.K_SPACE: () (MainGame.myBulletList) < : myBullet = Bullet(MainGame.my_tank) MainGame.myBulletList.append(myBullet) event.type == pygame.KEYUP: event.key == pygame.K_UP event.key == pygame.K_DOWN event.key == pygame.K_RIGHT event.key == pygame.K_LEFT: MainGame.my_tank MainGame.my_tank.live: MainGame.my_tank.stop = Tank(Sprite): (lefttop): .images = { : pygame.image.load(): pygame.image.load(): pygame.image.load(): pygame.image.load()} .direction = .image = .images[.direction] .rect = .image.get_rect() .rect.left = left .rect.top = top .speed = .stop = .live = (): .direction == : .rect.left > : .rect.left -= .speed .direction == : .rect.left + .rect.height < SCREEN_WIDTH: .rect.left += .speed .direction == : .rect.top > : .rect.top -= .speed .direction == : .rect.top + .rect.height < SCREEN_HEIGHT: .rect.top += .speed (): Bullet() (): .image = .images[.direction] MainGame.window.blit(.image.rect) MyTank(Tank): (): EnemyTank(Tank): (lefttopspeed): (EnemyTank).(lefttop) .images = { : pygame.image.load(): pygame.image.load(): pygame.image.load(): pygame.image.load()} .direction = .randDirection() .image = .images[.direction] .rect = .image.get_rect() .rect.left = left .rect.top = top .speed = speed .flag = .step = (): num = random.randint() num == : num == : num == : num == : (): .step <= : .direction = .randDirection() .step = : .move() .step -= (): num = random.randint() num < : Bullet() Bullet(Sprite): (Tank): .image = pygame.image.load() .direction = Tank.direction .rect = .image.get_rect() .direction == : .rect.left = Tank.rect.left + Tank.rect.width / - .rect.width / .rect.top = Tank.rect.top - .rect.height .direction == : .rect.left = Tank.rect.left + Tank.rect.width / - .rect.width / .rect.top = Tank.rect.top + Tank.rect.height .direction == : .rect.left = Tank.rect.left - .rect.height .rect.top = Tank.rect.top + Tank.rect.width / - .rect.height / .direction == : .rect.left = Tank.rect.left + Tank.rect.height .rect.top = Tank.rect.top + Tank.rect.height / - .rect.height / .speed = .live = (): .direction == : .rect.top > : .rect.top -= .speed : .live = .direction == : .rect.top + .rect.height < SCREEN_HEIGHT: .rect.top += .speed : .live = .direction == : .rect.left > : .rect.left -= .speed : .live = .direction == : .rect.left + .rect.width < SCREEN_WIDTH: .rect.left += .speed : .live = (): MainGame.window.blit(.image.rect) (): enemyTank MainGame.enemyTankList: pygame.sprite.collide_rect(enemyTank): enemyTank.live = .live = explode = Explode(enemyTank) MainGame.explodeList.append(explode) (): MainGame.my_tank MainGame.my_tank.live: pygame.sprite.collide_rect(MainGame.my_tank): explode = Explode(MainGame.my_tank) MainGame.explodeList.append(explode) .live = MainGame.my_tank.live = Wall(): (): (): Explode(): (tank): .rect = tank.rect .images = [ pygame.image.load()pygame.image.load()pygame.image.load()pygame.image.load()pygame.image.load()] .step = .image = .images[.step] .live = (): .step < (.images): .image = .images[.step] .step += MainGame.window.blit(.image.rect) : .live = .step = Music(): (): (): __name__ == : MainGame().startGame()
老师 为啥我写完后敌方子弹碰到我方坦克后整个画面就卡住不动了呢,也不报错
老师,这个警告是怎么来的??老师视频咋们不会
老师,为什么这是b的返回值是None
我想问一下调用event.wait()阻滞了之后,会继续往下走!!,等sleep的时间结束之后,再执行完没有执行的
老师,这个报错什么意思??我看了代码跟老师的一样的
在代码中这两个是怎么打印的,他们是在哪个步骤被调用打印的呢
老师,查询无结果,跟笔记里面对过没有错,而且我想重试一下然后刷新就要重新登录,重新登录第一次又跳到error出错画面,然后再是一次右好了
webdemo.zip
请问老师,从哪里可以下载坦克image的图片
var userid=$("#userid").val();var username=$("#username").val();选择器不是{}个符号么
var userid=$("#userid").val();var username=$("#username").val();
选择器不是{}个符号么
userid=().()username=().()
老师我零基础学习这个,到现在能听懂但是一让我自己写就不知道从哪里开始写,是继续听下去还是停下来理解下写。
怎么成乱码了
本节课中,奇数行的背景颜色设置为red,为什么表头的颜色并没有变化呢?
老师,这一节与上一节的添加用户有什么不一样吗,出来形参,效果,作用什么的呢,不太理解
老师,我在这里锁的时候锁属性也可以,也就是说锁什么都行了?在使用的时候有没有什么要注意的地方呀?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637