Esempio n. 1
0
    def __init__(self, tiled_level, fonts, collision_grid, camera):
        self.palette_sprite_group = pygame.sprite.Group()
        self.collision_grid = collision_grid
        self.fonts = fonts
        self.editing_layer = 0
        self.tiled_level = tiled_level
        self.hud_rect = pygame.Rect((0, 500), (800, 100))

        self.left_mouse_held = False
        self.right_mouse_held = False
        self.right_mouse_clicked = False

        self.need_to_refresh_tiles = True

        self.default_tile = None
        # [pygame.Rect(0, 0, 0, 0), self.tiled_level.tile_map[0][0], "rock_centre", True, None]
        self.held_tile_data = self.default_tile
        self.rect_of_tile = None

        self.held_ai_spawn = None

        self.hovered_rec = None

        self.rotate_selected_tile_left = False
        self.rotate_selected_tile_right = False

        self.all_palette_tile_sprites = pygame.sprite.Group()
        self.all_ai_spawn_sprites = pygame.sprite.Group()

        self.palette_page = 0
        self.should_increase_palette_page = False
        self.should_decrease_palette_page = False

        self.palette_tiles = []
        self.palette_ai_spawns = []
        self.num_ai_spawns = 1
        self.tiles_per_page = 11
        all_tiles_and_ai = len(
            self.tiled_level.all_tile_data.keys()) + self.num_ai_spawns
        self.max_pages = int(math.ceil(all_tiles_and_ai / self.tiles_per_page))

        self.refresh_palette_tiles()

        self.left_scroll_held = False
        self.right_scroll_held = False
        self.up_scroll_held = False
        self.down_scroll_held = False

        self.map_scroll_speed = 256.0

        self.camera = camera  # self.tiled_level.find_player_start()

        instructions_message_rect = pygame.Rect((0, 0), (300, 180))
        instructions_message_rect.centerx = camera.screen_rect.centerx
        instructions_message_rect.centery = camera.screen_rect.centery
        self.map_editor_instructions = MapEditorInstructionsWindow(
            instructions_message_rect, self.fonts)
Esempio n. 2
0
    def __init__(self, tiled_level, hud_rect, fonts, collision_grid):
        self.collision_grid = collision_grid
        self.fonts = fonts
        self.editing_layer = 0
        self.tiled_level = tiled_level
        self.hud_rect = hud_rect

        self.left_mouse_held = False
        self.right_mouse_held = False

        self.need_to_refresh_tiles = True

        self.default_tile = [
            pygame.Rect(0, 0, 0, 0), self.tiled_level.tile_map[0][0],
            "grass_tile", True, None
        ]
        self.held_tile_data = self.default_tile
        self.rect_of_tile = None

        self.held_ai_spawn = None

        self.hovered_rec = None

        self.rotate_selected_tile_left = False
        self.rotate_selected_tile_right = False

        self.all_palette_tile_sprites = pygame.sprite.Group()
        self.all_ai_spawn_sprites = pygame.sprite.Group()

        self.palette_page = 0
        self.should_increase_palette_page = False
        self.should_decrease_palette_page = False

        self.palette_tiles = []
        self.palette_ai_spawns = []
        self.num_ai_spawns = 0
        self.tiles_per_page = 26
        all_tiles_and_ai = len(
            self.tiled_level.all_tile_data.keys()) + self.num_ai_spawns
        self.max_pages = int(math.ceil(all_tiles_and_ai / self.tiles_per_page))

        self.refresh_palette_tiles()

        self.left_scroll_held = False
        self.right_scroll_held = False
        self.up_scroll_held = False
        self.down_scroll_held = False

        self.map_scroll_speed = 256.0

        self.map_position = self.tiled_level.find_player_start()

        self.map_editor_instructions = MapEditorInstructionsWindow(
            [362, 100, 300, 250], fonts)
Esempio n. 3
0
    def __init__(self, tiled_level, hud_rect, fonts):
        self.tiledLevel = tiled_level
        self.hudRect = hud_rect
        
        self.leftMouseHeld = False
        self.rightMouseHeld = False

        self.needToRefreshTiles = True

        self.defaultTile = [pygame.Rect(0, 0, 0, 0), self.tiledLevel.tile_map[0][0], "grass_tile", True, None]
        self.heldTileData = self.defaultTile

        self.heldAISpawn = None

        self.hoveredRec = None

        self.rotateSelectedTileLeft = False
        self.rotateSelectedTileRight = False

        self.palette_tiles = []
        x_pos = 40
        y_pos = 40
        for tileData in sorted(self.tiledLevel.allTileData.keys()):
            self.palette_tiles.append(Tile([self.hudRect[0] + x_pos, self.hudRect[1] + y_pos],
                                           0, self.tiledLevel.allTileData[tileData]))
            x_pos += 72

            if x_pos > 904:
                x_pos = 40
                y_pos += 72

        self.palette_ai_spawns = []
        self.all_palette_tile_sprites = pygame.sprite.Group()

        self.allAISpawnSprites = pygame.sprite.Group()
        
        for tile in self.palette_tiles:
            self.all_palette_tile_sprites.add(tile.sprite)

        for aiSpawn in self.palette_ai_spawns:
            self.all_palette_tile_sprites.add(aiSpawn.sprite)

        self.leftScrollHeld = False
        self.rightScrollHeld = False
        self.upScrollHeld = False
        self.downScrollHeld = False

        self.mapPosition = self.tiledLevel.find_player_start()

        self.mapEditorInstructions = MapEditorInstructionsWindow([362, 100, 300, 250], fonts)

        self.rect_of_tile = None