def __init__(self): super(WaterFlow, self).__init__() river_anim = [] for i in range(10): tmp = pyglet.resource.image( "src/blocks/river/animation/river_flow000" + str(i) + ".png") river_anim.append(tmp) for i in range(10, 31): tmp = pyglet.resource.image( "src/blocks/river/animation/river_flow00" + str(i) + ".png") river_anim.append(tmp) flow = pyglet.image.Animation.from_image_sequence(river_anim, 0.01, loop=True) ''' flow = pyglet.image.load_animation("src/blocks/river/animation/river_flow.gif") ''' x, y = director.get_window_size() sprite = Sprite(flow) sprite.scale_y = y / 1152 sprite.scale_x = x / 2048 sprite.position = (x // 2, y // 2) self.add(sprite)
def draw_info_army(self, cell): """Прорисовка окна информации армии""" bg = Sprite("light95.png") bg.scale_x = 0.5 bg.scale_y = 0.115 bg.position = [self.X_POS_ARMY, self.Y_POS] self.mas_sprite.append(bg) mas_shift = [-3, -1, 1, 3] mas_count = [0]*4 for unit in cell.army.army: for i in range(len(mas_count)): if unit.type_unit == i+1: mas_count[i] += unit.count for i, g in enumerate(mas_shift): unit = Sprite(self.IMAGE_NAME[i] + str(cell.army.player) + ".png") unit.scale = 1.5 unit.position = [self.X_POS_ARMY + self.SHIFT*g - 20, self.Y_POS] count = cocos.text.Label(str(mas_count[i]), font_name='Times New Roman', font_size=32, anchor_x='left', anchor_y='center') count.position = [self.X_POS_ARMY + self.SHIFT*g - 5, self.Y_POS] self.mas_sprite.append(count) self.mas_sprite.append(unit) for object in self.mas_sprite: chart.Chart().add(object)
def bring(self, minion): if minion == "gatherer": if self.gathval: mini = Sprite(load_animation("resources/gatherer_coming.gif"), position = (spawn_place[minion][0] + minion_move_to[minion][0], spawn_place[minion][1] + minion_move_to[minion][1])) mini.scale = minion_scale self.add(mini) mini.do(MoveTo(spawn_place[minion], minion_move_time) + CallFunc(mini.kill)) self.gathval = False else: mini1 = Sprite(load_animation("resources/gatherer.gif"), position = spawn_place[minion]) mini1.scale = minion_scale self.add(mini1) mini1.do(MoveBy(minion_move_to[minion], minion_move_time) + CallFunc(mini1.kill)) self.gathval = True elif minion == "miner": if self.minval: mini = Sprite(load_animation("resources/miner.gif"), position = (spawn_place[minion ][0] + minion_move_to[minion][0], spawn_place[minion][1] + minion_move_to[minion][1])) mini.scale = minion_scale mini.scale_x = -minion_scale self.add(mini) mini.do(MoveTo( (spawn_place[minion]), minion_move_time) + CallFunc(mini.kill) ) self.minval = False else: mini1 = Sprite(load_animation("resources/miner.gif"), position = spawn_place[minion]) mini1.scale = minion_scale self.add(mini1) mini1.do(MoveBy(minion_move_to[minion], minion_move_time) + CallFunc(mini1.kill)) self.minval = True
def excute(self): if self.i < self.length: item = self.textsource[self.textlist[self.i]] if 'Branch' in item.keys(): self.add(Branch(self.map, item['Branch'], self._callback)) director.window.remove_handlers(self) super().excute() else: if item['Type'] is not 'M': self.source_error('M') if item['Location'] is 0: obj = self.up elif item['Location'] is 1: obj = self.down else: self.source_error('Location') return pos = obj['Icon'].position obj['Icon'].kill() if item['Icon'] is not None: obj['Icon'] = Sprite(item['Icon'], pos) obj['Icon'].scale_x = self.size[0] / obj['Icon'].width obj['Icon'].scale_y = self.size[1] / obj['Icon'].height self.add(obj['Icon']) obj['Text'].element.text = item['Text'] super().excute() else: director.window.remove_handlers(self) self.exit()
def changeright(self, source): self.right.kill() if type(source) is str: self.right = Sprite(source, position=(self.w * 5 // 6, self.h // 2)) self.right.scale_x, self.right.scale_y = \ 480 / self.right.width, 640 / self.right.height else: self.right = Layer() pos1, pos2 = (self.w-640, self.h // 2), (self.w-300, self.h // 2) spr1, spr2 = Sprite(source[0], position=pos1), Sprite(source[1], position=pos2) spr1.scale_x, spr1.scale_y = 480 / spr1.width, 640 / spr1.height spr2.scale_x, spr2.scale_y = 480 / spr2.width, 640 / spr2.height self.right.add(spr1) self.right.add(spr2) self.add(self.right)
def add_lifebar(self): p_list = [ 'pic/life01.png', 'pic/life02.png', 'pic/life03.png', 'pic/life04.png' ] self.lifebar_list = [] for i in range(4): lifebar = Sprite(p_list[i]) lifebar.anchor = (0, 0) lifebar.scale_x = 3 lifebar.scale_y = 5 lifebar.y += 300 lifebar.do(Hide()) self.lifebar_list.append(lifebar) self.add(lifebar) self.lifebar_list[3 - self.durability].do(Show())
def __init__(self, minimap, w, h, size=10): super().__init__(0, 0, 0, 100, w * size, h * size) self.batch = BatchNode() for (i, j) in minimap: tmp = minimap[(i, j)] if tmp is not -1: img = 'grid/' + str(tmp) + '.png' pos = i * size, j * size spr = Sprite(image=img, position=pos) spr.scale_x, spr.scale_y = size / spr.width, size / spr.height spr.image_anchor = (0, 0) self.batch.add(spr) self.add(self.batch) self.frame = ColorLayer(0, 0, 100, 100, min(w * 10, 160), min(h * 10, 90)) self.add(self.frame)
def __init__(self): self.player1 = Player() # Human player self.player2 = Player() # AI player # Initial cities city1 = cocos.sprite.Sprite(Constants.Paths.Units.city) city1.position = (0 + city1.width / 2, 190 + city1.height / 2) self.player1.cities.append(city1) city2 = Sprite(Constants.Paths.Units.city) city2.position = (1280 - city2.width / 2, 190 + city2.height / 2) city2.scale_x = -1.0 self.player2.cities.append(city2) # Initial resources self.player1.resources = 2000 self.player2.resources = 2000
def bring(self, minion): if minion == "gatherer": if self.gathval: mini = Sprite(load_animation("resources/gatherer_coming.gif"), position=(spawn_place[minion][0] + minion_move_to[minion][0], spawn_place[minion][1] + minion_move_to[minion][1])) mini.scale = minion_scale self.add(mini) mini.do( MoveTo(spawn_place[minion], minion_move_time) + CallFunc(mini.kill)) self.gathval = False else: mini1 = Sprite(load_animation("resources/gatherer.gif"), position=spawn_place[minion]) mini1.scale = minion_scale self.add(mini1) mini1.do( MoveBy(minion_move_to[minion], minion_move_time) + CallFunc(mini1.kill)) self.gathval = True elif minion == "miner": if self.minval: mini = Sprite(load_animation("resources/miner.gif"), position=(spawn_place[minion][0] + minion_move_to[minion][0], spawn_place[minion][1] + minion_move_to[minion][1])) mini.scale = minion_scale mini.scale_x = -minion_scale self.add(mini) mini.do( MoveTo((spawn_place[minion]), minion_move_time) + CallFunc(mini.kill)) self.minval = False else: mini1 = Sprite(load_animation("resources/miner.gif"), position=spawn_place[minion]) mini1.scale = minion_scale self.add(mini1) mini1.do( MoveBy(minion_move_to[minion], minion_move_time) + CallFunc(mini1.kill)) self.minval = True
def __init__(self): super( TestLayer, self ).__init__() x,y = director.get_window_size() sprite = Sprite('grossini.png') sprite.position = x//5, y//2 self.add(sprite) sprite = Sprite('grossini.png') sprite.position = x*2//5, y//2 sprite.scale_x = 0.5 self.add(sprite) sprite = Sprite('grossini.png') sprite.position = x*3//5, y//2 sprite.scale_y = 0.5 self.add(sprite) sprite = Sprite('grossini.png') sprite.position = x*4//5, y//2 sprite.scale_y = 0.5 sprite.scale = 2.0 self.add(sprite)
def __init__(self): super(TestLayer, self).__init__() x, y = director.get_window_size() sprite = Sprite('grossini.png') sprite.position = x // 5, y // 2 self.add(sprite) sprite = Sprite('grossini.png') sprite.position = x * 2 // 5, y // 2 sprite.scale_x = 0.5 self.add(sprite) sprite = Sprite('grossini.png') sprite.position = x * 3 // 5, y // 2 sprite.scale_y = 0.5 self.add(sprite) sprite = Sprite('grossini.png') sprite.position = x * 4 // 5, y // 2 sprite.scale_y = 0.5 sprite.scale = 2.0 self.add(sprite)