コード例 #1
0
    def __init__(self):
        super(WixaPortal, self).__init__()
        w, h = director.get_window_size()

        self.xds = Layer()
        for i in range(0, 180, 10):
            xd = Line("xD " * 20, 50, (255, 255, 0, 255), w // 2, h // 2,
                      "November", pyglet.font.Text.CENTER,
                      pyglet.font.Text.CENTER)
            xd.rotation = i
            xd.do(Repeat(CallFunc(xd.update_line) + Delay(0.05)))
            self.xds.add(xd)

        self.add(self.xds)

        x, y = w // 2, h // 2

        s = get_sprite('krawczyk.png', x, y)
        s.do(Repeat(RotateTo(20, 0.2) + RotateTo(-10, 0.2)))
        self.add(s)

        self.wixa1 = get_sprite('wixapol-full.png', x, y)
        # self.wixa1.do(R_ScaleFromTo(1.5, 0.3, 0.3))
        self.wixa1.do(R_Blink(15, 3))
        self.add(self.wixa1)
コード例 #2
0
    def __init__(self, back_team, front_team, location):
        """

        :param back_team:
        :type back_team: team.Team
        :param front_team:
        :type front_team: team.Team
        :param location:
        :type location: str
        """
        Layer.__init__(self)

        self.background_image = Sprite(pyglet.image.load(
            resource.load_resource("bg-" + location + ".jpg", "BattleBackgrounds")),
            position=(640/2, 480/2), scale=0.8)
        self.add(self.background_image)

        self.back_team = back_team
        self.front_team = front_team

        self.back_team.set_orientation(constants.BACK_FACING)
        self.front_team.set_orientation(constants.FRONT_FACING)

        self.back_team.add_to_battle(self)
        self.front_team.add_to_battle(self)

        self.add(self.front_team)
        self.add(self.back_team)

        self.animation_locked = False
        self.toggle_animation_lock = CallFunc(self._toggle_animation_lock)
        self.hud = BattleHUD(self)
        self.add(self.hud)
コード例 #3
0
ファイル: pause.py プロジェクト: robsonfj/python-tetris
    def __init__(self):
        Layer.__init__(self)

        menu = Menu("")
        menu_items = []

        black_lyr = ColorLayer(0, 0, 0,0)
        self.add(black_lyr)
        black_lyr.width = int(director.window.width)
        black_lyr.height = int(director.window.height)
        black_lyr.position = (0, 0)
        black_lyr.opacity = 140

        item = MenuItem('Continuar', self.on_quit)
        menu_items.append(item)
        menu.position = ( 0, -120)
        item.position = ( 0, 150)
        menu.font_title["font_name"] = "Tetrominoes"
        menu.font_title["color"] = (214, 178, 152, 255)
        menu.font_item["font_name"] = "Ravie"
        menu.font_item["font_size"] = 19
        menu.font_item_selected["font_name"] = "Ravie"
        menu.font_item_selected["font_size"] = 22
        menu.title = "PAUSADO"

        menu.create_menu( menu_items )
        menu.on_quit = self.on_quit
        
        self.add(menu)
コード例 #4
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.schedule_interval(self.music_start, interval=7)
     self.intro_sound = load("music/sound_start.wav", streaming=False)
     self.intro_sound.play()
     self.is_event_handler = True
     background = Sprite(self.gallery.content["display"]["title"])
     self.optimal_scale = (
         self.config.window_width *
         self.display_pos_size["display_title"]["W"]) / background.width
     background.image_anchor = 0, 0
     background.scale = self.optimal_scale
     background.x = self.config.window_width * self.display_pos_size[
         "display_title"]["X"]
     background.y = self.config.window_height * self.display_pos_size[
         "display_title"]["Y"]
     self.left_margin = background.x
     self.bottom_margin = background.y
     self.optimal_width = background.width
     self.optimal_height = background.height
     self.add(background)
     place_holder_image = Sprite(self.gallery.content["screen"]["title"])
     place_holder_image.position = director.window.width / 2, director.window.height / 2
     place_holder_image.scale = self.optimal_scale
     place_holder_image.do(ScaleBy(5.2, duration=25))
     self.add(place_holder_image)
コード例 #5
0
 def setupEditorNodes(self):
     # TODO:@twenty0ne
     self._rulerLayer = RulersLayer()
     self.add(self._rulerLayer, z=6)
     
     # Border layer
     self._borderLayer = Layer()
     self.add(self._borderLayer, z=1)
     
     self._borderDevice = cocos.sprite.Sprite("images/missing-texture.png")
     self._borderLayer.add(self._borderDevice, z=1)
     
     # Gray background
     self._bgLayer = ColorLayer(128,128,128,255,width=4096,height=4096)
     self._bgLayer.position = 0,0
     self._bgLayer.anchor = 0,0
     self.add(self._bgLayer, z=-1)
     
     # Black content layer
     self._stageBgLayer = ColorLayer(0,0,0,255,width=0,height=0)
     self._stageBgLayer.anchor = 0.5,0.5
     # TODO:@twenty0ne
     # stageBgLayer.ignoreAnchorPointForPosition = NO
     self.add(self._stageBgLayer, z=0)
     
     self._contentLayer = Layer()
     self.add(self._contentLayer)
コード例 #6
0
    def __init__(self):
        super(Battlefiled, self).__init__()

        self.background = Layer()
        self.player = PlayerLayer()

        self.map = cocos.tiles.load('sources/map.tmx')['map']
        self.map.set_view(0, 0, 16 * 32, 16 * 32)

        self.add(self.map)
        self.add(self.background)
        self.add(self.player)

        label = Label('Battlefiled',
                      font_name='Times New Roman',
                      font_size=32,
                      anchor_x='center',
                      anchor_y='center')
        label.position = 512, 20
        self.background.add(label)

        self.posion = Poisoner(self.map)
        self.posion.setPoisonRegion((64, 64), 128)

        self.schedule_interval(self.schedWork, 1)
コード例 #7
0
ファイル: dialog.py プロジェクト: LLNT/3X-Project
    def __init__(self, text_list, text_source, map, w, h, info,
                 size=200, callback=None, **kwargs):

        super().__init__(text_list, text_source)
        self.map = map
        self.w, self.h = w, h
        self.size = size
        self.callback = callback
        self.kwargs = kwargs
        self.info = info # dict of persons that stands for V or E

        # add background

        self.background = Sprite(map.scene, position=(w // 2, h // 2))
        self.text_back = ColorLayer(0,0,200,255,w,h//3)
        self.add(self.background)
        self.add(self.text_back)

        # add img
        self.left = Sprite('ring.png', position=(w // 6, h // 2), opacity=0)
        self.right = Sprite('ring.png', position=(w * 5 // 6, h // 2), opacity=0)
        self.add(self.left)
        self.add(self.right)

        # add label
        self.label = Text(text=' ', position=(w // 6, h // 3), font_size=24)
        self.text_back.add(self.label)

        # add text
        self.text = Text(text=' ', position=(w // 2, h // 6), font_size=30)
        self.text_back.add(self.text)
コード例 #8
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.transarctica = director.core.query_mover("Transarctica")
     self._load_background()
     self._load_interface()
コード例 #9
0
    def __init__(self):
        Scene.__init__(self)
        self.add(
            Sprite(image=pyglet.resource.image('background.png'),
                   position=(self.anchor_x,
                             self.anchor_y)))  # Background Image

        black_fade = ColorLayer(0, 0, 0, 0)
        black_fade.opacity = 120
        self.add(black_fade)

        menu = Menu("TETRIS")
        menu.position = (0, -60)
        menu.font_title["font_name"] = "Tetrominoes"
        menu.font_title["color"] = (214, 178, 152, 255)
        menu.font_item["font_name"] = "Ravie"
        menu.font_item_selected["font_name"] = "Ravie"

        menu_items = [
            MenuItem('Start Game',
                     game_controller.game_controller.init_new_game),
            MenuItem('Ranking', self.show_ranking),
            MenuItem('Quit', game_controller.game_controller.close_scene)
        ]
        menu.menu_hmargin = 10
        menu.create_menu(menu_items)

        menu.on_quit = self.on_quit

        self.menu_lyr = Layer()
        self.menu_lyr.add(menu)
        self.rank = Ranking()
        self.multi_layer = MultiplexLayer(self.menu_lyr, self.rank)
        self.add(self.multi_layer)
コード例 #10
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.sound_on_off = 'on'
     self._load_background()
     self._load_interface()
コード例 #11
0
    def __init__(self):
        Layer.__init__(self)
        self.anchor = Vector2()
        self.add(
            Sprite(image=pyglet.resource.image('background-tetris.png'),
                   anchor=self.anchor))  # Background Image

        self.game_controller = game_controller.game_controller
        self.c_manager = self.game_controller.c_manager  # obtem instancia do gerenciador de colisao

        tmp_block = Block(Vector2(),
                          '')  # para obter as dimencoes da imagem do bloco
        init_pos_x = 250  # meio eixo x da tela
        init_pos_y = tmp_block.height / 2

        for i in range(23):
            blk = Block((init_pos_x - tmp_block.width, init_pos_y +
                         (i * tmp_block.height)),
                        block_color=BLOCK_WALL,
                        b_type="Left_Wall")
            blk.anchor = (blk.width / 2, blk.height / 2)
            self.add(blk)

            blk = Block((init_pos_x + (tmp_block.width * 16), init_pos_y +
                         (i * tmp_block.height)),
                        block_color=BLOCK_WALL,
                        b_type="Right_Wall")
            blk.anchor = (blk.width / 2, blk.height / 2)
            self.add(blk)

        #cria retangulo de colisao para paredes esquerda e direita
        self.c_manager.add(
            Collision_Rect(init_pos_x - tmp_block.width * 1.5,
                           tmp_block.width,
                           init_pos_y,
                           23 * tmp_block.height,
                           b_type="Left_Wall"))
        self.c_manager.add(
            Collision_Rect(init_pos_x - tmp_block.width / 2 +
                           (tmp_block.width * 16),
                           tmp_block.width,
                           init_pos_y,
                           23 * tmp_block.height,
                           b_type="Right_Wall"))

        for i in range(16):
            blk = Block((init_pos_x + (i * tmp_block.width), init_pos_y),
                        block_color=BLOCK_WALL,
                        b_type="Base_Floor")
            blk.anchor = (blk.width / 2, blk.height / 2)
            self.add(blk)

        #cria retangulo de colisao para chao
        self.c_manager.add(
            Collision_Rect(init_pos_x - tmp_block.width / 2,
                           16 * tmp_block.width,
                           init_pos_y - tmp_block.height / 2,
                           tmp_block.height,
                           b_type="Base_Floor"))
コード例 #12
0
ファイル: podium.py プロジェクト: jtietema/racer
class Podium(Scene):
    def __init__(self):
        super(Podium, self).__init__()

        self.podium = Layer()
        self.podium.is_event_handler = True
        self.podium.on_key_press = self.on_key_press

        center = director.window.width / 2

        podium_sprite = Sprite('podium.png')
        podium_sprite.image_anchor_y = 0
        podium_sprite.x = center

        self.podium.add(podium_sprite)

        top_3 = state.cup.total_ranking[:3]

        for index, car in enumerate(top_3):
            label = util.Label(text=car.name,
                               font_size=25,
                               anchor_y='bottom',
                               anchor_x='center')
            label.x = center + (X_DIR[index] * BLOCK_WIDTH)
            label.y = HEIGHTS[index] + 20
            self.podium.add(label, z=3)

        self.add(self.podium, z=2)

        fireworks = Fireworks()
        fireworks.x = center
        fireworks.y = director.window.height / 2 + 100
        self.add(fireworks, z=1)

        if state.profile.car in top_3:
            position = top_3.index(state.profile.car)
            earned = MONEY[position]
            head_text = 'You earned $%d!' % (earned, )

            state.profile.money += earned
            state.profile.save()

            if position == 0:
                head_text = 'Congratulations! ' + head_text
        else:
            head_text = 'Better luck next time!'

        head_label = util.Label(text=head_text,
                                font_size=30,
                                anchor_x='center',
                                anchor_y='bottom')
        head_label.x = center
        head_label.y = director.window.height - 75
        self.add(head_label, z=3)

    def on_key_press(self, symbol, modifier):
        if symbol in [key.ESCAPE, key.RETURN, key.SPACE]:
            director.pop()
        return True
コード例 #13
0
ファイル: coco.py プロジェクト: ponyatov/Q
 def __init__(self):
     Layer.__init__(self)
     sheet = pyglet.image.load('img/tetris/walk.png')
     grid = pyglet.image.ImageGrid(sheet,2,8)[0:]
     grid = grid[8:] # reorder
     anim = pyglet.image.Animation.from_image_sequence(grid, .1, loop=True)
     spr = Sprite(anim) ; spr.position = W/2,H/2
     self.add(spr)
コード例 #14
0
 def add(self, child, z=0, name=None):
     """own add function, so background color and ordering is covered"""
     Layer.add(self, child, z, name)
     if name != "background":
         self._update_dimensions()
         self._update_background_size()
         if self.side != "manual":
             self._update_children_position()
コード例 #15
0
ファイル: team.py プロジェクト: TheKewlStore/ErinsGame
 def __init__(self, *pokemon):
     Layer.__init__(self)
     self.pokemon = list(pokemon)
     self.orientation = constants.NO_ORIENTATION
     self.remove_sprite = CallFuncS(self._remove_sprite)
     self.add_sprite = CallFuncS(self._add_sprite)
     self.current_battle = None
     """ :type: battle.DoubleBattleLayer"""
コード例 #16
0
 def __init__(self, wallpaper_image):
     """initializer"""
     Layer.__init__(self)
     self.is_event_handler = True
     wallpaper = Sprite(
         wallpaper_image,
         (director.window.width / 2, director.window.height / 2))
     self.add(wallpaper)
コード例 #17
0
    def layer2_init(self):
        w, h = director.get_window_size()

        self.l2 = Layer()
        self.l2.visible = False

        self.stallone = Layer()

        bg = get_sprite('jungle.jpg', w // 2, h // 2)
        bg.scale = 1.3
        bg.do(R_ScaleFromTo(2, 1.3, 0.1))
        self.stallone.add(bg)

        s = get_sprite('stallone.png', w // 2, h // 2 + 100)
        s.scale = 1.35
        s.do(Repeat(Shaky3D(randrange=2, grid=(32, 24), duration=5)))
        s.do(R_ScaleFromTo(2, 1.3, 0.2))
        self.stallone.add(s)

        self.l2.add(self.stallone)

        txt = Line("TOTALNE           ",
                   100, (255, 255, 0, 255),
                   w // 2,
                   h // 2,
                   "November",
                   anchor_x=pyglet.font.Text.CENTER,
                   anchor_y=pyglet.font.Text.CENTER)
        txt.do(Repeat(CallFunc(txt.update_line) + Delay(0.1)))
        txt.transform_anchor = w // 2, h // 2
        txt.position = -600, 0
        txt.rotation = 60
        self.l2.add(txt)

        txt = Line("ZNISZCZENIE       ",
                   100, (255, 255, 0, 255),
                   w // 2,
                   h // 2,
                   "November",
                   anchor_x=pyglet.font.Text.CENTER,
                   anchor_y=pyglet.font.Text.CENTER)
        txt.do(Repeat(CallFunc(txt.update_line) + Delay(0.1)))
        txt.transform_anchor = w // 2, h // 2
        txt.position = 600, 0
        txt.rotation = -60
        self.l2.add(txt)

        wixa = get_sprite('wixapol-full.png', 200, 250)
        wixa.scale = 0.3
        wixa.do(R_Blink(20, 3))
        self.l2.add(wixa)

        wixa = get_sprite('wixapol-full.png', w - 200, 250)
        wixa.scale = 0.3
        wixa.do(R_Blink(20, 3))
        self.l2.add(wixa)

        self.add(self.l2)
コード例 #18
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.transarctica = director.core.query_mover("Transarctica")
     self._load_background()
     self._load_interface()
     self.set_visibility(False)
     self.check_rumors()
コード例 #19
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.transarctica = director.core.query_mover("Transarctica")
     self._load_background()
     self._load_interface()
     self.switch_break()
     self.switch_direction()
     self.alarm_status = False
コード例 #20
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.transarctica = director.core.query_mover("Transarctica")
     self._load_background()
     self._load_interface()
     self.interact = False
     self.set_visibility(False)
     self.alarm_status = False
コード例 #21
0
    def __init__(self):
        Layer.__init__(self)

        self.position = Vector2()  # posicao fixa da layer
        self.anchor = Vector2()

        self.same_line_blks = {
        }  # vai armazenar lista de blocos com mesma altura ( para remover quando completar a linha)

        self.game_controller = game_controller.game_controller
        self.c_manager = self.game_controller.c_manager  # obtem instancia do gerenciador de colisao
コード例 #22
0
 def __init__(self):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.transarctica = director.core.query_mover("Transarctica")
     self._load_background()
     self.service_mode = "NA"
     self.elements_to_remove = []
     self._load_interface()
     self.set_visibility(True)
     self.TA = -1
コード例 #23
0
ファイル: race.py プロジェクト: jtietema/racer
    def __init__(self, lap_count):
        Layer.__init__(self)

        self.lap_count = lap_count

        self.laps_label = util.Label(text=self.get_laps_text(1),
                                     font_size=25,
                                     background=(0, 0, 0, 125),
                                     anchor_y='bottom')
        self.laps_label.y = director.window.height - self.laps_label.height

        self.add(self.laps_label)
コード例 #24
0
    def __init__(self):
        Layer.__init__(self)

        self.position = Vector2()  ## posicao fixa da layer
        self.anchor = Vector2()

        self.score_label = Label(
            "0",
            position=(880, 350),
            font_name="Ravie",
            align="center",
            anchor_x="center")  # texto onde mostra o score atual
        self.add(self.score_label)

        self.pause_label = Label("( ESC )",
                                 position=(820, 190),
                                 font_name="Ravie",
                                 align="center",
                                 anchor_x="center")
        self.add(self.pause_label)

        self.pause_label = Label("Sair",
                                 position=(885, 190),
                                 font_name="Ravie",
                                 align="center",
                                 anchor_x="center",
                                 color=(214, 178, 152, 255))
        self.add(self.pause_label)

        self.pause_label = Label("( P )",
                                 position=(820, 210),
                                 font_name="Ravie",
                                 align="center",
                                 anchor_x="center")
        self.add(self.pause_label)

        self.pause_label = Label(" Pause",
                                 position=(880, 210),
                                 font_name="Ravie",
                                 align="center",
                                 anchor_x="center",
                                 color=(214, 178, 152, 255))
        self.add(self.pause_label)

        self.time_label = Label(
            "00:00",
            position=(880, 250),
            font_name="Ravie",
            align="center",
            anchor_x="center")  # texto onde mostra o score atual
        self.add(self.time_label)

        self.next_piece = Piece(POS_NX_PIECE)
コード例 #25
0
    def __init__(self, track):
        Scene.__init__(self)
        self.text = 'Loading...'
        self.track = track
        self.layer = Layer()
        self.label = Label(self.text + '0%', position=(100, 100))
        self.layer.add(self.label)
        self.add(self.layer)

        self.schedule(self.load_track)

        self.images_loaded = False
        self.overlay_loaded = False
コード例 #26
0
    def __init__(self, battle):
        """

        :param battle:
        :type battle: battle.DoubleBattleLayer
        """
        Layer.__init__(self)

        self.battle = battle
        self.back_left_health = None
        self.back_right_health = None
        self.front_left_health = None
        self.front_right_health = None

        self.update_health_bars()
コード例 #27
0
 def __init__(self, market):
     Layer.__init__(self)
     self.config = Config()
     self.gallery = Gallery()
     self.transarctica = director.core.query_mover("Transarctica")
     self.wagons_for_trade = {}
     self.wagons_for_dump = {}
     self.message=""
     self.trade_display = True
     self.market=market
     self.generate_wagons_for_trade()
     self.generate_wagons_for_dump()
     self._load_background()
     self._load_interface()
     self.set_visibility(False)
コード例 #28
0
ファイル: dialog.py プロジェクト: LLNT/3X-Project
 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)
コード例 #29
0
ファイル: main_game.py プロジェクト: robsonfj/python-tetris
    def start(self):
        #variaveis a serem resetadas com u jogo novo
        self.is_game_over = False
        self.is_colliding_left = False
        self.is_colliding_right = False
        self.is_colliding_base = False
        self.currentScore = 0        
        self.game_time = 0

        self.c_manager =  game_controller.game_controller.c_manager# obtem instancia do gerenciador de colisao

        self.keybd_input = Keyboard_Input()# iniciaiza o layer de input do teclado
        self.wall_limits = Wall_Limits()# iniciaiza o layer para as delimitacoes do jogo
        self.pieces_wall = Pieces_Wall()# iniciaiza o layer de bloco de pecas
        self.game_info_layer = Game_Info()# iniciaiza o layer de informacoes do jogo (informacoes no canto direito)
        self.game_over_lyr = Ranking(is_game_over=True)# iniciaiza o layer de game over para mostrar ranking
        self.pause_lyr = Pause()# iniciaiza o layer de pause do game
        # iniciaiza o layer multiplo para alternar entre layer do input,mostrar o game over e pause
        self.multi_layer = MultiplexLayer(Layer(), self.game_over_lyr, self.pause_lyr)

        self.add(self.wall_limits)# adiciona layer
        self.add(self.game_info_layer)# adiciona layer
        self.add(self.pieces_wall)# adiciona a a layer
        self.add(self.keybd_input)# adiciona layer
        self.add(self.multi_layer)# adiciona layer

        self.add_next_piece()# inicializa a primeira peca

        self.start_timer()
コード例 #30
0
 def __init__(self,
              side="left",
              background_color=(0, 0, 0, 0),
              expand="fit"):
     """initializer"""
     Layer.__init__(self)
     self._borders = {"left": 0, "right": 0, "top": 0, "bottom": 0}
     self._margins = {"left": 0, "right": 0, "top": 0, "bottom": 0}
     self._padding = {"left": 0, "right": 0, "top": 0, "bottom": 0}
     self._check_arguments(expand, side)
     self.side = side
     self.expand = expand
     self.background_color = background_color
     self.width = 0
     self.height = 0
     self.add(ColorLayer(*background_color, width=0, height=0),
              name="background")
コード例 #31
0
 def test_add(self):
     positions = {
         "left": (320, 249.0),
         "right": (101, 249.0),
         "top": (254.0, 204),
         "bottom": (254.0, 240)
     }
     for side in positions:
         frame = Frame(background_color=(0, 0, 98, 255), side=side)
         frame.position = 320, 240
         layer = Layer()
         scene = Scene()
         layer.add(frame)
         scene.add(layer)
         label = Label("Hello World")
         label_new = Label("Hello World again")
         frame.add(label)
         frame.add(label_new)
コード例 #32
0
ファイル: path_draw.py プロジェクト: Jasonscor/cocos
    def __init__(self, module, filepath):
        Layer.__init__(self)
        self.module = module
        self.filepath = filepath
        self.paths = []
        self.pathp = 0
        self.near = None
        for name in dir(module):
            what = getattr(module, name)
            if isinstance(what, Bezier):
                p = PathView(name, what)
                self.paths.append(p)
        if len(self.paths) == 0:
            self.new_path()
        self.state = self.SHOW
        self.stop = False
        self.mouse = Point(0, 0)

        self.font = font.load("Arial", 18)
        self.duration = 3
        self.time_warp = 1
        self.number = ""
コード例 #33
0
class CocosScene(Layer):
    def __init__(self):
        super(CocosScene, self).__init__()
        self._bgLayer = None
        self._stageBgLayer = None
        self._contentLayer = None
        self._rulerLayer = None
        self._borderLayer = None
        self._rootNode = None
        self._borderDevice = None
        self._stageBorderType = 0
        
        self.setupEditorNodes()
    
    def setupEditorNodes(self):
        # TODO:@twenty0ne
        self._rulerLayer = RulersLayer()
        self.add(self._rulerLayer, z=6)
        
        # Border layer
        self._borderLayer = Layer()
        self.add(self._borderLayer, z=1)
        
        self._borderDevice = cocos.sprite.Sprite("images/missing-texture.png")
        self._borderLayer.add(self._borderDevice, z=1)
        
        # Gray background
        self._bgLayer = ColorLayer(128,128,128,255,width=4096,height=4096)
        self._bgLayer.position = 0,0
        self._bgLayer.anchor = 0,0
        self.add(self._bgLayer, z=-1)
        
        # Black content layer
        self._stageBgLayer = ColorLayer(0,0,0,255,width=0,height=0)
        self._stageBgLayer.anchor = 0.5,0.5
        # TODO:@twenty0ne
        # stageBgLayer.ignoreAnchorPointForPosition = NO
        self.add(self._stageBgLayer, z=0)
        
        self._contentLayer = Layer()
        self.add(self._contentLayer)
        
    def nextFrame(self):
        # Setup border layer
        bounds = 
        
        # Update rulers
        self._rulerLayer.updateWithSize([700,650],[0,0],1)
        
    def mouseEntered(self):
        # print "mouseEntered"
        self._rulerLayer.mouseEntered()
    
    def mouseExited(self):
        # print "mouseExited"
        self._rulerLayer.mouseExited()
        
    def mouseMoved(self, pos):
        # print "mouseMoved"
        self._rulerLayer.updateMousePos(pos)
        
    def replaceRootNodeWith(self, node):
        if self._rootNode:
            self._contentLayer.remove(self._rootNode)
        self._rootNode = node
        
        if not node:
            return        
        self._contentLayer.add(node)
        
    def setStageBorder(self, ntype):
        self._borderDevice.visible = False
        
        if self._stageBgLayer.width == 0 or self._stageBgLayer.height == 0:
            ntype = kCCBBorderNone
            self._stageBgLayer.visible = False
        else:
            self._stageBgLayer.visible = True
            
        if ntype == kCCBBorderDevice:
            deviceTexture = None
            rotateDevice = True
            
            if rotateDevice:
                self._borderDevice.rotation = 90
            else:
                self._borderDevice.rotation = 0
            deviceTexture = pyglet.resource.image("images/frame-iphone.png")
            self._borderDevice.image = deviceTexture
            self._borderDevice.visible = True
            
        self._stageBorderType = ntype
コード例 #34
0
ファイル: scene.py プロジェクト: hugoruscitti/examplelab
 def __init__(self):
     Layer.__init__(self)
     self.image = pyglet.resource.image('background.png')
コード例 #35
0
ファイル: battlescene.py プロジェクト: isS/sy-game
 def __init__(self):
     Layer.__init__(self)
     image = pyglet.resource.image(resconfig.battle_ground_1)
     self.backgound = Sprite(image, position=(image.width/2, image.height/2))