<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=%EB%B9%84%ED%96%89%EA%B8%B0%EA%B2%8C%EC%9E%84%2FBasisSource</id>
	<title>비행기게임/BasisSource - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=%EB%B9%84%ED%96%89%EA%B8%B0%EA%B2%8C%EC%9E%84%2FBasisSource"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%B9%84%ED%96%89%EA%B8%B0%EA%B2%8C%EC%9E%84/BasisSource&amp;action=history"/>
	<updated>2026-05-14T22:25:17Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%B9%84%ED%96%89%EA%B8%B0%EA%B2%8C%EC%9E%84/BasisSource&amp;diff=52217&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:29, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%B9%84%ED%96%89%EA%B8%B0%EA%B2%8C%EC%9E%84/BasisSource&amp;diff=52217&amp;oldid=prev"/>
		<updated>2021-02-07T05:29:38Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; &lt;br /&gt;
 import random, os.path&lt;br /&gt;
 import pygame&lt;br /&gt;
 from pygame.locals import *&lt;br /&gt;
 &lt;br /&gt;
 import Behavior&lt;br /&gt;
 &lt;br /&gt;
 MAX_SHOTS = 5&lt;br /&gt;
 &lt;br /&gt;
 if not pygame.image.get_extended():&lt;br /&gt;
     raise SystemExit,&amp;quot;sorry, extended image module required&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 SCREENRECT = Rect(0,0,1024,768)&lt;br /&gt;
 &lt;br /&gt;
 def load_image(file):&lt;br /&gt;
     file = os.path.join(&amp;#039;data&amp;#039;,file)&lt;br /&gt;
     try:&lt;br /&gt;
         surface = pygame.image.load(file)&lt;br /&gt;
     except pygame.error:&lt;br /&gt;
         raise SystemExit, &amp;#039;Could not load image &amp;quot;%s&amp;quot;%s&amp;#039;%(file,pygame.get_error)&lt;br /&gt;
     return surface.convert()&lt;br /&gt;
 &lt;br /&gt;
 def load_images(*files):&lt;br /&gt;
     imgs = []&lt;br /&gt;
     for file in files:&lt;br /&gt;
         imgs.append(load_image(file))&lt;br /&gt;
     return imgs&lt;br /&gt;
 &lt;br /&gt;
 class Player(pygame.sprite.Sprite):&lt;br /&gt;
     speed = 4&lt;br /&gt;
 &lt;br /&gt;
     FRAME = 1&lt;br /&gt;
     UP = 0&lt;br /&gt;
     REGULAR = 1&lt;br /&gt;
     DOWN = 2&lt;br /&gt;
     FrameFrequence = 5&lt;br /&gt;
     PreviousMove = 0&lt;br /&gt;
     count = 0&lt;br /&gt;
     imageCount = 0&lt;br /&gt;
     imageMax = 15&lt;br /&gt;
     imagefrequence = 5&lt;br /&gt;
 &lt;br /&gt;
     maxShots = 1&lt;br /&gt;
 &lt;br /&gt;
     experience = 0&lt;br /&gt;
 &lt;br /&gt;
     def __init__(self):&lt;br /&gt;
         pygame.sprite.Sprite.__init__(self,self.containers)&lt;br /&gt;
         self.image = self.images[self.REGULAR]&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         self.rect.centerx = SCREENRECT.right&lt;br /&gt;
         self.rect.bottom = SCREENRECT.bottom - 100&lt;br /&gt;
         self.reloading = 0;&lt;br /&gt;
         self.timing = 0;&lt;br /&gt;
 &lt;br /&gt;
     def move(self, directionx,directiony, xy):&lt;br /&gt;
         if xy==&amp;#039;xy&amp;#039;:&lt;br /&gt;
             self.rect.move_ip(directionx*self.speed,directiony*self.speed)&lt;br /&gt;
         elif xy==&amp;#039;x&amp;#039;:&lt;br /&gt;
             self.rect.move_ip(directionx*self.speed,0)&lt;br /&gt;
         elif xy==&amp;#039;y&amp;#039;:&lt;br /&gt;
             self.rect.move_ip(0,directiony*self.speed)&lt;br /&gt;
         self.rect = self.rect.clamp(SCREENRECT)&lt;br /&gt;
 &lt;br /&gt;
     def setImage(self, direction) :&lt;br /&gt;
         self.count=self.count+1&lt;br /&gt;
 &lt;br /&gt;
     def update(self):&lt;br /&gt;
         self.count = self.count + 1&lt;br /&gt;
         if self.count%self.imagefrequence == 0:&lt;br /&gt;
             if self.imageCount &amp;amp;lt;self.imageMax :&lt;br /&gt;
                 self.image = self.images[self.imageCount]&lt;br /&gt;
                 self.imageCount= self.imageCount + 1&lt;br /&gt;
                 self.count=0&lt;br /&gt;
             else :&lt;br /&gt;
                 self.imageCount = 0&lt;br /&gt;
 &lt;br /&gt;
     def gunpos(self) :&lt;br /&gt;
         return self.rect.right-130, self.rect.bottom-100&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Shots(pygame.sprite.Sprite) :&lt;br /&gt;
     speedx = -10&lt;br /&gt;
     speedy = 0&lt;br /&gt;
 &lt;br /&gt;
     def __init__(self, pos, kind, speedy=0) :&lt;br /&gt;
         pygame.sprite.Sprite.__init__(self, self.containers)&lt;br /&gt;
         self.image = self.images[kind]&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         self.rect.midbottom = pos&lt;br /&gt;
         self.speedy = speedy&lt;br /&gt;
 &lt;br /&gt;
     def update(self) :&lt;br /&gt;
         self.rect.move_ip(self.speedx, self.speedy)&lt;br /&gt;
         if self.rect.right &amp;amp;lt;= SCREENRECT.left :&lt;br /&gt;
             self.kill()&lt;br /&gt;
 &lt;br /&gt;
     def pos(self) :&lt;br /&gt;
         self.kill()&lt;br /&gt;
         return self.rect.centerx, self.rect.centery&lt;br /&gt;
 &lt;br /&gt;
 class EnemyShot1(Shots):&lt;br /&gt;
     speedx = 7&lt;br /&gt;
     speedy = 0&lt;br /&gt;
     count = 0&lt;br /&gt;
     imageCount = 0&lt;br /&gt;
     imageMax = 4&lt;br /&gt;
     imagefrequence = 5&lt;br /&gt;
     playerPosY = 0&lt;br /&gt;
     patientOfInducement = 50&lt;br /&gt;
     speedIncreaseRateOfY = 0.1&lt;br /&gt;
 &lt;br /&gt;
     def __init__(self, pos, playerPosY) :&lt;br /&gt;
         pygame.sprite.Sprite.__init__(self, self.containers)&lt;br /&gt;
         self.image = self.images[0]&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         self.rect.midbottom = pos&lt;br /&gt;
         self.playerPosY = playerPosY&lt;br /&gt;
 &lt;br /&gt;
     def update(self):&lt;br /&gt;
         if self.rect.centery&amp;amp;lt;(self.playerPosY-self.patientOfInducement):&lt;br /&gt;
             self.speedy+=self.speedIncreaseRateOfY&lt;br /&gt;
         elif self.rect.centery&amp;amp;gt;(self.playerPosY+self.patientOfInducement):&lt;br /&gt;
             self.speedy-=self.speedIncreaseRateOfY&lt;br /&gt;
 &lt;br /&gt;
         self.rect.move_ip(self.speedx,self.speedy)&lt;br /&gt;
         if self.rect.right &amp;amp;gt;= SCREENRECT.right :&lt;br /&gt;
             self.kill()&lt;br /&gt;
         self.count = self.count + 1&lt;br /&gt;
         if self.count%self.imagefrequence == 0:&lt;br /&gt;
             if self.imageCount &amp;amp;lt;self.imageMax :&lt;br /&gt;
                 self.image = self.images[self.imageCount]&lt;br /&gt;
                 self.imageCount= self.imageCount + 1&lt;br /&gt;
                 self.count=0&lt;br /&gt;
             else :&lt;br /&gt;
                 self.imageCount = 0&lt;br /&gt;
 &lt;br /&gt;
 class SuperClassOfEachClass(pygame.sprite.Sprite):&lt;br /&gt;
     def __init__(self):&lt;br /&gt;
         pass&lt;br /&gt;
 &lt;br /&gt;
     def setContainers(self,arg):&lt;br /&gt;
         self.containers = arg&lt;br /&gt;
         pygame.sprite.Sprite.__init__(self,self.containers)&lt;br /&gt;
 &lt;br /&gt;
     def setImage(self,arg):&lt;br /&gt;
         self.image = arg&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         #self.setPos()&lt;br /&gt;
 &lt;br /&gt;
     def setImages(self,arg):&lt;br /&gt;
         self.images = arg&lt;br /&gt;
 &lt;br /&gt;
     def update(self):&lt;br /&gt;
         self.rect.move_ip(self.speed,0)&lt;br /&gt;
 &lt;br /&gt;
 class Item(pygame.sprite.Sprite, SuperClassOfEachClass):&lt;br /&gt;
     speed  = 10&lt;br /&gt;
     def setPos(self, posx, posy):&lt;br /&gt;
         self.rect.centery = posy+100&lt;br /&gt;
         self.rect.centerx = posx+100&lt;br /&gt;
     def update(self):&lt;br /&gt;
         self.rect.move_ip(self.speed,0)&lt;br /&gt;
 &lt;br /&gt;
 class Enemy(pygame.sprite.Sprite, SuperClassOfEachClass):&lt;br /&gt;
 &lt;br /&gt;
     #Default gauage of Enemys&lt;br /&gt;
     speedx = 10&lt;br /&gt;
     speedy = 2&lt;br /&gt;
     imageCount = 0&lt;br /&gt;
     imageMax = 5&lt;br /&gt;
     imagefrequence = 5&lt;br /&gt;
     count = 0&lt;br /&gt;
     ImageUpwardShape = 1&lt;br /&gt;
     ImageDownwardShape = 0&lt;br /&gt;
     life = 1&lt;br /&gt;
     pattern = 0&lt;br /&gt;
     playerPosY = 0&lt;br /&gt;
     shotRate = 9 #If ShotRate is high the enemy shot least than low&lt;br /&gt;
 &lt;br /&gt;
     def __init__(self, life, imageMax, playerPosY):&lt;br /&gt;
         self.life = life&lt;br /&gt;
         self.imageMax = imageMax&lt;br /&gt;
         self.playerPosY = playerPosY&lt;br /&gt;
 &lt;br /&gt;
     def setSpritePattern(self, pattern):&lt;br /&gt;
         self.pattern = pattern&lt;br /&gt;
 &lt;br /&gt;
     def setPos(self, posx, posy):&lt;br /&gt;
         self.rect.centery = posy+100&lt;br /&gt;
         self.rect.centerx = posx+100&lt;br /&gt;
 &lt;br /&gt;
     def setImage(self,arg):&lt;br /&gt;
         self.image = arg&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         self.sprite = pygame.Surface(self.rect.size)&lt;br /&gt;
         #self.sprite.blit(0,(0,0))&lt;br /&gt;
         #self.image = self&lt;br /&gt;
 &lt;br /&gt;
     def update(self):&lt;br /&gt;
 &lt;br /&gt;
         self.count = self.count + 1&lt;br /&gt;
         if self.count%self.imagefrequence == 0:&lt;br /&gt;
             if self.imageCount &amp;amp;lt;self.imageMax and self.imageCount &amp;amp;gt;= 0 :&lt;br /&gt;
                 self.image = self.images[self.imageCount]&lt;br /&gt;
                 if self.ImageUpwardShape==1:&lt;br /&gt;
                     self.imageCount = self.imageCount + 1&lt;br /&gt;
 &lt;br /&gt;
                 else:&lt;br /&gt;
                     self.imageCount = self.imageCount -1&lt;br /&gt;
             elif self.imageCount==self.imageMax-1:&lt;br /&gt;
                 self.ImageUpwardShape = 0&lt;br /&gt;
             elif self.imageCount==0:&lt;br /&gt;
                 self.ImageUpwardShape = 1&lt;br /&gt;
             else:&lt;br /&gt;
                 self.imageCount = 0&lt;br /&gt;
 &lt;br /&gt;
         if self.count%(self.imagefrequence*self.shotRate) == 0:&lt;br /&gt;
             EnemyShot1(self.gunpos(), self.playerPosY)&lt;br /&gt;
             self.count = 0&lt;br /&gt;
 &lt;br /&gt;
         Behavior.Behavior(self,self.pattern)&lt;br /&gt;
         if self.rect.right &amp;amp;gt;= SCREENRECT.right :&lt;br /&gt;
             self.kill()&lt;br /&gt;
 &lt;br /&gt;
     def gunpos(self) :&lt;br /&gt;
         return self.rect.right, self.rect.bottom&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Explosion(pygame.sprite.Sprite):&lt;br /&gt;
     defaultLife = 10;&lt;br /&gt;
 &lt;br /&gt;
     def __init__(self,pos):&lt;br /&gt;
         pygame.sprite.Sprite.__init__(self,self.containers)&lt;br /&gt;
         self.image = self.images[0]&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         self.rect.centerx = pos[0]&lt;br /&gt;
         self.rect.centery = pos[1]&lt;br /&gt;
         self.lifes = self.defaultLife&lt;br /&gt;
 &lt;br /&gt;
     def update(self):&lt;br /&gt;
         self.lifes = self.lifes- 1&lt;br /&gt;
         if self.lifes &amp;amp;lt;0:&lt;br /&gt;
             self.kill()&lt;br /&gt;
 &lt;br /&gt;
 class Building(pygame.sprite.Sprite,SuperClassOfEachClass):&lt;br /&gt;
     rect = Rect(0,0,0,0)&lt;br /&gt;
     def __init__(self):&lt;br /&gt;
         self.speed = 15&lt;br /&gt;
 &lt;br /&gt;
     def setImage(self,arg):&lt;br /&gt;
         self.image = arg&lt;br /&gt;
         self.rect = self.image.get_rect()&lt;br /&gt;
         self.setPos()&lt;br /&gt;
 &lt;br /&gt;
     def setPos(self):&lt;br /&gt;
         self.rect.centerx = SCREENRECT.left&lt;br /&gt;
         self.rect.centery = (SCREENRECT.bottom/10)*int(9)&lt;br /&gt;
 &lt;br /&gt;
     def update(self):&lt;br /&gt;
         self.rect.move_ip(self.speed,0)&lt;br /&gt;
 &lt;br /&gt;
 class Score:&lt;br /&gt;
     def __init__(self):&lt;br /&gt;
         self.score = 0&lt;br /&gt;
 &lt;br /&gt;
     def plusScore(self,arg):&lt;br /&gt;
         if arg == 1:&lt;br /&gt;
             self.score += 10&lt;br /&gt;
         elif arg == 2:&lt;br /&gt;
             self.score += 20&lt;br /&gt;
         self.printScore()&lt;br /&gt;
 &lt;br /&gt;
     def printScore(self):&lt;br /&gt;
         # To do show in GUI&lt;br /&gt;
         print self.score&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 def DynamicEnemyAssign(enemyList, countOfEnemy, Enemy, life, imageMax, enemy_containers, Enemy_img, pathAndKinds, line, playerPosY):&lt;br /&gt;
     enemyList[countOfEnemy] = Enemy(life,imageMax, playerPosY)&lt;br /&gt;
     enemyList[countOfEnemy].setContainers(enemy_containers)&lt;br /&gt;
     enemyList[countOfEnemy].setImage(Enemy_img[0])&lt;br /&gt;
     enemyList[countOfEnemy].setImages(Enemy_img)&lt;br /&gt;
     enemyList[countOfEnemy].setSpritePattern(pathAndKinds[line][4])&lt;br /&gt;
     enemyList[countOfEnemy].setPos(SCREENRECT.left,(SCREENRECT.bottom/10)*int(pathAndKinds[line][0]))&lt;br /&gt;
 &lt;br /&gt;
 def DynamicItemAssign(itemList, countOfItem, Item, imageMax, item_containers, Item_img ,pos):&lt;br /&gt;
     itemList[countOfItem] = Item()&lt;br /&gt;
     itemList[countOfItem].setContainers(item_containers)&lt;br /&gt;
     itemList[countOfItem].setImage(Item_img[0])&lt;br /&gt;
     itemList[countOfItem].setImages(Item_img)&lt;br /&gt;
     itemList[countOfItem].setPos(pos[0], pos[1])&lt;br /&gt;
 &lt;br /&gt;
 def SearchKilledEnemy(enemyList, Enemy):&lt;br /&gt;
     for enemy in EnemyenemyList:&lt;br /&gt;
         if enemy.life == 0 :&lt;br /&gt;
             return 1&lt;br /&gt;
     return 0&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 def main(winstyle = 0):&lt;br /&gt;
 &lt;br /&gt;
     #Initialize&lt;br /&gt;
     pygame.init()&lt;br /&gt;
 &lt;br /&gt;
     #Set the display mode&lt;br /&gt;
     winstyle = 0&lt;br /&gt;
     bestdepth = pygame.display.mode_ok(SCREENRECT.size, winstyle,32)&lt;br /&gt;
     screen = pygame.display.set_mode(SCREENRECT.size, winstyle,bestdepth)&lt;br /&gt;
 &lt;br /&gt;
     #create the background, tile the bgd image&lt;br /&gt;
     background = pygame.Surface(SCREENRECT.size)&lt;br /&gt;
 &lt;br /&gt;
     #Initialize Game groups&lt;br /&gt;
     all = pygame.sprite.RenderUpdates()&lt;br /&gt;
     shots = pygame.sprite.Group()&lt;br /&gt;
     player1 = pygame.sprite.Group()&lt;br /&gt;
     enemy_sprite = pygame.sprite.Group()&lt;br /&gt;
     enemy2_sprite = pygame.sprite.Group()&lt;br /&gt;
     building_1_sprite = pygame.sprite.Group()&lt;br /&gt;
     enemyShot1 = pygame.sprite.Group()&lt;br /&gt;
     item_sprite = pygame.sprite.Group()&lt;br /&gt;
 &lt;br /&gt;
     #asign default groups to each sprite class&lt;br /&gt;
     Player.containers = all,player1&lt;br /&gt;
     Shots.containers = shots, all&lt;br /&gt;
     enemy_containers = enemy_sprite, all&lt;br /&gt;
     building_1_containers = building_1_sprite, all&lt;br /&gt;
     EnemyShot1.containers = all, enemyShot1&lt;br /&gt;
     item_containers = all, item_sprite&lt;br /&gt;
     enemy2_containers = all, enemy2_sprite&lt;br /&gt;
 &lt;br /&gt;
     Explosion.containers = all&lt;br /&gt;
 &lt;br /&gt;
     #assign instance ty each class&lt;br /&gt;
     building_1 = Building()&lt;br /&gt;
     building_1.setContainers(building_1_containers)&lt;br /&gt;
 &lt;br /&gt;
     score = Score()&lt;br /&gt;
 &lt;br /&gt;
     #Load images, assign sprite classes&lt;br /&gt;
     Enemy1_img = load_images(&amp;#039;enemy1_000.gif&amp;#039;,&amp;#039;enemy1_002.gif&amp;#039;,&amp;#039;enemy1_004.gif&amp;#039;,&amp;#039;enemy1_006.gif&amp;#039;,&amp;#039;enemy1_008.gif&amp;#039;)&lt;br /&gt;
     #enemy_1[0].setImage(Enemy1_img[0])&lt;br /&gt;
     #enemy_1[0].setImages(Enemy1_img)&lt;br /&gt;
     shotImgs = load_images(&amp;#039;bullet1.gif&amp;#039;, &amp;#039;bullet2.gif&amp;#039;, &amp;#039;bullet3.gif&amp;#039;, &amp;#039;bullet4.gif&amp;#039;)&lt;br /&gt;
     Shots.images = shotImgs&lt;br /&gt;
     imgs = load_images(&amp;#039;dragon000.gif&amp;#039;,&amp;#039;dragon002.gif&amp;#039;,&amp;#039;dragon004.gif&amp;#039;,&amp;#039;dragon006.gif&amp;#039;,&amp;#039;dragon008.gif&amp;#039;,&amp;#039;dragon010.gif&amp;#039;,&amp;#039;dragon012.gif&amp;#039;,&amp;#039;dragon014.gif&amp;#039;,&amp;#039;dragon016.gif&amp;#039;,&amp;#039;dragon018.gif&amp;#039;,&amp;#039;dragon020.gif&amp;#039;,&amp;#039;dragon022.gif&amp;#039;,&amp;#039;dragon024.gif&amp;#039;,&amp;#039;dragon026.gif&amp;#039;,&amp;#039;dragon028.gif&amp;#039;,&amp;#039;dragon030.gif&amp;#039;)&lt;br /&gt;
     Player.images = imgs&lt;br /&gt;
 &lt;br /&gt;
     img = load_image(&amp;#039;building_1.gif&amp;#039;)&lt;br /&gt;
     building_1.setImage(img)&lt;br /&gt;
 &lt;br /&gt;
     img = load_image(&amp;#039;explosion1.gif&amp;#039;)&lt;br /&gt;
     Explosion.images = [img]&lt;br /&gt;
 &lt;br /&gt;
     img = load_images(&amp;#039;ShotOfEnemy1_000.gif&amp;#039;,&amp;#039;ShotOfEnemy1_002.gif&amp;#039;,&amp;#039;ShotOfEnemy1_004.gif&amp;#039;,&amp;#039;ShotOfEnemy1_006.gif&amp;#039;)&lt;br /&gt;
     EnemyShot1.images = img&lt;br /&gt;
     Enemy2_img = load_images(&amp;#039;enemy2_000.gif&amp;#039;,&amp;#039;enemy2_002.gif&amp;#039;,&amp;#039;enemy2_004.gif&amp;#039;,&amp;#039;enemy2_006.gif&amp;#039;)&lt;br /&gt;
     Enemy3_img = load_images(&amp;#039;enemy3_000.gif&amp;#039;,&amp;#039;enemy3_002.gif&amp;#039;,&amp;#039;enemy3_004.gif&amp;#039;,&amp;#039;enemy3_006.gif&amp;#039;,&amp;#039;enemy3_008.gif&amp;#039;)&lt;br /&gt;
     Enemy4_img = load_images(&amp;#039;enemy4_000.gif&amp;#039;,&amp;#039;enemy4_002.gif&amp;#039;,&amp;#039;enemy4_004.gif&amp;#039;,&amp;#039;enemy4_006.gif&amp;#039;)&lt;br /&gt;
     Enemy5_img = load_images(&amp;#039;enemy5_000.gif&amp;#039;,&amp;#039;enemy5_002.gif&amp;#039;,&amp;#039;enemy5_004.gif&amp;#039;,&amp;#039;enemy5_006.gif&amp;#039;)&lt;br /&gt;
     Enemy6_img = load_images(&amp;#039;enemy6.gif&amp;#039;)&lt;br /&gt;
     #Enemy2.images = img&lt;br /&gt;
     item1_img = load_images(&amp;#039;item1.gif&amp;#039;)&lt;br /&gt;
 &lt;br /&gt;
     #decorate the game window&lt;br /&gt;
     pygame.mouse.set_visible(0)&lt;br /&gt;
 &lt;br /&gt;
     #Create some starting values&lt;br /&gt;
     clock = pygame.time.Clock()&lt;br /&gt;
 &lt;br /&gt;
     #initialize our starting sprites&lt;br /&gt;
     player = Player()&lt;br /&gt;
 &lt;br /&gt;
     #open the path and kind of enemy&lt;br /&gt;
     file = open(os.path.join(&amp;#039;PathOfEnemy.txt&amp;#039;))&lt;br /&gt;
     pathAndKinds = file.readlines()&lt;br /&gt;
     one = 0&lt;br /&gt;
     line = 0&lt;br /&gt;
     countOfEnemy = 0&lt;br /&gt;
     MAX_ENEMY = 5&lt;br /&gt;
     MAX_ITEM = 6&lt;br /&gt;
     Enemy1Kill = 0&lt;br /&gt;
 &lt;br /&gt;
     #initialize list of Enemys&lt;br /&gt;
     enemy_1 = range(MAX_ENEMY)&lt;br /&gt;
     enemy_2 = range(MAX_ENEMY)&lt;br /&gt;
     item_1 = range(MAX_ITEM)&lt;br /&gt;
 &lt;br /&gt;
     curGun = 0&lt;br /&gt;
 &lt;br /&gt;
     while player.alive():&lt;br /&gt;
 &lt;br /&gt;
         #get input&lt;br /&gt;
         for event in pygame.event.get():&lt;br /&gt;
             if event.type == QUIT or \&lt;br /&gt;
                 (event.type == KEYDOWN and event.key==K_ESCAPE):&lt;br /&gt;
                 return&lt;br /&gt;
             if event.type == KEYDOWN :&lt;br /&gt;
                 if event.key == K_0 :&lt;br /&gt;
                     player.maxShots = player.maxShots + 1&lt;br /&gt;
                     if player.maxShots == 4 :&lt;br /&gt;
                         player.maxShots = 1&lt;br /&gt;
 &lt;br /&gt;
         keystate = pygame.key.get_pressed()&lt;br /&gt;
 &lt;br /&gt;
         #clear/erase the last drawn sprites&lt;br /&gt;
         all.clear(screen, background)&lt;br /&gt;
 &lt;br /&gt;
         #handle player input&lt;br /&gt;
         direction1 = keystate[K_RIGHT] - keystate[K_LEFT]&lt;br /&gt;
         direction2 = keystate[K_DOWN] - keystate[K_UP]&lt;br /&gt;
         if direction1 !=0 and direction2 != 0 :&lt;br /&gt;
             if direction2 &amp;amp;lt; 0 :&lt;br /&gt;
                 player.setImage(Player.UP)&lt;br /&gt;
             elif direction2 &amp;amp;gt; 0 :&lt;br /&gt;
                 player.setImage(Player.DOWN)&lt;br /&gt;
             player.move(direction1,direction2,&amp;#039;xy&amp;#039;)&lt;br /&gt;
 &lt;br /&gt;
         elif direction1!=0:&lt;br /&gt;
             player.move(direction1,direction2,&amp;#039;x&amp;#039;)&lt;br /&gt;
 &lt;br /&gt;
         elif direction2!=0:&lt;br /&gt;
             if direction2 &amp;amp;lt; 0 :&lt;br /&gt;
                 player.setImage(Player.UP)&lt;br /&gt;
             elif direction2 &amp;amp;gt; 0 :&lt;br /&gt;
                 player.setImage(Player.DOWN)&lt;br /&gt;
             player.move(direction1,direction2,&amp;#039;y&amp;#039;)&lt;br /&gt;
 &lt;br /&gt;
         elif direction2 == 0 :&lt;br /&gt;
             player.setImage(Player.REGULAR)&lt;br /&gt;
 &lt;br /&gt;
         firing = keystate[K_SPACE]&lt;br /&gt;
 &lt;br /&gt;
         if player.reloading and firing and len(shots) &amp;amp;lt;= MAX_SHOTS and player.timing % 10 is 0:&lt;br /&gt;
             if curGun == 3 :&lt;br /&gt;
                 x,y = player.gunpos()&lt;br /&gt;
 &lt;br /&gt;
                 for i in range(-30 * (player.maxShots - 1) + y, 30 * (player.maxShots - 1) + y + 1 , 30) :&lt;br /&gt;
                     shot = Shots((x,i), curGun, (i-y)/30)&lt;br /&gt;
             else :&lt;br /&gt;
                 Shots(player.gunpos(), curGun)&lt;br /&gt;
 &lt;br /&gt;
         if player.timing % 2 is 0 :&lt;br /&gt;
             player.reloading = firing&lt;br /&gt;
 &lt;br /&gt;
         player.reloading = firing&lt;br /&gt;
         player.timing += 1&lt;br /&gt;
 &lt;br /&gt;
         #Enemy &amp;amp;amp; Building Control Statements...&lt;br /&gt;
         if player.timing%70==0:&lt;br /&gt;
             if(int(pathAndKinds[line][2])==0):&lt;br /&gt;
                 DynamicEnemyAssign(enemy_1, countOfEnemy, Enemy, 1, 4, enemy_containers, Enemy3_img, pathAndKinds, line, player.gunpos()[1])&lt;br /&gt;
 &lt;br /&gt;
             elif(int(pathAndKinds[line][2])==1):&lt;br /&gt;
                 DynamicEnemyAssign(enemy_2, countOfEnemy, Enemy,3, 4, enemy_containers, Enemy2_img, pathAndKinds, line, player.gunpos()[1])&lt;br /&gt;
 &lt;br /&gt;
             building_1.setPos()&lt;br /&gt;
             if countOfEnemy&amp;amp;gt;=MAX_ENEMY-1:&lt;br /&gt;
                 countOfEnemy=-1&lt;br /&gt;
             countOfEnemy +=1&lt;br /&gt;
             line += 1&lt;br /&gt;
 &lt;br /&gt;
         for shot in pygame.sprite.groupcollide(shots,enemy_sprite,1,1).keys():&lt;br /&gt;
             Explosion(shot.pos())&lt;br /&gt;
             DynamicItemAssign(item_1, countOfEnemy, Item, 1, item_containers, item1_img, shot.pos())&lt;br /&gt;
             score.plusScore(1)&lt;br /&gt;
 &lt;br /&gt;
         for shot in pygame.sprite.groupcollide(shots,enemy_sprite,1,1).keys():&lt;br /&gt;
             Explosion(shot.pos())&lt;br /&gt;
             score.plusScore(2)&lt;br /&gt;
 &lt;br /&gt;
         for shot in pygame.sprite.groupcollide(item_sprite, player1, 1, 0).keys() :&lt;br /&gt;
             player.experience += 1&lt;br /&gt;
             if player.experience is 30 and curGun != 3:&lt;br /&gt;
                 curGun += 1&lt;br /&gt;
                 player.experience = 0&lt;br /&gt;
 &lt;br /&gt;
             elif curGun == 3 and player.experience is 30 :&lt;br /&gt;
                 player.maxShots += 1&lt;br /&gt;
 &lt;br /&gt;
         #update all the sprites&lt;br /&gt;
         all.update()&lt;br /&gt;
         #draw the scene&lt;br /&gt;
         dirty = all.draw(screen)&lt;br /&gt;
         pygame.display.update(dirty)&lt;br /&gt;
 &lt;br /&gt;
         #cap the framerate&lt;br /&gt;
         clock.tick(80)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 #call the &amp;quot;main&amp;quot; function if running this script&lt;br /&gt;
 if __name__==&amp;#039;__main__&amp;#039;:main()&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>