def drawGame(self): Y_TEXT_POSITION = 15 TEXT_SIZE = 14 arcade.set_background_color((5, 2, 27)) self.coin_list.draw() self.bullet_list.draw() self.player_list.draw() minutes = int(self.total_time) // 60 seconds = int(self.total_time) % 60 for star in self.star_list: star.draw() arcade.draw_text(f"Score : {self.score}", 15, Y_TEXT_POSITION, arcade.color.WHITE, TEXT_SIZE) arcade.draw_text(f"Level: {self.level}", 10, 35, arcade.color.WHITE, 15) arcade.draw_text(f"Time : {minutes:02d}:{seconds:02d}", SCREEN_WIDTH - 15, Y_TEXT_POSITION, arcade.color.WHITE, TEXT_SIZE, align="right", anchor_x="right", anchor_y="baseline")
def draw(self, surface): rect = pygame.Rect(int(0), int(0), int(self.mWorldWidth), int(self.mWorldHeight)) pygame.draw.rect(surface, (0, 0, 0), rect, 0) for star in self.mStars: star.draw(surface) self.mShip.draw(surface) for r in self.mRocks: r.draw(surface) for bullet in self.mBullets: bullet.draw(surface) return
def draw_Intro(self): arcade.set_background_color((5, 2, 27)) for star in self.star_list: star.draw() arcade.draw_text("Space Ship", SCREEN_WIDTH / 2, (SCREEN_HEIGHT / 2) + 68, arcade.color.WHITE, 54, align="center", anchor_x="center", anchor_y="center") arcade.draw_text("Press SPACE to restart", SCREEN_WIDTH / 2, (SCREEN_HEIGHT / 2), arcade.color.WHITE, 24, align="center", anchor_x="center", anchor_y="center")
#!/bin/env python3 from record import start, finish from star import draw r = 100 n = 5 start(2*r, 2*r, 0, 0, 50, __file__) draw(r, n) finish()
def main(): config = Null() config.keyScrollSpeed = 2000.0 config.musicVolume = .5 view = Null() view.pos = v((0, 0)) view.sprites = {} view.cursor = {} view.units = [] view.selarea = None view.begin_pos = None view.scroll_start = None view.selection = [] view.players = [] view.ct = 0.0 view.scrollleft = False view.scrollright = False view.scrollup = False view.scrolldown = False view.uisprites = [] view.config = config view.tilepalcount = 0 view.followselection = False init(sys.argv, view) dt = .001 mp = 0 #view.pathfind.set_map(chr(0)*view.mapdim[0]*view.mapdim[1]) clock = pygame.time.Clock() while True: for event in pygame.event.get(): if handle_event(event, view): return #view.path = pathf(view.occu) view.occu = list([list(x) for x in view.mapw]) for player in view.players: player.food = v(0, 0, 0) player.hunger = v(0, 0, 0) for unit in view.units: unit.update(dt, view) if view.scrollleft: view.pos = view.pos + v(-1.0, 0.0) * config.keyScrollSpeed * dt if view.scrollright: view.pos = view.pos + v(1.0, 0.0) * config.keyScrollSpeed * dt if view.scrollup: view.pos = view.pos + v(0.0, -1.0) * config.keyScrollSpeed * dt if view.scrolldown: view.pos = view.pos + v(0.0, 1.0) * config.keyScrollSpeed * dt if view.followselection and view.selection != []: poss = [x.pos for x in view.selection] poss = sum(poss) / len(poss) view.pos = poss - v(640, 480) / 2 if view.pos[0] < 0: view.pos[0] = 0 if view.pos[1] < 0: view.pos[1] = 0 maxx = view.mapdim[0] * 32 - view.screen.get_width() maxy = (view.mapdim[1] - 12) * 32 if view.pos[0] > maxx: view.pos[0] = maxx if view.pos[1] > maxy: view.pos[1] = maxy view.pos = v([int(x) for x in view.pos]) view.screen.fill((0, 0, 0)) if view.tileset == "platform": star.draw(view) draw_tiles(view) tempunits = [] for unit in view.units: tempunits.append((unit.level, unit.pos[1], unit)) tempunits.sort() view.minimapover = pygame.surface.Surface((128, 128), pygame.SRCALPHA, 32) for unit in tempunits: unit[2].draw(view) for sprite in view.uisprites: sprite.draw(view) sprite.update() if view.selarea: pygame.draw.rect(view.screen, (16, 252, 24), view.selarea, 1) #68 w 3 down player = view.players[0] player.raceindex = 1 player.minerals = 50 player.gas = 0 #print player.food, player.hunger icons = [ (0, player.minerals, (16, 252, 24)), (player.raceindex + 1, player.gas, (16, 252, 24)), ] for raceindex in range(3): food = player.food[raceindex] hunger = player.hunger[raceindex] if not food and not hunger: # heh continue if food >= hunger: color = (16, 252, 24) else: color = (200, 24, 24) icons.append((raceindex + 4, str(hunger) + "/" + str(food), color)) sprite = view.sprites["icons"] x = 640 icons.reverse() for icon in icons: x -= 68 view.screen.blit(sprite[icon[0]], (x, 3)) text = font.render(10, str(icon[1]), "game5") view.screen.blit(text, (x + 16, 3)) view.screen.blit(view.sprites['ConsoleTerran'], (0, 0)) view.screen.blit(view.minimap, v(6, 348) + (64, 64) - v(view.minimap.get_size()) / 2) view.screen.blit(view.minimapover, v(6, 348) + (64, 64) - v(view.minimap.get_size()) / 2) topleft = v(6, 348) + (64, 64) - v(view.minimap.get_size()) / 2 pygame.draw.line(view.screen, (204, 204, 208), topleft + (0, -1), topleft + (128, -1)) bottomright = v(6, 348) + (64, 64) + v(view.minimap.get_size()) / 2 pygame.draw.line(view.screen, (172, 152, 148), bottomright, bottomright + (-128, 0)) pygame.draw.rect( view.screen, (255, 255, 255), (v(6, 348) + (64, 64) - v(view.minimap.get_size()) / 2 + view.pos / 32, (20, 13)), 1) #print view.mapdim (173, 389) if len(view.selection) == 0: pass elif len(view.selection) == 1: u = view.selection[0] if u.id: w = view.sprites["Wireframe"][u.id] w.set_palette(get_wpalette(u)) view.screen.blit(w, (168, 388)) if u.health != None: s = str(int(u.health)) + "/" + str(u.maxhealth) t = font.render(8, s, "game5", True) view.screen.blit(t, v(199, 457) - v(t.get_size()) / 2) s = u.name t = font.render(10, u.name, "game0", True) view.screen.blit(t, v(315, 394) - v(t.get_size()) / 2) else: pass #multiple grpwire.grp #buttons view.screen.blit(view.sprites["TerranButtons"][4], (3, 320)) view.screen.blit(view.sprites["TerranButtons"][0], (416, 388)) view.screen.blit(font.render(8, "MENU", "game1"), (435, 394)) mp += .5 mp = mp % 10 view.screen.blit(view.movie[int(mp)], (413, 410)) #pygame.draw.rect(view.screen, (128,128,128), ((413,410),(60,56))) view.screen.blit(view.sprites["TerranOverlay"], (413, 410)) if debug: surf = font.render(8, str(int(clock.get_fps() + .5)), "game0") view.screen.blit(surf, (0, 0)) if pygame.mouse.get_focused(): view.ct += dt * 8 cursor = 'CursorArrow' u = get_unit_at_point(pygame.mouse.get_pos() + view.pos, view) if u: if u.player == view.players[0]: cursor = 'CursorTarget2Green' elif u.player == -1: cursor = 'CursorTarget2Yellow' else: cursor = 'CursorTarget2Red' if view.selarea: cursor = 'CursorDrag' if view.scroll_start: cursor = None if view.sprites['ConsoleTerran'].get_at( pygame.mouse.get_pos()) != (0, 0, 0, 255): cursor = "CursorArrow" if cursor == "CursorArrow": view.ct = view.ct % 4.0 elif cursor in ("CursorTarget2Green", "CursorTarget2Yellow", "CursorTarget2Red"): view.ct = view.ct % 14.0 else: view.ct = 0 if cursor: sprite = view.sprites[cursor][int(view.ct)] view.screen.blit( sprite, v(pygame.mouse.get_pos()) - v(sprite.get_size()) / 2) try: a except NameError: a = 0. a += dt a = a % 5 view.screen.blit(ui.progress_bar(a / 5, view), (281, 426)) pygame.display.update() pygame.mixer.music.set_volume(view.config.musicVolume) #sendp(cPickle.dumps(view.units),view) #try: # while True: # view.units = cPickle.loads(view.socket.recvfrom(2**20)[0]) #except socket.error: pass if debug: clock.tick() else: clock.tick(30) dt = clock.get_time() / 1000.0
#!/bin/env python3 from record import start, finish from star import draw r = 100 n = 5 start(2 * r, 2 * r, 0, 0, 50, __file__) draw(r, n) finish()
import leaf import turtle import math from threading import Thread #create window and turtle window = turtle.Screen() window.bgcolor("black") if __name__ == '__main__': for i in range(1, 5): #draw leafs through multithreading t = Thread(target=leaf.draw, args=(i, )) t.start() starlen = (math.sqrt((10**2) * 2) / 2) / math.cos(math.radians(75)) centrstar = turtle.Turtle() centrstar.color("white", "white") centrstar.speed(40) centrstar.right(45) centrstar.forward(10) centrstar.right(60) centrstar.begin_fill() #begin fill white for i in range(1, 5): star.draw(centrstar, starlen) centrstar.end_fill() centrstar.hideturtle() #tidy up window window.exitonclick()
def main(): config = Null() config.keyScrollSpeed = 2000.0 config.musicVolume = .5 view = Null() view.pos = v((0,0)) view.sprites = {} view.cursor = {} view.units = [] view.selarea = None view.begin_pos = None view.scroll_start = None view.selection = [] view.players = [] view.ct = 0.0 view.scrollleft = False view.scrollright = False view.scrollup = False view.scrolldown = False view.uisprites = [] view.config = config view.tilepalcount = 0 view.followselection = False init(sys.argv, view) dt = .001 mp = 0 #view.pathfind.set_map(chr(0)*view.mapdim[0]*view.mapdim[1]) clock = pygame.time.Clock() while True: for event in pygame.event.get(): if handle_event(event, view): return #view.path = pathf(view.occu) view.occu = list([list(x) for x in view.mapw]) for player in view.players: player.food = v(0,0,0) player.hunger = v(0,0,0) for unit in view.units: unit.update(dt, view) if view.scrollleft: view.pos = view.pos + v(-1.0,0.0)*config.keyScrollSpeed*dt if view.scrollright: view.pos = view.pos + v(1.0,0.0)*config.keyScrollSpeed*dt if view.scrollup: view.pos = view.pos + v(0.0,-1.0)*config.keyScrollSpeed*dt if view.scrolldown: view.pos = view.pos + v(0.0,1.0)*config.keyScrollSpeed*dt if view.followselection and view.selection != []: poss = [x.pos for x in view.selection] poss = sum(poss)/len(poss) view.pos = poss - v(640,480)/2 if view.pos[0] < 0: view.pos[0] = 0 if view.pos[1] < 0: view.pos[1] = 0 maxx = view.mapdim[0]*32 - view.screen.get_width() maxy = (view.mapdim[1]-12)*32 if view.pos[0] > maxx: view.pos[0] = maxx if view.pos[1] > maxy: view.pos[1] = maxy view.pos = v([int(x) for x in view.pos]) view.screen.fill((0,0,0)) if view.tileset == "platform": star.draw(view) draw_tiles(view) tempunits = [] for unit in view.units: tempunits.append((unit.level,unit.pos[1],unit)) tempunits.sort() view.minimapover = pygame.surface.Surface((128,128),pygame.SRCALPHA,32) for unit in tempunits: unit[2].draw(view) for sprite in view.uisprites: sprite.draw(view) sprite.update() if view.selarea: pygame.draw.rect(view.screen, (16,252,24), view.selarea, 1) #68 w 3 down player = view.players[0] player.raceindex = 1 player.minerals = 50 player.gas = 0 #print player.food, player.hunger icons = [ (0, player.minerals, (16, 252, 24)), (player.raceindex+1, player.gas, (16, 252, 24)), ] for raceindex in range(3): food = player.food[raceindex] hunger = player.hunger[raceindex] if not food and not hunger: # heh continue if food >= hunger: color = (16, 252, 24) else: color = (200,24,24) icons.append((raceindex+4, str(hunger)+"/"+str(food), color)) sprite = view.sprites["icons"] x = 640 icons.reverse() for icon in icons: x -= 68 view.screen.blit(sprite[icon[0]],(x,3)) text = font.render(10, str(icon[1]), "game5") view.screen.blit(text, (x+16, 3)) view.screen.blit(view.sprites['ConsoleTerran'],(0,0)) view.screen.blit(view.minimap, v(6,348)+(64,64)-v(view.minimap.get_size())/2) view.screen.blit(view.minimapover, v(6,348)+(64,64)-v(view.minimap.get_size())/2) topleft = v(6,348)+(64,64)-v(view.minimap.get_size())/2 pygame.draw.line(view.screen, (204,204,208), topleft+(0,-1), topleft+(128,-1)) bottomright = v(6,348)+(64,64)+v(view.minimap.get_size())/2 pygame.draw.line(view.screen, (172,152,148), bottomright, bottomright+(-128,0)) pygame.draw.rect(view.screen,(255,255,255), (v(6,348)+(64,64)-v(view.minimap.get_size())/2+view.pos/32,(20,13)),1) #print view.mapdim (173,389) if len(view.selection) == 0: pass elif len(view.selection) == 1: u = view.selection[0] if u.id: w = view.sprites["Wireframe"][u.id] w.set_palette(get_wpalette(u)) view.screen.blit(w, (168,388)) if u.health != None: s = str(int(u.health))+"/"+str(u.maxhealth) t = font.render(8, s, "game5", True) view.screen.blit(t,v(199,457)-v(t.get_size())/2) s = u.name t = font.render(10, u.name, "game0", True) view.screen.blit(t,v(315,394)-v(t.get_size())/2) else: pass #multiple grpwire.grp #buttons view.screen.blit(view.sprites["TerranButtons"][4], (3,320)) view.screen.blit(view.sprites["TerranButtons"][0], (416,388)) view.screen.blit(font.render(8,"MENU", "game1"),(435,394)) mp += .5 mp = mp % 10 view.screen.blit(view.movie[int(mp)], (413,410)) #pygame.draw.rect(view.screen, (128,128,128), ((413,410),(60,56))) view.screen.blit(view.sprites["TerranOverlay"], (413, 410)) if debug: surf = font.render(8, str(int(clock.get_fps()+.5)), "game0") view.screen.blit(surf,(0,0)) if pygame.mouse.get_focused(): view.ct += dt * 8 cursor = 'CursorArrow' u = get_unit_at_point(pygame.mouse.get_pos()+view.pos,view) if u: if u.player == view.players[0]: cursor = 'CursorTarget2Green' elif u.player == -1: cursor = 'CursorTarget2Yellow' else: cursor = 'CursorTarget2Red' if view.selarea: cursor = 'CursorDrag' if view.scroll_start: cursor = None if view.sprites['ConsoleTerran'].get_at(pygame.mouse.get_pos()) != (0,0,0,255): cursor = "CursorArrow" if cursor == "CursorArrow": view.ct = view.ct % 4.0 elif cursor in ("CursorTarget2Green","CursorTarget2Yellow","CursorTarget2Red"): view.ct = view.ct % 14.0 else: view.ct = 0 if cursor: sprite = view.sprites[cursor][int(view.ct)] view.screen.blit(sprite, v(pygame.mouse.get_pos())-v(sprite.get_size())/2) try: a except NameError: a = 0. a += dt a = a % 5 view.screen.blit(ui.progress_bar(a/5,view),(281,426)) pygame.display.update() pygame.mixer.music.set_volume(view.config.musicVolume) #sendp(cPickle.dumps(view.units),view) #try: # while True: # view.units = cPickle.loads(view.socket.recvfrom(2**20)[0]) #except socket.error: pass if debug: clock.tick() else: clock.tick(30) dt = clock.get_time()/1000.0