Exemple #1
0
    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)
Exemple #2
0
    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
Exemple #4
0
 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()
Exemple #5
0
 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)
Exemple #6
0
 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())
Exemple #7
0
    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)
Exemple #8
0
    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
Exemple #9
0
 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
Exemple #10
0
    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)
Exemple #11
0
    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)