Source code for quest.examples.island

from quest.game import QuestGame
from quest.map import TiledMap
from quest.sprite import Background, Wall
from quest.helpers import resolve_resource_path
import arcade
import os
from pathlib import Path

[docs]class IslandAdventure(QuestGame): """A very simple subclass of :py:class:`QuestGame`. To run this example:: $ python -m quest.examples.island :py:class:`IslandAdventure` shows off the basic features of the Quest framework, loading a map and letting the player explore it. After you play it, check out the sorce code by clicking on "source" in the blue bar just above. """ player_sprite_image = resolve_resource_path("images/boy_simple.png") screen_width = 500 screen_height = 500 left_viewport_margin = 96 right_viewport_margin = 96 bottom_viewport_margin = 96 top_viewport_margin = 96 player_initial_x = 300 player_initial_y = 300 player_speed = 6
[docs] def setup_maps(self): """Sets up the map. Uses a :py:class:`TiledMap` to load the map from a ``.json`` file, created using :doc:`Tiled <tiled:manual/introduction>`. """ super().setup_maps() sprite_classes = { "Obstacles": Wall, "Background": Background, } island_map = TiledMap(resolve_resource_path("images/island/island.json"), sprite_classes) self.add_map(island_map)
[docs] def setup_walls(self): """Assigns sprites to `self.wall_list`. These sprites will function as walls, blocking the player from passing through them. """ self.wall_list = self.get_current_map().get_layer_by_name("Obstacles").sprite_list
if __name__ == '__main__': game = IslandAdventure() game.run()