def chooseShip(): global type, surface, startAnimationChoose, playerChoose, up, shipIsOut upPres = [upPressed, wPressed] downPres = [downPressed, sPressed] for num in range(0, 2): if startAnimationChoose[num]: if not shipIsOut[num]: # Si todavía no ha salido la nave vieja if up[num]: shipIsOut[num] = playerChoose[num].moveSlow( XSELECTION[num], -300, 0.5, multiplier ) # Movemos la nave vieja fuera de la pantalla y activamos shipIsOut cuando sale else: shipIsOut[num] = playerChoose[num].moveSlow( XSELECTION[num], WINDOW_HEIGHT + 300, 0.5, multiplier) if shipIsOut[ num]: # Sólo una vez, cuando la nave ha salido, creo la nueva nave con al nuevo tipo if up[num]: playerChoose[num] = ship.ship(type[num], XSELECTION[num], WINDOW_HEIGHT + 100, pygame, 'big') else: playerChoose[num] = ship.ship(type[num], XSELECTION[num], -100, pygame, 'big') elif playerChoose[num].moveSlow( XSELECTION[num], YSELECTION[num], 0.5, multiplier ): # Movemos la nave al centro y comprobamos simultáneamente si ha llegado playerChoose[num].goTo(XSELECTION[num], YSELECTION[num]) startAnimationChoose[num] = False resetPressed() shipIsOut[num] = False if upPres[num] and not startAnimationChoose[num]: type[num] -= 1 type[num] = type[num] % MAXTYPES resetPressed() startAnimationChoose[num] = True up[num] = True elif downPres[num] and not startAnimationChoose[num]: type[num] += 1 type[num] = type[num] % MAXTYPES resetPressed() startAnimationChoose[num] = True up[num] = False playerChoose[num].draw(surface, GAME_TIME) if startButtonPressedToDraw: # Draw the button when it is pressed surface.blit(startButtonDown, (XSTARTBUTTON + 10, YSTARTBUTTON + 10)) else: surface.blit(startButtonUp, (XSTARTBUTTON, YSTARTBUTTON))
async def boat(message, cmd): msgId = message.author.id cIndex = -1 print('boat : ' + msgId) if cList.count(msgId): await client.send_message(message.channel, 'he\'s already on his boat') else: ship(message.author) if ship.sList[-1] == msgId: cList.append(msgId) if len(cmd) > 1: ship.sList[-1].subject = cmd[1] await client.send_message(message.channel, 'your boat is ready') else: await client.send_message(message.channel, 'has a problem')
def __init__(self): pygame.init() self.settings = settings() self.screen = pygame.display.set_mode((self.settings.screen_width, self.settings.screen_height)) pygame.display.set_caption("Alien Invasion") self.ship = ship(self)
def __init__(self): pygame.init() self.setting = Settings() # Setting the screen self.screen = pygame.display.set_mode( (self.setting.screen_width, self.setting.screen_height)) self.setting.screen_width = self.screen.get_rect().width self.setting.screen_height = self.screen.get_rect().height self.background = pygame.image.load("starfield.png") # Setting a Caption pygame.display.set_caption("Alien Invasion") # Setting a value for other python pages that are imported self.stats = Gamestats(self) self.S_B = scoreboard(self) self.ship = ship(self) self.bullets = pygame.sprite.Group() self.aliens = pygame.sprite.Group() self.S_B.check_high_score() self.create_fleet() # Setting button and a message self.play_button = Button(self, "Play")
def run_game(): # 定义全局变量 global ship # 初始化并创建一个窗口对象 pygame.init() ai_settings = settings() screen = pygame.display.set_mode( (ai_settings.screen_width, ai_settings.screen_height)) pygame.display.set_caption("Alien Invasion") # 创建按钮 play_button = Button(ai_settings, screen, "PLAY") # 储存信息 stats = Gamestats(ai_settings) sb = Scoreboard(ai_settings, screen, stats) ship = ship(ai_settings, screen) # 储存子弹编组 bullets = Group() # 创建外星人群 aliens = Group() gf.create_fleet(ai_settings, screen, ship, aliens) # 游戏主循环 while True: gf.check_events(ai_settings, screen, stats, play_button, ship, aliens, bullets) if stats.game_active: ship.update() gf.update_bullets(ai_settings, screen, ship, aliens, bullets) gf.update_aliens(ai_settings, stats, screen, ship, aliens, bullets) gf.undate_screen(ai_settings, screen, stats, sb, ship, aliens, bullets, play_button)
def main(): pygame.init() screen = pygame.display.set_mode((600, 600)) background = pygame.Surface(screen.get_size()) background = background.convert() nimbus = ship.ship(300.0, 300.0, 90) #pewpew = bullet.bullet(nimbus.rect.x,nimbus.rect.y,nimbus.angle) aster = asteriod.asteriod(300, 300, 90) background.fill((0, 0, 0)) screen.blit(background, (0, 0)) #pygame.transform.scale(aster, (20, 20)) #pygame.transform.scale(pewpew, (5, 5)) pygame.display.flip() allsprites = pygame.sprite.Group((nimbus)) clock = pygame.time.Clock() pygame.key.set_repeat(1, 10) while True: clock.tick(30) for event in pygame.event.get(): if event.type == pygame.QUIT: return keys = pygame.key.get_pressed() #if keys[pygame.K_e]: #laser = bullet.bullet() #laser.rect.x = nimbus.rect.x #laser.rect.y = nimbus.rect.y #laser.angle = nimbus.angle #allsprites.add(laser) #laser.move(laser.rect.x,laser.rect.y,laser.angle) nimbus.move(keys) #aster.move() allsprites.draw(screen) pygame.display.flip()
def prep_ships(self): self.ships = Group() for ship_num in range(self.stats.ship_left): ship_2 = ship(self.screen, self.ai_settings) ship_2.rect.x = 10 + ship_num * ship_2.rect.width ship_2.rect.y = 1 self.ships.add(ship_2)
def parse_ship_and_into_fleet(self, new_fleet, parsed_fleet): import ship shipfile = open(parsed_fleet[0].replace('.fleet', '.ship'), 'r') shiplines = shipfile.readlines() name, hitpoints, targettingrange, speed, inertia, signature, weapon = map( str, shiplines) parsed_weapon = weaponsystems.parse_weapon(weapon) ship = ship.ship(int(hitpoints), 50, int(targettingrange), int(speed), int(inertia), name, 0, 0, 0, new_fleet, parsed_weapon) # hitpoints, damage, targettingrange, speed, inertia, name, x, y, z, fleet, weapons): return ship
def __init__(self): ''' Defines the game screen. param list:(object) only needs self return: (None) ''' pygame.init() self.begin = True while self.begin: self.x = WIDTH / 2 self.y = HEIGHT - 140 self.cont = True self.front = Start.Start() if self.front.choice(): try: self.char = Char.Char() self.image = self.char.start() self.display = pygame.display.set_mode((WIDTH, HEIGHT)) self.background = pygame.Surface( self.display.get_size()).convert() self.room = pygame.image.load('classroom2.jpg') self.room = pygame.transform.scale(self.room, (1000, 700)) self.background.blit(self.room, (0, 0)) self.ship = ship.ship(self.image[0], self.x, self.y) self.alien = [] self.bullet = [] self.num = 0 self.speed = 1 self.spriteship = pygame.sprite.Group(self.ship) self.spritealien = pygame.sprite.Group(self.alien) self.spritebullet = pygame.sprite.Group(self.bullet) self.font = pygame.font.SysFont('bodoniblack', 30) self.score = score.score() self.value = self.font.render( 'Score: ' + str(self.score.count), True, (0, 255, 0)) self.game = Controller.start(self) self.end = End.End(self.game) Controller.end(self) except: self.cont = False else: self.end = End.End(0) Controller.end(self) if not self.cont: self.begin = False
def run_game(): #初始化 pygame.init() ai_settings = settings() #创建屏幕对象 screen = pygame.display.set_mode( (ai_settings.screen_width, ai_settings.screen_height)) pygame.display.set_caption('Alien Invasion') #创建一艘飞船 ship_new = ship(screen) #开始主循环 while True: gf.check_events(ship_new) gf.update(ai_settings, screen, ship_new) ship_new.update()
def prepare(row, keepPortname=True): speedtreshold = 15 # delete reported draught row = row.drop(columns=['REPORTED_DRAUGHT']) Id = row.at['SHIP_ID'] typ = row.at['SHIPTYPE'] speed = row.at['SPEED'] lon = row.at['LON'] lat = row.at['LAT'] course = row.at['COURSE'] heading = row.at['HEADING'] timestamp = row.at['TIMESTAMP'] dep = row.at['DEPARTURE_PORT_NAME'] s = ship_list.hasShip(Id) if (s == None): # add new ship to a list s = ship(Id, typ, speed, lon, lat, course, heading, timestamp, dep, ind) ship_list.addShip(s) row.at['TIMESTAMP'] = 0 else: # ship already seen atleast once, update track and timestamps with the help of # a ship object which holds the trackinformation for each single ship object t1 = s.getFirstTimestamp() t = row.at['TIMESTAMP'] row.at['TIMESTAMP'] = calcTimeDifference(t, t1) prev_speed = s.getLastTrack()['SPEED'] # correct erronous speed if (speed - prev_speed > speedtreshold): check = interp.speedcheck(s.getLastTrack(), row) if (check != None): speed = check row.at['SPEED'] = check s.updateTrack(speed, lon, lat, course, heading, timestamp, 0) if (not keepPortname): row.at['DEPARTURE_PORT_NAME'] = pre_clean.stringToInt(dep) row = norma.normalize_minmax(row, keepPortname) return row, s
def __init__(self): #initialize the game and create game resources pygame.init() self.settings = settings() self.screen = pygame.display.set_mode((0, 0), pygame.FULLSCREEN) self.settings.screen_width = self.screen.get_rect().width self.settings.screen_height = self.screen.get_rect().height self.screen = pygame.display.set_mode( (self.settings.screen_width, self.settings.screen_height)) pygame.display.set_caption("Alien invesion") self.ship = ship(self) self.bullets = pygame.sprite.Group() self.alians = pygame.sprite.Group() self._create_fleet() # set the background color. self.bg_color = (230, 230, 230)
def run_game(): pygame.init() ai_settings=settings() screen=pygame.display.set_mode((ai_settings.screen_width,ai_settings.screen_height)) pygame.display.set_caption("Alien invasion by Aman Pandey") play_button=button(ai_settings,screen,'PLAY') stats=game_stats(ai_settings) sb=score_bored(ai_settings,screen,stats) ship_1=ship(screen,ai_settings) bullets=Group() aliens=Group() #bg_color=(230,230,230) gf.create_fleet(ai_settings,screen,ship_1,aliens) while True: gf.check_events(ai_settings,screen,sb,stats,play_button,ship_1,aliens,bullets) if stats.game_active: ship_1.update() gf.update_bullets(ai_settings,screen,stats,sb,ship_1,bullets,aliens) gf.update_aliens(ai_settings,stats,screen,sb,ship_1,aliens,bullets) gf.update_screen(ai_settings,screen,stats,sb,ship_1,aliens,bullets,play_button)
def joinShip(self, name): '''add self to ship''' name = ' '.join(name[1:]) self.leaveShip() #try to find ship with given name for obj in gameObject.objects: try: if obj.name == name: self.ship = obj except: continue #create new ship if not found if not self.ship: self.ship = ship.ship() self.ship.name = name #add self to crew self.ship.crew.append(self) self.updatePrompt() self.log.info('joined %s', self.ship.name) return response.ok, 'you have joined the crew of {}'.format(self.ship.name)
def main(): pygame.init() pygame.mixer.pre_init() player = score.score() screen = pygame.display.set_mode((600,600)) background = pygame.Surface(screen.get_size()) background = background.convert() nimbus = ship.ship(100.0,100.0,90) #pewpew = bullet.bullet(nimbus.rect.x,nimbus.rect.y,nimbus.angle) aster = asteriod.asteriod(100,100,90) background.fill((0,0,0)) white = (250, 250,250) screen.blit(background,(0,0)) laser = bullet.bullet(10,10,0) #pygame.transform.scale(aster, (20, 20)) #pygame.transform.scale(pewpew, (5, 5)) pygame.display.flip() randx = random.randrange(300) randy = random.randrange(300) allsprites = pygame.sprite.Group((nimbus,aster,)) clock = pygame.time.Clock() pygame.key.set_repeat(1,10) start_screen = True game_screen = False end_screen = False while start_screen == True: myfont = pygame.font.SysFont("Britannic Bold", 40) intro = myfont.render("Welcome, press enter to start", 1,white) game_over = myfont.render(" G A M E O V E R", 4,white) for event in pygame.event.get(): if event.type == pygame.QUIT: return keys = pygame.key.get_pressed() if keys[pygame.K_KP_ENTER ]: print("test") start_screen = False game_screen = True screen.blit(intro,(100,100)) pygame.display.flip() while game_screen == True: screen.blit(background,(0,0)) clock.tick(120) for event in pygame.event.get(): if event.type == pygame.QUIT: return #pygame.mixer.music.load('theme.mp3') #plays music #pygame.mixer.music.play( loops = -1, start = 0.0) counter = 0 '''if pygame.sprite.collide_rect(aster,nimbus): for i in range counter collision: counter += 1 print('cross') #print(counter)''' if counter == 5: screen.blit(game_over,(100,100)) if pygame.sprite.collide_rect(aster,laser): print('hit') keys = pygame.key.get_pressed() nimbus.move(keys) nimbus.shoot(keys) if keys[pygame.K_e]: coor = nimbus.shoot(keys) laser.setCoor(coor[0] + 30,coor[1],coor[2]) allsprites.add(laser) currentscore = str(player.current()) pygame.display.set_caption(currentscore) laser.update() allsprites.draw(screen) pygame.display.flip() #quit() while end_screen == True: playerscore = player.player() playerscore = 'High Score' + ':' + str(up) print("up", up) myfont = pygame.font.SysFont("Britannic Bold", 40) intro = myfont.render("Gameover, press enter to continue", 1,white) scorer = myfont.render(up, 0 , white) for event in pygame.event.get(): if event.type == pygame.QUIT: return keys = pygame.key.get_pressed() if keys[pygame.K_KP_ENTER]: print("test") end_screen = False start_screen = True screen.blit(intro,(100,100)) screen.blit(scorer,(100,200)) pygame.display.flip()
def tick(foo): galaxie.Tick() glutPostRedisplay() glutTimerFunc(50, tick, 0) def init(): glClearColor(0, 0, 0, 0) glLoadIdentity() galaxie = galaxy() centre = ship(pom(0, 0, 0, 0, 10 ** 2), cercle(10,20)) galaxie.planetes.append(centre) # orbite rond Test = ship(pom(-30, 0, 0, 14.8), triangle(), "hiro p.") Test2 = ship(pom(-20, 0, 0, 18.166), triangle()) galaxie.vaisseaux.append(Test) galaxie.vaisseaux.append(Test2) # escape velocity # Test = ship(pom(-10, 0, 0, 36.33), triangle()) # centre.rayon = 10
def start_of_game(self): #this is the start of the game #this creates the player object self.player = ship(self.canvas, self.width, self.height, master=self) #this starts the creation of all asteroids self.make_asteroids() #get random number which decides which 6 asteroids to start with #loop through a list of different sized asteroids for i in range(6): x = self.get_random_size() if x == 1: for i in self.small_asteroids: #if it is frozen then unfreeze it and break from the loop for the next asteroid if i.freeze == True: i.freeze = False break elif x == 2: for i in self.medium_asteroids: if i.freeze == True: #if it is frozen then unfreeze it and break from the loop for the next asteroid i.freeze = False break else: for i in self.large_asteroids: if i.freeze == True: #if it is frozen then unfreeze it and break from the loop for the next asteroid i.freeze = False break #this creates all the projectiles self.pro1 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro2 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro3 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro4 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro5 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro6 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro7 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro8 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro9 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) self.pro10 = Projectile(self.player, self.canvas, self.width, self.height, self.asteroids, self) #this creates a list of all the projectiles self.projectiles = [] self.projectiles.append(self.pro1) self.projectiles.append(self.pro2) self.projectiles.append(self.pro3) self.projectiles.append(self.pro4) self.projectiles.append(self.pro5) self.projectiles.append(self.pro6) self.projectiles.append(self.pro7) self.projectiles.append(self.pro8) self.projectiles.append(self.pro9) self.projectiles.append(self.pro10) #this calls the setup_bindings() method self.setup_bindings() #this starts the asteroids movement loop for i in self.asteroids: i.hold()
def __init__(self): self.p = ship.ship() self.i = [] self.i.append(invaders.invaders(11, 30, 30))
def main(): pygame.init() pygame.mixer.pre_init() player = score.score() #pygame.mixer.music.load('betsky.ogg') #pygame.mixer.music.play(loops = 15, start = 0.0) screen = pygame.display.set_mode((600,600)) background = pygame.Surface(screen.get_size()) background = background.convert() nimbus = ship.ship(100.0,100.0,90) #pewpew = bullet.bullet(nimbus.rect.x,nimbus.rect.y,nimbus.angle) aster = asteriod.asteriod(100,100,90) background.fill((0,0,0)) white = (250, 250,250) screen.blit(background,(0,0)) laser = bullet.bullet(10,10,0) #pygame.transform.scale(aster, (20, 20)) #pygame.transform.scale(pewpew, (5, 5)) pygame.display.flip() randx = random.randrange(300) randy = random.randrange(300) allsprites = pygame.sprite.Group((aster)) shp = pygame.sprite.Group((nimbus,laser)) clock = pygame.time.Clock() pygame.key.set_repeat(1,10) start_screen = True game_screen = False end_screen = False #TM = pygame.USEREVENT+1 #evnt = pygame.event.Event(TM, asteroid) #tmr = pygame.time.set_timer(pygame.USEREVENT +1, 4000) while start_screen == True: myfont = pygame.font.SysFont("Britannic Bold", 40) intro = myfont.render("Welcome, press enter to start", 1,white) game_over = myfont.render(" G A M E O V E R", 4,white) for event in pygame.event.get(): if event.type == pygame.QUIT: return keys = pygame.key.get_pressed() if keys[pygame.K_KP_ENTER ]: print("test") start_screen = False game_screen = True screen.blit(intro,(100,100)) pygame.display.flip() while game_screen == True: screen.blit(background,(0,0)) clock.tick(60) for event in pygame.event.get(): if event.type == pygame.QUIT: return #if event.type == evnt: #return crash = pygame.sprite.collide_rect(aster, nimbus) counter = 0 if crash: nimbus.rect.x =(300) nimbus.rect.y =(300) #counter += 1 nimbus.livesUpdate() if nimbus.health<0: game_screen = False end_screen = True print('health:',nimbus.health) print(counter) if counter == 1: screen.blit(game_over,(100,100)) #player.score = 0 shot = pygame.sprite.spritecollide(laser,allsprites,True) if shot: allsprites.add(aster) aster.rect.x =random.randrange(250) aster.rect.y =random.randrange(250) laser.rect.x = 6000 laser.rect.y = 6000 pygame.display.flip() player.points(50) print('hit') keys = pygame.key.get_pressed() nimbus.move(keys) nimbus.shoot(keys) if keys[pygame.K_e]: coor = nimbus.shoot(keys) laser.setCoor(coor[0] + 30,coor[1],coor[2]) #if event.type == pygame.event.Event(crash)+1: # allsprites.add(aster) #allsprites.add(laser) aster.move(aster.angle) currentscore = str(player.current()) pygame.display.set_caption(currentscore) laser.update() allsprites.draw(screen) shp.draw(screen) screen.blit(nimbus.image,nimbus.rect) screen.blit(laser.image,laser.rect) pygame.display.flip() #quit() while end_screen == True: playerscore = player.player() playerscore = 'High Score' + ':' + str(playerscore) myfont = pygame.font.SysFont("Britannic Bold", 40) intro = myfont.render("Gameover, press enter to continue", 1,white) scorer = myfont.render(playerscore, 0 , white) scorer = myfont.render(playerscore, 0 , white) for event in pygame.event.get(): if event.type == pygame.QUIT: return keys = pygame.key.get_pressed() if keys[pygame.K_KP_ENTER ]: print("test") end_screen = False start_screen = True screen.blit(intro,(100,100)) screen.blit(scorer,(100,50)) pygame.display.flip()
def game_loop(): x=(display_width*0.40) y=(display_height*0.87) x_change=0 score=0 aliensList=[] miss1=[] miss2=[] def text_object(text,font): textSurface=font.render(text,True,black) return textSurface,textSurface.get_rect() def message_display(text): largeText=pygame.font.Font('freesansbold.ttf',15) lookSurf,TextRect=text_object(text,largeText) TextRect.center=(240,240) gameDisplay.blit(lookSurf,TextRect) pygame.display.update() time.sleep(2) def crash(): message_display('Your score is '+str(score)) lastAlien=time.time() GameExit=False while not GameExit: for event in pygame.event.get(): if event.type==pygame.QUIT: pygame.quit() quit() if event.type==pygame.KEYDOWN: if event.key==pygame.K_a: x_change=-60 elif event.key==pygame.K_d: x_change=60 elif event.key==pygame.K_SPACE: miss1.append(missile.redmiss(x,y-0.75)) elif event.key==pygame.K_s: miss2.append(missile.gmiss(x,y-1.5)) elif event.key==pygame.K_q: GameExit=True elif event.key==pygame.K_p:#press P to get the score crash() if event.type==pygame.KEYUP: if event.key==pygame.K_a or event.key==pygame.K_d: x_change=0 for i in aliensList: if time.time()-i.clock>=8: aliensList.remove(i) if time.time()-lastAlien>=10: aliensList.append(alien.aliens(time.time(),randint(0,7)*60,randint(0,1)*60)) lastAlien=time.time() x+=x_change if x > display_width-25 or x < -40: x-=x_change gameDisplay.fill(white) ship.ship(x,y) for i in miss1: for j in aliensList: if (i.y-j.y <60 and i.x>j.x) and i.x-j.x <15: score+=1 aliensList.remove(j) miss1.remove(i) for i in miss2: for j in aliensList: if (i.y-j.y<60 and i.x>j.x) and i.x-j.x<15: j.clock+=5 j.hit=1 miss2.remove(i) for i in miss1: i.y=i.y-60 if i.y<0: miss1.remove(i) for i in miss2: i.y=i.y-120 if i.y<0: miss2.remove(i) for i in miss1:#printing missile.missile1(i.x,i.y) for i in miss2: missile.missile2(i.x,i.y) for i in aliensList: if i.hit==0: alien.alien(i.x,i.y) else: alien.alienHit(i.x,i.y) pygame.display.update() clock.tick(5)
from unittest import TestCase import weaponsystems import ship import math import pandas as pd import numpy as np from scipy.optimize import curve_fit from sklearn.metrics import r2_score import matplotlib.pyplot as plt BlueFleet = ship.fleet("Blue Fleet", 50) RedFleet = ship.fleet("Red Fleet", 50) small_autocannon = weaponsystems.turret(50, 50, 50, "Small Autocannon", 40) redship = ship.ship(1000, 50, 50, 50, 1, "Test Dummy 1", 99, 50, 50, RedFleet, small_autocannon) blueship = ship.ship(1000, 50, 50, 50, 1, "Test Dummy 2", 100, 50, 50, BlueFleet, small_autocannon) class TestTurret(TestCase): def test_fire_weapon(self): assert small_autocannon.dps == 50 def test_checkrange(self): assert redship.calc_distance(blueship) == redship.weapon.optimal def test_withinrange(self): assert redship.calc_distance(blueship) <= redship.weapon.optimal def calc_weap_dps(self):
###Splash running = splash.show_splash(screen) ###Sound effects pygame.mixer.set_num_channels(8) s_shooting = load_resources.load_sound('sound/s_shooting.wav') pygame.mixer.music.load('sound/bg_music.wav') pygame.mixer.music.set_volume(.25) pygame.mixer.music.play(-1) ###Create background bg_image= pygame.image.load('graphics/bg.png').convert() screen.blit(bg_image, (0, 0)) pygame.display.flip() ###Instance of ship s_x= width/2 s_y= height- 70 s= ship.ship(s_x, s_y, screen, width, height) ###instance of score score= text.score() ###Instance of lives lives = text.lives() ###Instance of level level = text.level() ###Sprite groups sprites= pygame.sprite.RenderUpdates(s, score, lives, level) blocks= pygame.sprite.Group() bullets= pygame.sprite.Group() bombs= pygame.sprite.RenderUpdates() enemy_group = pygame.sprite.Group() ###Instances of blocks block.make_wall(75, 450, sprites, blocks, width, height) block.make_wall(275, 450, sprites, blocks, width, height)
pygame.display.init() pygame.mixer.init() surface = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT), pygame.RESIZABLE) pygame.display.set_caption('STARLINE') clock = GAME_TIME.Clock() pygame.font.init() textFont = pygame.font.Font("assets/fonts/nasalization-rg.ttf", 30) levelTitleFont = pygame.font.Font("assets/fonts/nasalization-rg.ttf", 30) type = [int(configList[0][0]), int(configList[0][1])] configList.pop(0) level = -1 player = ship.doubleShip(type[0], Xo1, Yo1, type[1], Xo2, Yo2, pygame) playerChoose = [ ship.ship(type[0], XSELECTION[0], YSELECTION[0], pygame, 'big'), ship.ship(type[1], XSELECTION[1], YSELECTION[1], pygame, 'big') ] menuMessage = enemies.message('Presiona espacio', 0, 'infinity', 500, 500, 100, pygame) # LOAD IMAGES titleImage = pygame.image.load("assets/images/background/STARLINE.png") starImage = pygame.image.load("assets/images/background/star.png") angleStar = 0 skyImage = pygame.image.load("assets/images/background/sky.png") chooseShipImage = pygame.image.load( "assets/images/background/shipSelector.png") gameOverImage = pygame.image.load("assets/images/background/gameOver.png") redLevel = pygame.image.load("assets/images/background/redLevel.png")
import pygame, sys, random, pandas as pd from rock import Rock from ship import ship screen = pygame.display.set_mode((800, 500)) clock = pygame.time.Clock() pygame.init() info = pd.read_csv("data.csv") numlevels = info["level"].min() level = info["level"].min() levelInfo = info.iloc[level] rocks = [] player = ship(20, 250) def init(): global rocks, player player.x = 20 player.y = 250 rocks = [] levelInfo = info.iloc[level] for i in range(levelInfo["numrock"]): rocks.append( Rock(random.randint(300, 500), random.randint(200, 300), random.randint(-5, 5), random.randint(-5, 5), random.randint(20, 50))) init()
def tick(foo): galaxie.Tick() glutPostRedisplay() glutTimerFunc(50, tick, 0) def init(): glClearColor(0, 0, 0, 0) glLoadIdentity() galaxie = galaxy() centre = ship(pom(0, 0, 0, 0, 10**2), cercle(10, 20)) galaxie.planetes.append(centre) # orbite rond Test = ship(pom(-30, 0, 0, 14.8), triangle(), "hiro p.") Test2 = ship(pom(-20, 0, 0, 18.166), triangle()) galaxie.vaisseaux.append(Test) galaxie.vaisseaux.append(Test2) # escape velocity # Test = ship(pom(-10, 0, 0, 36.33), triangle()) # centre.rayon = 10 # centre.smoothness = 20 # systemeSolaire = [] # Test = cercle(vector(-20, 0), vector(0, 20))
import pygame, sys, time, random from pygame.locals import * from ship import ship from fire import fire from fireball import fireball from enemy import enemy from ball import ball ufo = ship() fye = fire() bal = fireball() kill = enemy() fie = ball() FPS = 100 WHITE = (250, 250, 250) fpsClock = pygame.time.Clock() def update_ship(): DISPLAYSURF.blit(ufo.image, ufo.rect) def update_fire(): DISPLAYSURF.blit(fye.imgae, ufo.rect) def update_fireball(): DISPLAYSURF.blit(bal.imgae, bal.rect) def update_enemy():
import ship import missiles pygame.init() pygame.display.set_caption("ALIEN ATTACK") stTime = time.time() initTime = time.time() count = 0 # font for score myfont = pygame.font.SysFont("monospace", 30) WHITE = (255, 255, 255) score = myfont.render("SCORE={0}".format(count), 1, WHITE) screen = pygame.display.set_mode((800, 800)) spaceShip = ship.ship("images/ship.png", screen, 100, 50) screen.fill((0, 0, 0)) screen.blit(spaceShip.image, (spaceShip.x, spaceShip.y)) pygame.display.update() alien = [] miss = [] alien.append(aliens.aliens("images/aliens.jpg", screen, 100)) while 1: pygame.time.Clock().tick(50) flag = 0 for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit()
def clean(pc, ip, dff, delete, norm, keepPortname): # instantiate objects and set tresholds for speed correction and time interp. start = time.time() shiplist = ships() df = dff df = df.drop(columns=['REPORTED_DRAUGHT']) index = pc.uselessIndices(df) namelist = pc.createStringToIntMap(df) timetreshold = 25 speedtreshold = 15 for i, row in df.iterrows(): if (i % 10000 == 0): print("current row:" + str(i)) # skip to be dropped indices for perfomance if i in index: continue Id = row['SHIP_ID'] typ = row['SHIPTYPE'] speed = row['SPEED'] lon = row['LON'] lat = row['LAT'] course = row['COURSE'] heading = row['HEADING'] timestamp = row['TIMESTAMP'] dep = row['DEPARTURE_PORT_NAME'] arrival = row['ARRIVAL_PORT_CALC'] if (not keepPortname): df.at[i, 'ARRIVAL_PORT_CALC'] = namelist[arrival] df.at[i, 'DEPARTURE_PORT_NAME'] = namelist[dep] s = shiplist.hasShip(Id) if (s == None): # add new ship to a list new_ship = ship(Id, typ, speed, lon, lat, course, heading, timestamp, dep, i) shiplist.addShip(new_ship) # compute the difference from this timestamp in regards to the arrival time # and set that value to the new arrival time arr = row['ARRIVAL_CALC'] t = row['TIMESTAMP'] df.at[i, 'ARRIVAL_CALC'] = calcTimeDifference(arr, t) # set the first timestamp seen for a ship to 0. following # timestamps are relative to this 0 time value df.at[i, 'TIMESTAMP'] = 0 else: # ship already seen atleast once, update track and timestamps with the help of # a ship object which holds the trackinformation for each single ship object t1 = s.getFirstTimestamp() t = row['TIMESTAMP'] df.at[i, 'TIMESTAMP'] = calcTimeDifference(t, t1) arr = row['ARRIVAL_CALC'] df.at[i, 'ARRIVAL_CALC'] = calcTimeDifference(arr, t) prev_speed = s.getLastTrack()['SPEED'] # correct erronous speed if (speed - prev_speed > speedtreshold): check = ip.speedcheck(s.getLastTrack(), row) if (check != None): speed = check df.at[i, 'SPEED'] = check # interpolate between 2 timestamps that are atleast 25 mins away prev_time = s.getLastTrack()['TIMESTAMP'] timejump = calcTimeDifference(timestamp, prev_time) if (timejump > timetreshold): ip.interpolate(df, s, row, timejump, namelist) s.updateTrack(speed, lon, lat, course, heading, timestamp, i) # drop the irrelevant rows and add the interpolated rows and # depending on the switches given in the terminal delete and normalize df = df.drop(index) df = ip.execute_interpolate(df) if (delete != None): df = delete.delete(df) if (norm != None): df = norm.normalize(df, keepPortname) df.to_csv(sys.argv[len(sys.argv) - 1], index=False) end = time.time() print("time:" + str(end - start))