From 85e4bbec07fdf00f1ee0eaaee0ab42e303b10e3f Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 18:01:40 -0400 Subject: [PATCH 01/11] =?UTF-8?q?fix(grid):=20revive=20Grid=20input=20?= =?UTF-8?q?=E2=80=94=20move=20cell=20callbacks=20and=20hit-testing=20to=20?= =?UTF-8?q?GridView;=20N-view=20registry?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since the #252 Grid/GridView split, mcrfpy.Grid(...) constructs a UIGridView (PyObjectsEnum::UIGRIDVIEW), but every input dispatch site gated on derived_type() == UIGRID — the internal mcrfpy._GridData type that no scene-graph node is ever an instance of. All grid input was dead: cell click/enter/exit callbacks never fired, clicks on a grid's child drawables and entities never dispatched, and hover inside grids did nothing. The cell-callback family was split three ways, which is the actual bug: storage on GridData, firing on UIGrid (it needed UIDrawable::serial_number), and the camera required to resolve a screen pixel into a cell on UIGridView. So merely re-pointing the enum gate at UIGRIDVIEW would still report wrong cells for any panned or zoomed grid, and UIGrid::fireCellClick's subclass lookup resolved the serial of the throwaway _GridData wrapper that init_with_data DECREFs — meaning a Python subclass overriding on_cell_click as a method could never dispatch. Input ownership now lives entirely on UIGridView: - on_cell_click/enter/exit, hovered_cell, last_clicked_cell and the subclass dispatch cache move off GridData/UIGrid (hovered_cell must be per-view: two views over one GridData would otherwise ping-pong exit/enter). - UIGridView::click_at descends children (reverse z) -> entities -> cell. Children keep grid-world pixel coordinates: that is by design (#360), not an inconsistency with Frame's frame-local children. - The six derived_type()==UIGRID gates are replaced by virtuals on UIDrawable (dispatchCellClick, updateHover, asGridData) so no caller switches on grid-ness again. - Fixes a prerequisite bug: UIGridView never overrode onPositionChanged(), so box and position diverged and a repositioned Grid rendered at the stale spot while hit-testing against the new one. Any cell hit-test was meaningless until these agreed. - grid.perspective was silently dead (the FOV overlay gated on a UIGridView::perspective_enabled that nothing ever set); perspective state moves to the view with the rest. #359 is fused into this commit rather than sequenced after it: the shared-data back-reference is rewritten by the same hunks that move the callbacks off GridData, and separating them would mean authoring an intermediate GridData.h / UIGridView.cpp that never existed. GridData::owning_view (a single weak_ptr, for a relationship that is N views to one GridData) becomes a vector registry with register/unregister. The registry is kept rather than deleted: the markCompositeDirty push is NOT redundant with #351's content_generation poll, because it propagates bottom-up through each view's ancestor chain (e.g. a Frame(use_render_texture=True) wrapping a view), which a top-down render-time poll cannot do. Grid subclass method dispatch, panned/zoomed cell resolution, grid-child clicks, and cell hover are all covered by new regression tests. tests/unit/ test_grid_cell_events.py previously printed "PARTIAL (events may require interactive mode)" and exited 0 having fired zero events — that dishonest pass is why this shipped broken; it now asserts. Suite: 322/322. closes #355 closes #359 Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- src/GridData.cpp | 37 +- src/GridData.h | 63 +- src/PyScene.cpp | 90 +-- src/UIBase.h | 1 - src/UIDrawable.h | 23 +- src/UIEntity.cpp | 10 +- src/UIGrid.cpp | 531 +--------------- src/UIGrid.h | 61 +- src/UIGridPyMethods.cpp | 2 +- src/UIGridPyProperties.cpp | 182 +----- src/UIGridView.cpp | 591 ++++++++++++++++-- src/UIGridView.h | 94 ++- .../issue_355_camera_rotation_hit_test.py | 190 ++++++ .../issue_355_grid_cell_dispatch_test.py | 300 +++++++++ tests/regression/issue_355_grid_input_test.py | 223 +++++++ .../issue_355_gridview_position_sync_test.py | 59 ++ .../issue_355_perspective_overlay_test.py | 103 +++ .../issue_359_shared_griddata_test.py | 191 ++++++ tests/snapshots/api_surface.golden.txt | 21 +- tests/unit/test_grid_cell_events.py | 65 +- 21 files changed, 1941 insertions(+), 898 deletions(-) create mode 100644 tests/regression/issue_355_camera_rotation_hit_test.py create mode 100644 tests/regression/issue_355_grid_cell_dispatch_test.py create mode 100644 tests/regression/issue_355_grid_input_test.py create mode 100644 tests/regression/issue_355_gridview_position_sync_test.py create mode 100644 tests/regression/issue_355_perspective_overlay_test.py create mode 100644 tests/regression/issue_359_shared_griddata_test.py diff --git a/api/manifest.json b/api/manifest.json index f29e299..f0c08ad 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"b6720f6","dirty":false,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"0039bc0488cad1dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":true,"version":"0.2.8-dev"} +{"commit":"4c0953c","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/GridData.cpp b/src/GridData.cpp index 4f91215..48077b2 100644 --- a/src/GridData.cpp +++ b/src/GridData.cpp @@ -3,7 +3,7 @@ #include "UIEntity.h" #include "PyTexture.h" #include "UIGrid.h" // #313 - markDirty forwards to the UIGrid subobject -#include "UIGridView.h" // #313 - and notifies owning_view +#include "UIGridView.h" // #313/#359 - and notifies registered views #include // #313 - Render invalidation from the data layer (see GridData.h). @@ -12,19 +12,46 @@ void GridData::markDirty() { content_generation++; // #351 - content changed; invalidate view early-out static_cast(this)->UIDrawable::markDirty(); - if (auto view = owning_view.lock()) { - view->markDirty(); + for (auto& weak_view : views) { + if (auto view = weak_view.lock()) view->markDirty(); } } void GridData::markCompositeDirty() { content_generation++; // #351 - content changed; invalidate view early-out static_cast(this)->UIDrawable::markCompositeDirty(); - if (auto view = owning_view.lock()) { - view->markCompositeDirty(); + for (auto& weak_view : views) { + if (auto view = weak_view.lock()) view->markCompositeDirty(); } } +// #359 - View registry (see GridData.h). Kept small (typically 1-2 entries: +// split-screen / minimap use cases), so linear scan is fine. +void GridData::registerView(const std::shared_ptr& view) { + if (!view) return; + for (auto& weak_view : views) { + if (weak_view.lock() == view) return; // already registered + } + views.push_back(view); +} + +void GridData::unregisterView(UIGridView* view) { + views.erase( + std::remove_if(views.begin(), views.end(), + [view](const std::weak_ptr& weak_view) { + auto locked = weak_view.lock(); + return !locked || locked.get() == view; // prune expired too + }), + views.end()); +} + +std::shared_ptr GridData::primaryView() const { + for (auto& weak_view : views) { + if (auto view = weak_view.lock()) return view; + } + return nullptr; +} + GridData::GridData() { entities = std::make_shared>>(); // #329 diff --git a/src/GridData.h b/src/GridData.h index c56fd68..dc8ffc9 100644 --- a/src/GridData.h +++ b/src/GridData.h @@ -119,26 +119,10 @@ public: std::shared_ptr getLayerByName(const std::string& name); static bool isProtectedLayerName(const std::string& name); - // ========================================================================= - // Cell callbacks (#142, #230) - // ========================================================================= - std::unique_ptr on_cell_enter_callable; - std::unique_ptr on_cell_exit_callable; - std::unique_ptr on_cell_click_callable; - std::optional hovered_cell; - std::optional last_clicked_cell; - - struct CellCallbackCache { - uint32_t generation = 0; - bool valid = false; - bool has_on_cell_click = false; - bool has_on_cell_enter = false; - bool has_on_cell_exit = false; - }; - CellCallbackCache cell_callback_cache; - - // fireCellClick/Enter/Exit and refreshCellCallbackCache are on UIGrid - // because they need access to UIDrawable::serial_number/is_python_subclass + // #355 - Cell input (callbacks, hovered/last-clicked cell, subclass-dispatch + // cache) moved to UIGridView: input is a property of the VIEW (camera), not of + // the data. Two views over one GridData must track hover independently, and + // the subclassable Python type (mcrfpy.Grid) IS UIGridView. // ========================================================================= // UIDrawable children (speech bubbles, effects, overlays) @@ -147,9 +131,27 @@ public: bool children_need_sort = true; // ========================================================================= - // #252 - Owning GridView back-reference (for Entity.grid → GridView lookup) + // #252/#359 - GridView back-references. Multiple GridViews can share one + // GridData (split-screen, minimap, multiple cameras); a single weak_ptr + // cannot represent that, so this is a vector. A fresh GridData is only + // ever produced by UIGridView::init_with_data (the Grid() factory path -- + // UIGridView::init_explicit_view / set_grid can only ATTACH to an + // EXISTING GridData, never create one), so views.front() is always the + // view that created this data: that ordering guarantee is what lets + // primaryView() give UIEntity::get_grid a deterministic (not arbitrary) + // answer for API identity, even once secondary views are registered. // ========================================================================= - std::weak_ptr owning_view; + std::vector> views; + + // Append view (idempotent -- a view already present is not duplicated). + void registerView(const std::shared_ptr& view); + // Remove view by identity (prunes expired entries too). Safe to call even + // if view was never registered. + void unregisterView(UIGridView* view); + // The view that created this GridData (views.front()), or the first + // still-alive view if the creator has since been destroyed while + // secondary views live on. nullptr if no view is alive. + std::shared_ptr primaryView() const; // #351 - Monotonic counter bumped whenever grid content drawn into a view's // RenderTexture changes (entities added/removed/moved, sprite changes, layer @@ -158,14 +160,21 @@ public: // live on the view and are compared there directly, not counted here. uint64_t content_generation = 0; - // #313 - Render invalidation from the data layer. Entities hold + // #313/#359 - Render invalidation from the data layer. Entities hold // shared_ptr but still need to invalidate rendering when their // visual state changes. These set the dirty flags on the UIGrid subobject // (GridData is never independently heap-allocated -- always a UIGrid base) - // AND notify owning_view, covering both render paths (a bare _GridData - // rendered directly, and the normal GridView). Within UIGrid itself the - // UIDrawable versions win via using-declarations (see UIGrid.h). - // Multi-view broadcast (secondary views) is deferred to #252. + // AND notify every registered view (see `views` above), covering both + // render paths (a bare _GridData rendered directly, and every GridView + // sharing this data) and every view's own ancestor chain (e.g. a + // Frame(use_render_texture=True) wrapping ANY of the N views needs its + // own cache invalidated, not just the creator's). Note the #351 render + // early-out itself does NOT depend on this notification -- it polls + // content_generation directly in UIGridView::render() -- this push is only + // for propagating markContentDirty/markCompositeDirty up a view's parent + // chain, which is a bottom-up push, not something pollable from a + // top-down render traversal. Within UIGrid itself the UIDrawable versions + // win via using-declarations (see UIGrid.h). void markDirty(); void markCompositeDirty(); diff --git a/src/PyScene.cpp b/src/PyScene.cpp index 8771bb2..48d60ed 100644 --- a/src/PyScene.cpp +++ b/src/PyScene.cpp @@ -257,41 +257,19 @@ void PyScene::do_mouse_input(std::string button, std::string type) // #184: Try property-assigned callable first (fast path) if (target->click_callable && !target->click_callable->isNone()) { target->click_callable->call(mousepos, button, type); - - // Also fire grid cell click if applicable - if (target->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = static_cast(target); - if (grid->last_clicked_cell.has_value()) { - grid->fireCellClick(grid->last_clicked_cell.value(), button, type); - grid->last_clicked_cell = std::nullopt; - } - } + target->dispatchCellClick(button, type); // #355 (no-op unless grid view) return; // Stop after first handler } // #184: Try Python subclass method if (tryCallPythonMethod(target, "on_click", mousepos, button.c_str(), type.c_str())) { - // Also fire grid cell click if applicable - if (target->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = static_cast(target); - if (grid->last_clicked_cell.has_value()) { - grid->fireCellClick(grid->last_clicked_cell.value(), button, type); - grid->last_clicked_cell = std::nullopt; - } - } + target->dispatchCellClick(button, type); // #355 return; // Stop after first handler } - // Fire grid cell click even if no on_click handler (but has cell click handler) - if (target->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = static_cast(target); - if (grid->last_clicked_cell.has_value()) { - bool handled = grid->fireCellClick(grid->last_clicked_cell.value(), button, type); - grid->last_clicked_cell = std::nullopt; - if (handled) { - return; // Stop after handling cell click - } - } + // #355: cell click fires even without a whole-grid on_click handler + if (target->dispatchCellClick(button, type)) { + return; // Stop after handling cell click } // Element claimed the click but had no handler - still stop propagation @@ -326,11 +304,28 @@ void PyScene::do_mouse_hover(int x, int y) mousepos = game->windowToGameCoords(sf::Vector2f(static_cast(x), static_cast(y))); } - // Helper function to process hover for a single drawable and its children - std::function processHover = [&](UIDrawable* drawable) { + // Helper function to process hover for a single drawable and its children. + // + // `point` is in the drawable's PARENT-local coordinate space -- the same + // convention click_at() uses. At the top level that is the global/scene space + // (identical to the old contains_point() behavior, since global position is + // just the sum of ancestor positions). Descending into a Frame subtracts the + // frame's position; descending into a Grid applies the view's camera + // (localToGridWorld), which is what makes grid children hoverable at all (#355). + // + // `hit_allowed` is false while walking the children of a grid the mouse is NOT + // over: the camera transform is affine, so an outside point still maps to some + // grid-world coordinate, which could land on an off-screen child. Those subtrees + // must only ever fire exits, never enters. + std::function processHover = + [&](UIDrawable* drawable, sf::Vector2f point, bool hit_allowed) { if (!drawable || !drawable->visible) return; - bool is_inside = drawable->contains_point(mousepos.x, mousepos.y); + // Same rect get_global_bounds() builds (position + bounds SIZE), just + // expressed in parent-local space instead of accumulated global space. + sf::FloatRect b = drawable->get_bounds(); + bool is_inside = hit_allowed && + sf::FloatRect(drawable->position.x, drawable->position.y, b.width, b.height).contains(point); bool was_hovered = drawable->hovered; if (is_inside && !was_hovered) { @@ -367,26 +362,33 @@ void PyScene::do_mouse_hover(int x, int y) } } - // Process children for Frame elements + // #355 - cell enter/exit (no-op for non-grid drawables) + drawable->updateHover(point, hit_allowed); + + // Process children for Frame elements (children are positioned relative + // to the frame's own position). if (drawable->derived_type() == PyObjectsEnum::UIFRAME) { auto frame = static_cast(drawable); if (frame->children) { + sf::Vector2f child_point = point - frame->position; for (auto& child : *frame->children) { - processHover(child.get()); + processHover(child.get(), child_point, hit_allowed); } } } - // Process children for Grid elements - else if (drawable->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = static_cast(drawable); - - // #142 - Update cell hover tracking for grid - // Pass "none" for button and "move" for action during hover - grid->updateCellHover(mousepos, "none", "move"); - - if (grid->children) { - for (auto& child : *grid->children) { - processHover(child.get()); + // #355 - Grid overlay children live in GRID-WORLD PIXEL coordinates, so the + // mouse point must go through the view's camera exactly as UIGridView::click_at + // does. Children are always visited (even when the mouse is outside the view) + // so a child that was hovered still receives its on_exit. + else if (drawable->derived_type() == PyObjectsEnum::UIGRIDVIEW) { + auto view = static_cast(drawable); + if (view->grid_data && view->grid_data->children) { + sf::Vector2f local = point - view->box.getPosition(); + sf::Vector2f grid_world = view->localToGridWorld(local); + bool inside_view = hit_allowed && + sf::FloatRect(sf::Vector2f(0.f, 0.f), view->box.getSize()).contains(local); + for (auto& child : *view->grid_data->children) { + processHover(child.get(), grid_world, inside_view); } } } @@ -394,7 +396,7 @@ void PyScene::do_mouse_hover(int x, int y) // Process all top-level UI elements for (auto& element : *ui_elements) { - processHover(element.get()); + processHover(element.get(), mousepos, true); } } diff --git a/src/UIBase.h b/src/UIBase.h index 3742883..a9377de 100644 --- a/src/UIBase.h +++ b/src/UIBase.h @@ -31,7 +31,6 @@ class UIGridView; typedef struct { PyObject_HEAD std::shared_ptr data; - std::shared_ptr view; // #252: auto-created rendering view (shim) PyObject* weakreflist; // Weak reference support } PyUIGridObject; diff --git a/src/UIDrawable.h b/src/UIDrawable.h index 64a8ef4..96bfd09 100644 --- a/src/UIDrawable.h +++ b/src/UIDrawable.h @@ -22,7 +22,7 @@ class UniformCollection; // PyShaderObject is a typedef, forward declare as a struct with explicit typedef typedef struct PyShaderObjectStruct PyShaderObject; -class UIFrame; class UICaption; class UISprite; class UIEntity; class UIGrid; +class UIFrame; class UICaption; class UISprite; class UIEntity; class UIGrid; class GridData; enum PyObjectsEnum : int { @@ -55,6 +55,27 @@ public: void click_register(PyObject*); void click_unregister(); + // #355 - Grid cell input. Defaults are inert: no caller may switch on grid-ness. + // + // dispatchCellClick: called by PyScene after click_at() resolved this drawable as + // the click target. Takes no point: click_at() already resolved the cell in the + // coordinate space of the hit (parent-local), which PyScene does not have. + // Returns true if a cell callback consumed the click. + virtual bool dispatchCellClick(const std::string& button, const std::string& action) + { (void)button; (void)action; return false; } + + // updateHover: called by PyScene::do_mouse_hover for every drawable, with the + // mouse position in this drawable's PARENT-local coordinate space (the same + // convention click_at() uses; at the top level that is global space). + // hit_allowed is false when an ancestor already determined the mouse cannot be + // over this subtree -- such a call may only clear hover state, never set it. + virtual void updateHover(sf::Vector2f point, bool hit_allowed) + { (void)point; (void)hit_allowed; } + + // asGridData: non-null only for drawables that own or view grid data. + // (#357 find/findAll and #358 ImGuiSceneExplorer will use this same primitive.) + virtual GridData* asGridData() { return nullptr; } + // #140 - Mouse enter/exit callbacks void on_enter_register(PyObject*); void on_enter_unregister(); diff --git a/src/UIEntity.cpp b/src/UIEntity.cpp index 7833ae3..1a7f15f 100644 --- a/src/UIEntity.cpp +++ b/src/UIEntity.cpp @@ -821,10 +821,14 @@ PyObject* UIEntity::get_grid(PyUIEntityObject* self, void* closure) auto& grid = self->data->grid; - // #252: If the grid has an owning GridView, return that instead. + // #252/#359: If the grid has a registered GridView, return that instead. // This preserves the unified Grid API where entity.grid returns the same - // object the user created via mcrfpy.Grid(...). - auto owning_view = grid->owning_view.lock(); + // object the user created via mcrfpy.Grid(...). primaryView() is + // deterministic even with multiple views sharing this GridData: it's + // views.front(), the view that actually created the data (a fresh + // GridData is only ever produced by the Grid() factory path), or the + // first still-alive secondary view if that original view has since died. + auto owning_view = grid->primaryView(); if (owning_view) { // Check cache for the GridView if (owning_view->serial_number != 0) { diff --git a/src/UIGrid.cpp b/src/UIGrid.cpp index e6233d0..0f1dd5a 100644 --- a/src/UIGrid.cpp +++ b/src/UIGrid.cpp @@ -25,8 +25,7 @@ UIGrid::UIGrid() : GridData(), // Initialize data layer (entities, children, FOV defaults) zoom(1.0f), center_x(0.0f), center_y(0.0f), ptex(nullptr), - fill_color(8, 8, 8, 255), - perspective_enabled(false) + fill_color(8, 8, 8, 255) { // Initialize box with safe defaults box.setSize(sf::Vector2f(0, 0)); @@ -51,8 +50,7 @@ UIGrid::UIGrid(int gx, int gy, std::shared_ptr _ptex, sf::Vector2f _x : GridData(), // Initialize data layer zoom(1.0f), ptex(_ptex), - fill_color(8, 8, 8, 255), - perspective_enabled(false) + fill_color(8, 8, 8, 255) { // Use texture dimensions if available, otherwise use defaults int cell_width = _ptex ? _ptex->sprite_width : DEFAULT_CELL_WIDTH; @@ -286,76 +284,8 @@ void UIGrid::render(sf::Vector2f offset, sf::RenderTarget& target) } } - // top layer - opacity for discovered / visible status based on perspective - // Only render visibility overlay if perspective is enabled - if (perspective_enabled) { - ScopedTimer fovTimer(Resources::game->metrics.fovOverlayTime); - auto entity = perspective_entity.lock(); - - // Create rectangle for overlays - sf::RectangleShape overlay; - overlay.setSize(sf::Vector2f(cell_width * zoom, cell_height * zoom)); - - if (entity && entity->perspective_map) { - // #294: perspective_map values -- 0=unknown, 1=discovered, 2=visible. - const uint8_t* pm = entity->perspective_map->data(); - const int pm_w = entity->perspective_map->width(); - const int pm_h = entity->perspective_map->height(); - for (int x = (left_edge - 1 >= 0 ? left_edge - 1 : 0); - x < x_limit; - x+=1) - { - for (int y = (top_edge - 1 >= 0 ? top_edge - 1 : 0); - y < y_limit; - y+=1) - { - // Skip out-of-bounds cells - if (x < 0 || x >= grid_w || y < 0 || y >= grid_h) continue; - if (x >= pm_w || y >= pm_h) continue; - - auto pixel_pos = sf::Vector2f( - (x*cell_width - left_spritepixels) * zoom, - (y*cell_height - top_spritepixels) * zoom ); - - uint8_t state = pm[y * pm_w + x]; - overlay.setPosition(pixel_pos); - - if (state == 0) { - overlay.setFillColor(sf::Color(0, 0, 0, 255)); - activeTexture->draw(overlay); - } else if (state == 1) { - overlay.setFillColor(sf::Color(32, 32, 40, 192)); - activeTexture->draw(overlay); - } - // state == 2: visible -- no overlay - } - } - } else { - // Invalid/destroyed entity with perspective_enabled = true - // Show all cells as undiscovered (black) - for (int x = (left_edge - 1 >= 0 ? left_edge - 1 : 0); - x < x_limit; - x+=1) - { - for (int y = (top_edge - 1 >= 0 ? top_edge - 1 : 0); - y < y_limit; - y+=1) - { - // Skip out-of-bounds cells - if (x < 0 || x >= grid_w || y < 0 || y >= grid_h) continue; - - auto pixel_pos = sf::Vector2f( - (x*cell_width - left_spritepixels) * zoom, - (y*cell_height - top_spritepixels) * zoom ); - - overlay.setPosition(pixel_pos); - overlay.setFillColor(sf::Color(0, 0, 0, 255)); - activeTexture->draw(overlay); - } - } - } - } - // else: omniscient view (no overlays) + // #355: the perspective/FOV overlay is drawn by UIGridView::render, which owns + // the perspective state. UIGrid (the internal _GridData) no longer duplicates it. // grid lines for testing & validation /* @@ -522,101 +452,14 @@ std::shared_ptr UIGrid::getTexture() return ptex; } -UIDrawable* UIGrid::click_at(sf::Vector2f point) +UIDrawable* UIGrid::click_at(sf::Vector2f) { - // Check grid bounds first - if (!box.getGlobalBounds().contains(point)) { - return nullptr; - } - - // Transform to local coordinates - sf::Vector2f localPoint = point - box.getPosition(); - - // Get cell dimensions - int cell_width = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; - int cell_height = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; - - // Calculate visible area parameters (from render function) - float center_x_sq = center_x / cell_width; - float center_y_sq = center_y / cell_height; - float width_sq = box.getSize().x / (cell_width * zoom); - float height_sq = box.getSize().y / (cell_height * zoom); - - int left_spritepixels = center_x - (box.getSize().x / 2.0 / zoom); - int top_spritepixels = center_y - (box.getSize().y / 2.0 / zoom); - - // Convert click position to grid-world pixel coordinates - float grid_world_x = localPoint.x / zoom + left_spritepixels; - float grid_world_y = localPoint.y / zoom + top_spritepixels; - - // Convert to grid cell coordinates - float grid_x = grid_world_x / cell_width; - float grid_y = grid_world_y / cell_height; - - // Check children first (they render on top, so they get priority) - // Children are positioned in grid-world pixel coordinates - if (children && !children->empty()) { - // Check in reverse z-order (highest z_index first, rendered last = on top) - for (auto it = children->rbegin(); it != children->rend(); ++it) { - auto& child = *it; - if (!child->visible) continue; - - // Transform click to child's local coordinate space - // Children's position is in grid-world pixels - sf::Vector2f childLocalPoint = sf::Vector2f(grid_world_x, grid_world_y); - - if (auto target = child->click_at(childLocalPoint)) { - return target; - } - } - } - - // Check entities in reverse order (assuming they should be checked top to bottom) - // Note: entities list is not sorted by z-index currently, but we iterate in reverse - // to match the render order assumption - if (entities) { - for (auto it = entities->rbegin(); it != entities->rend(); ++it) { - auto& entity = *it; - if (!entity || !entity->sprite.visible) continue; - - // Check if click is within entity's grid cell - // Entities occupy a 1x1 grid cell centered on their position - float dx = grid_x - entity->position.x; - float dy = grid_y - entity->position.y; - - if (dx >= -0.5f && dx < 0.5f && dy >= -0.5f && dy < 0.5f) { - // Click is within the entity's cell - // Check if entity sprite has a click handler - // For now, we return the entity's sprite as the click target - // Note: UIEntity doesn't derive from UIDrawable, so we check its sprite - if (entity->sprite.click_callable) { - return &entity->sprite; - } - } - } - } - - // No entity handled it, check if grid itself has handler - // #184: Also check for Python subclass (might have on_click or on_cell_click method) - - // Store clicked cell for later callback firing (with button/action from PyScene) - int cell_x = static_cast(std::floor(grid_x)); - int cell_y = static_cast(std::floor(grid_y)); - if (cell_x >= 0 && cell_x < this->grid_w && cell_y >= 0 && cell_y < this->grid_h) { - last_clicked_cell = sf::Vector2i(cell_x, cell_y); - } else { - last_clicked_cell = std::nullopt; - } - - // Return this if we have any handler (property callback, subclass method, or cell callback) - if (click_callable || is_python_subclass || on_cell_click_callable) { - return this; - } - + // #355: a bare _GridData is never an input target -- the scene graph holds + // UIGridView, which owns the camera and all cell/child/entity hit testing. + // #361 removes UIDrawable from GridData entirely, which deletes this override. return nullptr; } - int UIGrid::init(PyUIGridObject* self, PyObject* args, PyObject* kwds) { // Define all parameters with defaults PyObject* pos_obj = nullptr; @@ -782,8 +625,7 @@ int UIGrid::init(PyUIGridObject* self, PyObject* args, PyObject* kwds) { } self->data->center_x = center_x; self->data->center_y = center_y; - // perspective is now handled by perspective_entity and perspective_enabled - // self->data->perspective = perspective; + // #355: perspective lives on UIGridView (the object that renders the overlay). self->data->visible = visible; self->data->opacity = opacity; self->data->z_index = z_index; @@ -984,32 +826,15 @@ int UIGrid::init(PyUIGridObject* self, PyObject* args, PyObject* kwds) { // #184: Check if this is a Python subclass (for callback method support) self->data->is_python_subclass = (PyObject*)Py_TYPE(self) != (PyObject*)&mcrfpydef::PyUIGridType; - // #252 shim: auto-create a GridView for rendering - // The GridView shares GridData (via aliasing shared_ptr) and copies rendering state - { - auto view = std::make_shared(); - // Share grid data (aliasing shared_ptr: shares UIGrid ownership, points to GridData base) - view->grid_data = std::shared_ptr( - self->data, static_cast(self->data.get())); - // Copy rendering state from UIGrid to GridView - view->ptex = texture_ptr; - view->box.setPosition(self->data->box.getPosition()); - view->box.setSize(self->data->box.getSize()); - view->position = self->data->position; - view->center_x = self->data->center_x; - view->center_y = self->data->center_y; - view->zoom = self->data->zoom; - view->fill_color = self->data->fill_color; - view->camera_rotation = self->data->camera_rotation; - view->perspective_entity = self->data->perspective_entity; - view->perspective_enabled = self->data->perspective_enabled; - view->visible = self->data->visible; - view->opacity = self->data->opacity; - view->z_index = self->data->z_index; - view->name = self->data->name; - view->ensureRenderTextureSize(); - self->view = view; - } + // #359: previously constructed an extra "shim" GridView here (self->view) + // that copied rendering state and allocated its own RenderTexture, but was + // NEVER used -- UIGridView::init_with_data (the only caller of UIGrid::init, + // see UIGridView.cpp) discards this PyUIGridObject wrapper immediately after + // stealing its GridData via an aliasing shared_ptr, and builds the REAL, + // user-visible view directly on itself. The shim was dead weight (a wasted + // RenderTexture allocation on every Grid() construction) backing a field + // (PyUIGridObject::view / `_GridData.view`) nothing ever read. Removed along + // with the field itself. return 0; // Success } @@ -1017,45 +842,6 @@ int UIGrid::init(PyUIGridObject* self, PyObject* args, PyObject* kwds) { // Python property getters/setters moved to UIGridPyProperties.cpp // Python method implementations moved to UIGridPyMethods.cpp -// #142 - Convert screen coordinates to cell coordinates -std::optional UIGrid::screenToCell(sf::Vector2f screen_pos) const { - // Get grid's global position - sf::Vector2f global_pos = get_global_position(); - sf::Vector2f local_pos = screen_pos - global_pos; - - // Check if within grid bounds - sf::FloatRect bounds = box.getGlobalBounds(); - if (local_pos.x < 0 || local_pos.y < 0 || - local_pos.x >= bounds.width || local_pos.y >= bounds.height) { - return std::nullopt; - } - - // Get cell size from texture or default - float cell_width = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; - float cell_height = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; - - // Apply zoom - cell_width *= zoom; - cell_height *= zoom; - - // Calculate grid space position (account for center/pan) - float half_width = bounds.width / 2.0f; - float half_height = bounds.height / 2.0f; - float grid_space_x = (local_pos.x - half_width) / zoom + center_x; - float grid_space_y = (local_pos.y - half_height) / zoom + center_y; - - // Convert to cell coordinates - int cell_x = static_cast(std::floor(grid_space_x / (ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH))); - int cell_y = static_cast(std::floor(grid_space_y / (ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT))); - - // Check if within valid cell range - if (cell_x < 0 || cell_x >= grid_w || cell_y < 0 || cell_y >= grid_h) { - return std::nullopt; - } - - return sf::Vector2i(cell_x, cell_y); -} - // #221 - Get effective cell size (texture size * zoom) sf::Vector2f UIGrid::getEffectiveCellSize() const { float cell_w = ptex ? static_cast(ptex->sprite_width) : static_cast(DEFAULT_CELL_WIDTH); @@ -1063,287 +849,6 @@ sf::Vector2f UIGrid::getEffectiveCellSize() const { return sf::Vector2f(cell_w * zoom, cell_h * zoom); } -// Helper function to convert button string to MouseButton enum value -static int buttonStringToEnum(const std::string& button) { - if (button == "left") return 0; // MouseButton.LEFT - if (button == "right") return 1; // MouseButton.RIGHT - if (button == "middle") return 2; // MouseButton.MIDDLE - if (button == "wheel_up") return 3; // MouseButton.WHEEL_UP - if (button == "wheel_down") return 4; // MouseButton.WHEEL_DOWN - return 0; // Default to LEFT -} - -// Helper function to convert action string to InputState enum value -static int actionStringToEnum(const std::string& action) { - if (action == "start" || action == "pressed") return 0; // InputState.PRESSED - if (action == "end" || action == "released") return 1; // InputState.RELEASED - return 0; // Default to PRESSED -} - -// #142 - Refresh cell callback cache for Python subclass method support -void UIGrid::refreshCellCallbackCache(PyObject* pyObj) { - if (!pyObj || !is_python_subclass) { - cell_callback_cache.valid = false; - return; - } - - // Get the class's callback generation counter - PyObject* cls = (PyObject*)Py_TYPE(pyObj); - uint32_t current_gen = 0; - PyObject* gen_obj = PyObject_GetAttrString(cls, "_mcrf_callback_gen"); - if (gen_obj) { - current_gen = static_cast(PyLong_AsUnsignedLong(gen_obj)); - Py_DECREF(gen_obj); - } else { - PyErr_Clear(); - } - - // Check if cache is still valid - if (cell_callback_cache.valid && cell_callback_cache.generation == current_gen) { - return; // Cache is fresh - } - - // Refresh cache - check for each cell callback method - cell_callback_cache.has_on_cell_click = false; - cell_callback_cache.has_on_cell_enter = false; - cell_callback_cache.has_on_cell_exit = false; - - // Check class hierarchy for each method - PyTypeObject* type = Py_TYPE(pyObj); - while (type && type != &mcrfpydef::PyUIGridType && type != &PyBaseObject_Type) { - if (type->tp_dict) { - if (!cell_callback_cache.has_on_cell_click) { - PyObject* method = PyDict_GetItemString(type->tp_dict, "on_cell_click"); - if (method && PyCallable_Check(method)) { - cell_callback_cache.has_on_cell_click = true; - } - } - if (!cell_callback_cache.has_on_cell_enter) { - PyObject* method = PyDict_GetItemString(type->tp_dict, "on_cell_enter"); - if (method && PyCallable_Check(method)) { - cell_callback_cache.has_on_cell_enter = true; - } - } - if (!cell_callback_cache.has_on_cell_exit) { - PyObject* method = PyDict_GetItemString(type->tp_dict, "on_cell_exit"); - if (method && PyCallable_Check(method)) { - cell_callback_cache.has_on_cell_exit = true; - } - } - } - type = type->tp_base; - } - - cell_callback_cache.generation = current_gen; - cell_callback_cache.valid = true; -} - -// Helper to create typed cell callback arguments: (Vector, MouseButton, InputState) -static PyObject* createCellCallbackArgs(sf::Vector2i cell, const std::string& button, const std::string& action) { - // Create Vector object for cell position - PyObject* cell_pos = PyObject_CallFunction((PyObject*)&mcrfpydef::PyVectorType, "ff", (float)cell.x, (float)cell.y); - if (!cell_pos) { - PyErr_Print(); - return nullptr; - } - - // Create MouseButton enum - int button_val = buttonStringToEnum(button); - PyObject* button_enum = PyObject_CallFunction(PyMouseButton::mouse_button_enum_class, "i", button_val); - if (!button_enum) { - Py_DECREF(cell_pos); - PyErr_Print(); - return nullptr; - } - - // Create InputState enum - int action_val = actionStringToEnum(action); - PyObject* action_enum = PyObject_CallFunction(PyInputState::input_state_enum_class, "i", action_val); - if (!action_enum) { - Py_DECREF(cell_pos); - Py_DECREF(button_enum); - PyErr_Print(); - return nullptr; - } - - PyObject* args = Py_BuildValue("(OOO)", cell_pos, button_enum, action_enum); - Py_DECREF(cell_pos); - Py_DECREF(button_enum); - Py_DECREF(action_enum); - return args; -} - -// #230 - Helper to create cell hover callback arguments: (Vector) only -static PyObject* createCellHoverArgs(sf::Vector2i cell) { - // Create Vector object for cell position - PyObject* cell_pos = PyObject_CallFunction((PyObject*)&mcrfpydef::PyVectorType, "ii", cell.x, cell.y); - if (!cell_pos) { - PyErr_Print(); - return nullptr; - } - - PyObject* args = Py_BuildValue("(O)", cell_pos); - Py_DECREF(cell_pos); - return args; -} - -// Fire cell click callback with full signature (cell_pos, button, action) -bool UIGrid::fireCellClick(sf::Vector2i cell, const std::string& button, const std::string& action) { - // Try property-assigned callback first - if (on_cell_click_callable && !on_cell_click_callable->isNone()) { - PyObject* args = createCellCallbackArgs(cell, button, action); - if (args) { - PyObject* result = PyObject_CallObject(on_cell_click_callable->borrow(), args); - Py_DECREF(args); - if (!result) { - std::cerr << "Cell click callback raised an exception:" << std::endl; - PyErr_Print(); - PyErr_Clear(); - } else { - Py_DECREF(result); - } - return true; - } - } - - // Try Python subclass method - if (is_python_subclass) { - PyObject* pyObj = PythonObjectCache::getInstance().lookup(this->serial_number); - if (pyObj) { - refreshCellCallbackCache(pyObj); - if (cell_callback_cache.has_on_cell_click) { - PyObject* method = PyObject_GetAttrString(pyObj, "on_cell_click"); - if (method && PyCallable_Check(method)) { - PyObject* args = createCellCallbackArgs(cell, button, action); - if (args) { - PyObject* result = PyObject_CallObject(method, args); - Py_DECREF(args); - Py_DECREF(method); - Py_DECREF(pyObj); - if (!result) { - std::cerr << "Cell click method raised an exception:" << std::endl; - PyErr_Print(); - PyErr_Clear(); - } else { - Py_DECREF(result); - } - return true; - } - } - Py_XDECREF(method); - } - Py_DECREF(pyObj); - } - } - return false; -} - -// #230 - Fire cell enter callback with position-only signature (cell_pos) -bool UIGrid::fireCellEnter(sf::Vector2i cell) { - // Try property-assigned callback first (now PyCellHoverCallable) - if (on_cell_enter_callable && !on_cell_enter_callable->isNone()) { - on_cell_enter_callable->call(cell); - return true; - } - - // Try Python subclass method - if (is_python_subclass) { - PyObject* pyObj = PythonObjectCache::getInstance().lookup(this->serial_number); - if (pyObj) { - refreshCellCallbackCache(pyObj); - if (cell_callback_cache.has_on_cell_enter) { - PyObject* method = PyObject_GetAttrString(pyObj, "on_cell_enter"); - if (method && PyCallable_Check(method)) { - // #230: Cell hover takes only (cell_pos) - PyObject* args = createCellHoverArgs(cell); - if (args) { - PyObject* result = PyObject_CallObject(method, args); - Py_DECREF(args); - Py_DECREF(method); - Py_DECREF(pyObj); - if (!result) { - std::cerr << "Cell enter method raised an exception:" << std::endl; - PyErr_Print(); - PyErr_Clear(); - } else { - Py_DECREF(result); - } - return true; - } - } - Py_XDECREF(method); - } - Py_DECREF(pyObj); - } - } - return false; -} - -// #230 - Fire cell exit callback with position-only signature (cell_pos) -bool UIGrid::fireCellExit(sf::Vector2i cell) { - // Try property-assigned callback first (now PyCellHoverCallable) - if (on_cell_exit_callable && !on_cell_exit_callable->isNone()) { - on_cell_exit_callable->call(cell); - return true; - } - - // Try Python subclass method - if (is_python_subclass) { - PyObject* pyObj = PythonObjectCache::getInstance().lookup(this->serial_number); - if (pyObj) { - refreshCellCallbackCache(pyObj); - if (cell_callback_cache.has_on_cell_exit) { - PyObject* method = PyObject_GetAttrString(pyObj, "on_cell_exit"); - if (method && PyCallable_Check(method)) { - // #230: Cell hover takes only (cell_pos) - PyObject* args = createCellHoverArgs(cell); - if (args) { - PyObject* result = PyObject_CallObject(method, args); - Py_DECREF(args); - Py_DECREF(method); - Py_DECREF(pyObj); - if (!result) { - std::cerr << "Cell exit method raised an exception:" << std::endl; - PyErr_Print(); - PyErr_Clear(); - } else { - Py_DECREF(result); - } - return true; - } - } - Py_XDECREF(method); - } - Py_DECREF(pyObj); - } - } - return false; -} - -// #142 - Update cell hover state and fire callbacks -// #230 - Cell hover callbacks now take only (cell_pos), no button/action -void UIGrid::updateCellHover(sf::Vector2f mousepos, const std::string& button, const std::string& action) { - (void)button; // #230 - No longer used for hover callbacks - (void)action; // #230 - No longer used for hover callbacks - - auto new_cell = screenToCell(mousepos); - - // Check if cell changed - if (new_cell != hovered_cell) { - // Fire exit callback for old cell - if (hovered_cell.has_value()) { - fireCellExit(hovered_cell.value()); - } - - // Fire enter callback for new cell - if (new_cell.has_value()) { - fireCellEnter(new_cell.value()); - } - - hovered_cell = new_cell; - } -} - // UIEntityCollection code has been moved to UIEntityCollection.cpp // Property system implementation for animations diff --git a/src/UIGrid.h b/src/UIGrid.h index 78ff351..bb8e95c 100644 --- a/src/UIGrid.h +++ b/src/UIGrid.h @@ -56,6 +56,7 @@ public: void render(sf::Vector2f, sf::RenderTarget&) override final; PyObjectsEnum derived_type() override final; virtual UIDrawable* click_at(sf::Vector2f point) override final; + GridData* asGridData() override { return static_cast(this); } // #355 // Phase 1 virtual method implementations sf::FloatRect get_bounds() const override; @@ -80,20 +81,12 @@ public: // Background rendering sf::Color fill_color; - // Perspective system - std::weak_ptr perspective_entity; - bool perspective_enabled; + // #355: the perspective system (entity + enabled flag) lives on UIGridView, + // which renders the FOV overlay. Keeping a copy here was a dead duplicate. - // Cell callback firing (needs UIDrawable::is_python_subclass, serial_number) - bool fireCellClick(sf::Vector2i cell, const std::string& button, const std::string& action); - bool fireCellEnter(sf::Vector2i cell); - bool fireCellExit(sf::Vector2i cell); - void refreshCellCallbackCache(PyObject* pyObj); - - // #142 - Cell coordinate conversion (needs texture for cell size) - std::optional screenToCell(sf::Vector2f screen_pos) const; + // #355 - cell callback firing, screenToCell and cell hover moved to UIGridView. + // getEffectiveCellSize stays: UIDrawable uses it for grid_pos <-> pixel math. sf::Vector2f getEffectiveCellSize() const; - void updateCellHover(sf::Vector2f mousepos, const std::string& button, const std::string& action); // Property system for animations bool setProperty(const std::string& name, float value) override; @@ -122,10 +115,6 @@ public: static PyObject* get_texture(PyUIGridObject* self, void* closure); static PyObject* get_fill_color(PyUIGridObject* self, void* closure); static int set_fill_color(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_perspective(PyUIGridObject* self, void* closure); - static int set_perspective(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_perspective_enabled(PyUIGridObject* self, void* closure); - static int set_perspective_enabled(PyUIGridObject* self, PyObject* value, void* closure); static PyObject* get_fov(PyUIGridObject* self, void* closure); static int set_fov(PyUIGridObject* self, PyObject* value, void* closure); static PyObject* get_fov_radius(PyUIGridObject* self, void* closure); @@ -149,15 +138,6 @@ public: static PyObject* get_children(PyUIGridObject* self, void* closure); static PyObject* repr(PyUIGridObject* self); - static PyObject* get_on_cell_enter(PyUIGridObject* self, void* closure); - static int set_on_cell_enter(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_on_cell_exit(PyUIGridObject* self, void* closure); - static int set_on_cell_exit(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_on_cell_click(PyUIGridObject* self, void* closure); - static int set_on_cell_click(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_hovered_cell(PyUIGridObject* self, void* closure); - - static PyObject* get_view(PyUIGridObject* self, void* closure); // #252 shim static PyObject* py_add_layer(PyUIGridObject* self, PyObject* args); static PyObject* py_remove_layer(PyUIGridObject* self, PyObject* args); static PyObject* get_layers(PyUIGridObject* self, void* closure); @@ -190,12 +170,8 @@ namespace mcrfpydef { obj->data->on_enter_unregister(); obj->data->on_exit_unregister(); obj->data->on_move_unregister(); - // Grid-specific cell callbacks (now on GridData base) - obj->data->on_cell_enter_callable.reset(); - obj->data->on_cell_exit_callable.reset(); - obj->data->on_cell_click_callable.reset(); + // #355: cell callbacks now live on UIGridView, not GridData. } - obj->view.reset(); // #252: release GridView shim obj->data.reset(); Py_TYPE(self)->tp_free(self); }, @@ -215,7 +191,6 @@ namespace mcrfpydef { " center_x (float): X coordinate of center point. Default: 0\n" " center_y (float): Y coordinate of center point. Default: 0\n" " zoom (float): Zoom level for rendering. Default: 1.0\n" - " perspective (int): Entity perspective index (-1 for omniscient). Default: -1\n" " visible (bool): Visibility state. Default: True\n" " opacity (float): Opacity (0.0-1.0). Default: 1.0\n" " z_index (int): Rendering order. Default: 0\n" @@ -243,7 +218,12 @@ namespace mcrfpydef { " texture (Texture): Tile texture atlas\n" " fill_color (Color): Background color\n" " entities (EntityCollection): Collection of entities in the grid\n" - " perspective (int): Entity perspective index\n" + " children (UICollection): UIDrawable children (speech bubbles, markers, " + "range indicators) anchored to grid content -- positioned in the grid's " + "pixel-world coordinates, same origin as entities, and pan/zoom with the " + "camera. NOT the same coordinate space as Frame.children. For screen-space " + "UI that floats over the grid, use a sibling Frame instead; see " + "docs/grid-coordinate-spaces.md\n" " click (callable): Click event handler\n" " visible (bool): Visibility state\n" " opacity (float): Opacity value\n" @@ -272,18 +252,6 @@ namespace mcrfpydef { PyObject* callback = obj->data->on_move_callable->borrow(); if (callback && callback != Py_None) Py_VISIT(callback); } - if (obj->data->on_cell_enter_callable) { - PyObject* callback = obj->data->on_cell_enter_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } - if (obj->data->on_cell_exit_callable) { - PyObject* callback = obj->data->on_cell_exit_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } - if (obj->data->on_cell_click_callable) { - PyObject* callback = obj->data->on_cell_click_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } } return 0; }, @@ -294,9 +262,6 @@ namespace mcrfpydef { obj->data->on_enter_unregister(); obj->data->on_exit_unregister(); obj->data->on_move_unregister(); - obj->data->on_cell_enter_callable.reset(); - obj->data->on_cell_exit_callable.reset(); - obj->data->on_cell_click_callable.reset(); } return 0; }, @@ -309,8 +274,6 @@ namespace mcrfpydef { PyUIGridObject* self = (PyUIGridObject*)type->tp_alloc(type, 0); if (self) { self->data = std::make_shared(); - // Placement-new the shared_ptr (tp_alloc zero-fills, not construct) - new (&self->view) std::shared_ptr(); } return (PyObject*)self; } diff --git a/src/UIGridPyMethods.cpp b/src/UIGridPyMethods.cpp index 45273a5..b77ec2f 100644 --- a/src/UIGridPyMethods.cpp +++ b/src/UIGridPyMethods.cpp @@ -829,7 +829,7 @@ PyObject* UIGrid::py_step(PyUIGridObject* self, PyObject* args, PyObject* kwds) // #351 - invalidate the view's render early-out once if anything moved. // Must call the GridData override explicitly: UIGrid's `using // UIDrawable::markCompositeDirty` would otherwise shadow it and skip the - // content_generation bump + owning_view notification. + // content_generation bump + registered-views notification. if (content_changed) grid->GridData::markCompositeDirty(); Py_RETURN_NONE; diff --git a/src/UIGridPyProperties.cpp b/src/UIGridPyProperties.cpp index a9d0904..296057c 100644 --- a/src/UIGridPyProperties.cpp +++ b/src/UIGridPyProperties.cpp @@ -156,22 +156,6 @@ int UIGrid::set_float_member(PyUIGridObject* self, PyObject* value, void* closur else if (member_ptr == 7) self->data->camera_rotation = val; - if (self->view) { - if (member_ptr == 0) - self->view->box.setPosition(val, self->view->box.getPosition().y); - else if (member_ptr == 1) - self->view->box.setPosition(self->view->box.getPosition().x, val); - else if (member_ptr == 2) - self->view->box.setSize(sf::Vector2f(val, self->view->box.getSize().y)); - else if (member_ptr == 3) - self->view->box.setSize(sf::Vector2f(self->view->box.getSize().x, val)); - else if (member_ptr == 4) self->view->center_x = val; - else if (member_ptr == 5) self->view->center_y = val; - else if (member_ptr == 6) self->view->zoom = val; - else if (member_ptr == 7) self->view->camera_rotation = val; - self->view->position = self->view->box.getPosition(); - } - if (member_ptr == 0 || member_ptr == 1) { self->data->markCompositeDirty(); } else { @@ -224,72 +208,6 @@ int UIGrid::set_fill_color(PyUIGridObject* self, PyObject* value, void* closure) return 0; } -// ========================================================================= -// Perspective properties -// ========================================================================= - -PyObject* UIGrid::get_perspective(PyUIGridObject* self, void* closure) -{ - auto locked = self->data->perspective_entity.lock(); - if (locked) { - if (locked->serial_number != 0) { - PyObject* cached = PythonObjectCache::getInstance().lookup(locked->serial_number); - if (cached) { - return cached; - } - } - - auto type = &mcrfpydef::PyUIEntityType; - auto o = (PyUIEntityObject*)type->tp_alloc(type, 0); - if (o) { - o->data = locked; - o->weakreflist = NULL; - return (PyObject*)o; - } - } - Py_RETURN_NONE; -} - -int UIGrid::set_perspective(PyUIGridObject* self, PyObject* value, void* closure) -{ - if (value == Py_None) { - self->data->perspective_entity.reset(); - self->data->markDirty(); - return 0; - } - - if (!PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIEntityType)) { - PyErr_SetString(PyExc_TypeError, "perspective must be a UIEntity or None"); - return -1; - } - - PyUIEntityObject* entity_obj = (PyUIEntityObject*)value; - self->data->perspective_entity = entity_obj->data; - self->data->perspective_enabled = true; - self->data->markDirty(); - return 0; -} - -PyObject* UIGrid::get_perspective_enabled(PyUIGridObject* self, void* closure) -{ - return PyBool_FromLong(self->data->perspective_enabled); -} - -int UIGrid::set_perspective_enabled(PyUIGridObject* self, PyObject* value, void* closure) -{ - int enabled = PyObject_IsTrue(value); - if (enabled == -1) { - return -1; - } - self->data->perspective_enabled = enabled; - self->data->markDirty(); - return 0; -} - -// ========================================================================= -// FOV properties -// ========================================================================= - PyObject* UIGrid::get_fov(PyUIGridObject* self, void* closure) { if (PyFOV::fov_enum_class) { @@ -368,17 +286,6 @@ PyObject* UIGrid::get_children(PyUIGridObject* self, void* closure) return (PyObject*)o; } -PyObject* UIGrid::get_view(PyUIGridObject* self, void* closure) -{ - if (!self->view) Py_RETURN_NONE; - auto type = &mcrfpydef::PyUIGridViewType; - auto obj = (PyUIGridViewObject*)type->tp_alloc(type, 0); - if (!obj) return PyErr_NoMemory(); - obj->data = self->view; - obj->weakreflist = NULL; - return (PyObject*)obj; -} - PyObject* UIGrid::get_layers(PyUIGridObject* self, void* closure) { self->data->sortLayers(); @@ -438,70 +345,7 @@ PyObject* UIGrid::repr(PyUIGridObject* self) return PyUnicode_DecodeUTF8(repr_str.c_str(), repr_str.size(), "replace"); } -// ========================================================================= -// Cell callback properties -// ========================================================================= - -PyObject* UIGrid::get_on_cell_enter(PyUIGridObject* self, void* closure) { - if (self->data->on_cell_enter_callable) { - PyObject* cb = self->data->on_cell_enter_callable->borrow(); - Py_INCREF(cb); - return cb; - } - Py_RETURN_NONE; -} - -int UIGrid::set_on_cell_enter(PyUIGridObject* self, PyObject* value, void* closure) { - if (value == Py_None) { - self->data->on_cell_enter_callable.reset(); - } else { - self->data->on_cell_enter_callable = std::make_unique(value); - } - return 0; -} - -PyObject* UIGrid::get_on_cell_exit(PyUIGridObject* self, void* closure) { - if (self->data->on_cell_exit_callable) { - PyObject* cb = self->data->on_cell_exit_callable->borrow(); - Py_INCREF(cb); - return cb; - } - Py_RETURN_NONE; -} - -int UIGrid::set_on_cell_exit(PyUIGridObject* self, PyObject* value, void* closure) { - if (value == Py_None) { - self->data->on_cell_exit_callable.reset(); - } else { - self->data->on_cell_exit_callable = std::make_unique(value); - } - return 0; -} - -PyObject* UIGrid::get_on_cell_click(PyUIGridObject* self, void* closure) { - if (self->data->on_cell_click_callable) { - PyObject* cb = self->data->on_cell_click_callable->borrow(); - Py_INCREF(cb); - return cb; - } - Py_RETURN_NONE; -} - -int UIGrid::set_on_cell_click(PyUIGridObject* self, PyObject* value, void* closure) { - if (value == Py_None) { - self->data->on_cell_click_callable.reset(); - } else { - self->data->on_cell_click_callable = std::make_unique(value); - } - return 0; -} - -PyObject* UIGrid::get_hovered_cell(PyUIGridObject* self, void* closure) { - if (self->data->hovered_cell.has_value()) { - return Py_BuildValue("(ii)", self->data->hovered_cell->x, self->data->hovered_cell->y); - } - Py_RETURN_NONE; -} +// #355 - cell callback properties moved to UIGridView (src/UIGridView.cpp) // ========================================================================= // getsetters[] table @@ -564,17 +408,6 @@ PyGetSetDef UIGrid::getsetters[] = { "Returns a copy; modifying components requires reassignment. " "For animation, use 'fill_color.r', 'fill_color.g', etc." ), NULL}, - {"perspective", (getter)UIGrid::get_perspective, (setter)UIGrid::set_perspective, - MCRF_PROPERTY(perspective, - "Entity whose perspective to use for FOV rendering (Entity | None). " - "Setting an entity automatically enables perspective mode. " - "Set to None for omniscient view." - ), NULL}, - {"perspective_enabled", (getter)UIGrid::get_perspective_enabled, (setter)UIGrid::set_perspective_enabled, - MCRF_PROPERTY(perspective_enabled, - "Whether to use perspective-based FOV rendering (bool). " - "When True with no valid entity, all cells appear undiscovered." - ), NULL}, {"fov", (getter)UIGrid::get_fov, (setter)UIGrid::set_fov, MCRF_PROPERTY(fov, "FOV algorithm for this grid (FOV enum). " @@ -593,19 +426,6 @@ PyGetSetDef UIGrid::getsetters[] = { UIDRAWABLE_PARENT_GETSETTERS(PyObjectsEnum::UIGRID), UIDRAWABLE_ALIGNMENT_GETSETTERS(PyObjectsEnum::UIGRID), UIDRAWABLE_ROTATION_GETSETTERS(PyObjectsEnum::UIGRID), - {"on_cell_enter", (getter)UIGrid::get_on_cell_enter, (setter)UIGrid::set_on_cell_enter, - MCRF_PROPERTY(on_cell_enter, "Callback when mouse enters a grid cell (Callable | None). Called with (cell_pos: Vector)."), NULL}, - {"on_cell_exit", (getter)UIGrid::get_on_cell_exit, (setter)UIGrid::set_on_cell_exit, - MCRF_PROPERTY(on_cell_exit, "Callback when mouse exits a grid cell (Callable | None). Called with (cell_pos: Vector)."), NULL}, - {"on_cell_click", (getter)UIGrid::get_on_cell_click, (setter)UIGrid::set_on_cell_click, - MCRF_PROPERTY(on_cell_click, "Callback when a grid cell is clicked (Callable | None). Called with (cell_pos: Vector, button: MouseButton, action: InputState)."), NULL}, - {"hovered_cell", (getter)UIGrid::get_hovered_cell, NULL, - MCRF_PROPERTY(hovered_cell, "Currently hovered cell as (x, y) tuple, or None if not hovering (tuple | None, read-only)."), NULL}, UIDRAWABLE_SHADER_GETSETTERS(PyObjectsEnum::UIGRID), - {"view", (getter)UIGrid::get_view, NULL, - MCRF_PROPERTY(view, - "Auto-created GridView for rendering (GridView | None, read-only). " - "When Grid is appended to a scene, this view is what actually renders." - ), NULL}, {NULL} }; diff --git a/src/UIGridView.cpp b/src/UIGridView.cpp index de8a33d..12f6f60 100644 --- a/src/UIGridView.cpp +++ b/src/UIGridView.cpp @@ -15,6 +15,8 @@ #include "PythonObjectCache.h" #include "PySceneObject.h" // parent= kwarg: Scene is a valid parent type #include "McRFPy_Doc.h" +#include "PyMouseButton.h" // #355 - MouseButton enum for cell click args +#include "PyInputState.h" // #355 - InputState enum for cell click args #include #include @@ -78,6 +80,14 @@ void UIGridView::resize(float w, float h) box.setSize(sf::Vector2f(w, h)); } +void UIGridView::onPositionChanged() +{ + // #355: UIDrawable::set_pos/set_float_member write `position` and call this; + // without it the rendered box (and every hit test derived from it) stayed at + // the construction-time origin. + box.setPosition(position); +} + sf::Vector2f UIGridView::getEffectiveCellSize() const { int cw = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; @@ -85,24 +95,53 @@ sf::Vector2f UIGridView::getEffectiveCellSize() const return sf::Vector2f(cw * zoom, ch * zoom); } -std::optional UIGridView::screenToCell(sf::Vector2f screen_pos) const +sf::Vector2f UIGridView::localToGridWorld(sf::Vector2f local) const +{ + // Exact inverse of render()'s rasterize-then-composite transform (including + // the int truncation of left/top_spritepixels), so hit testing matches what + // is drawn -- rotated camera included. + // + // render(): grid-world -> texture pixel + // T = (gw - spritepixels) * zoom [texture is aabb_w x aabb_h] + // then the texture is blitted rotated by camera_rotation about its center, + // landing on the widget center: + // L - box_center = R(camera_rotation) * (T - tex_center) + // Inverting: T = R(-camera_rotation) * (L - box_center) + tex_center, + // gw = T / zoom + spritepixels. + const float grid_w_px = box.getSize().x; + const float grid_h_px = box.getSize().y; + + const float rad = camera_rotation * (float)(M_PI / 180.0); + const float cos_r = std::cos(rad); + const float sin_r = std::sin(rad); + // Same AABB the renderer rasterizes into (equals the box when unrotated). + const float aabb_w = grid_w_px * std::abs(cos_r) + grid_h_px * std::abs(sin_r); + const float aabb_h = grid_w_px * std::abs(sin_r) + grid_h_px * std::abs(cos_r); + + const float dx = local.x - grid_w_px / 2.0f; + const float dy = local.y - grid_h_px / 2.0f; + // R(-camera_rotation) applied to (dx, dy), then re-centered on the AABB. + const float tx = dx * cos_r + dy * sin_r + aabb_w / 2.0f; + const float ty = -dx * sin_r + dy * cos_r + aabb_h / 2.0f; + + int left_spritepixels = center_x - (aabb_w / 2.0 / zoom); + int top_spritepixels = center_y - (aabb_h / 2.0 / zoom); + return sf::Vector2f(tx / zoom + left_spritepixels, + ty / zoom + top_spritepixels); +} + +std::optional UIGridView::cellAtLocal(sf::Vector2f local) const { if (!grid_data) return std::nullopt; - if (!box.getGlobalBounds().contains(screen_pos)) return std::nullopt; - - int cw = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; + if (local.x < 0 || local.y < 0 || + local.x >= box.getSize().x || local.y >= box.getSize().y) { + return std::nullopt; + } + int cw = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; int ch = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; - - sf::Vector2f local = screen_pos - box.getPosition(); - int left_sp = center_x - (box.getSize().x / 2.0 / zoom); - int top_sp = center_y - (box.getSize().y / 2.0 / zoom); - - float gx = (local.x / zoom + left_sp) / cw; - float gy = (local.y / zoom + top_sp) / ch; - - int cx = static_cast(std::floor(gx)); - int cy = static_cast(std::floor(gy)); - + sf::Vector2f gw = localToGridWorld(local); + int cx = static_cast(std::floor(gw.x / cw)); + int cy = static_cast(std::floor(gw.y / ch)); if (cx < 0 || cx >= grid_data->grid_w || cy < 0 || cy >= grid_data->grid_h) return std::nullopt; return sf::Vector2i(cx, cy); @@ -137,14 +176,16 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) // #351 - clean-state early-out: re-blit the cached RenderTexture when nothing // affecting the raster changed since last frame. Camera params are compared // directly (view-local); grid content changes bump content_generation. The - // perspective overlay (checked authoritatively on the UIGrid, since the view's - // copy is not resynced at runtime) and any grid children are conservative + // perspective overlay (single source of truth: this view's own + // perspective_enabled, see #355 fix) and any grid children are conservative // always-render carve-outs until tracked precisely (#352). - UIGrid* ugrid = static_cast(grid_data.get()); - bool perspective_active = perspective_enabled || (ugrid && ugrid->perspective_enabled); + // last_perspective_enabled: the cached raster HAS an overlay baked into it, so + // the frame that turns perspective off must re-rasterize even though every + // other input is unchanged (otherwise the fog stays on screen forever). bool can_skip = has_rendered_once - && !perspective_active + && !perspective_enabled + && !last_perspective_enabled && (!grid_data->children || grid_data->children->empty()) && grid_data->content_generation == last_content_gen && center_x == last_center_x && center_y == last_center_y @@ -273,8 +314,9 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) } } - // Perspective overlay + // Perspective overlay (#355: state owned by the view -- see get/set_perspective) if (perspective_enabled) { + ScopedTimer fovTimer(Resources::game->metrics.fovOverlayTime); auto entity = perspective_entity.lock(); sf::RectangleShape overlay; overlay.setSize(sf::Vector2f(cell_width * zoom, cell_height * zoom)); @@ -355,6 +397,7 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) last_box_size = box.getSize(); last_fill_color = fill_color; last_render_tex_size = renderTextureSize; + last_perspective_enabled = perspective_enabled; if (shader && shader->shader) { sf::Vector2f resolution(box.getSize().x, box.getSize().y); @@ -368,8 +411,59 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) UIDrawable* UIGridView::click_at(sf::Vector2f point) { + // point is in PARENT-LOCAL space (UIFrame::click_at passes point - position down). if (!box.getGlobalBounds().contains(point)) return nullptr; - return this; // GridView consumes clicks within its bounds + if (!grid_data) { + return (click_callable || is_python_subclass) ? this : nullptr; + } + + sf::Vector2f local = point - box.getPosition(); + sf::Vector2f gw = localToGridWorld(local); + + int cw = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; + int ch = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; + float grid_x = gw.x / cw; + float grid_y = gw.y / ch; + + // 1. Children first (drawn on top). Children of a grid live in GRID-WORLD PIXEL + // coordinates -- NOT view-local, NOT screen (#360, by design: moving the + // camera must not move a child's logical position). Do not "fix" this. + if (grid_data->children && !grid_data->children->empty()) { + if (grid_data->children_need_sort) { + std::sort(grid_data->children->begin(), grid_data->children->end(), + [](const auto& a, const auto& b) { return a->z_index < b->z_index; }); + grid_data->children_need_sort = false; + } + for (auto it = grid_data->children->rbegin(); it != grid_data->children->rend(); ++it) { + auto& child = *it; + if (!child->visible) continue; + if (auto target = child->click_at(gw)) return target; + } + } + + // 2. Entities: 1x1 cell hit box matching the renderer, which draws the sprite at + // position.x * cell_width -- i.e. cell [pos, pos+1). + // NOTE: unreachable from Python today -- Entity exposes no on_click/sprite + // binding, so entity->sprite.click_callable can never be set, and this branch + // cannot fire. Implemented per #355; dead until an Entity.on_click binding + // exists (needs its own issue). + if (grid_data->entities) { + for (auto it = grid_data->entities->rbegin(); it != grid_data->entities->rend(); ++it) { + auto& entity = *it; + if (!entity || !entity->sprite.visible) continue; + float dx = grid_x - entity->position.x; + float dy = grid_y - entity->position.y; + if (dx >= 0.0f && dx < 1.0f && dy >= 0.0f && dy < 1.0f) { + if (entity->sprite.click_callable) return &entity->sprite; + } + } + } + + // 3. The cell itself. Stash for dispatchCellClick (PyScene has only global coords). + last_clicked_cell = cellAtLocal(local); + + if (click_callable || is_python_subclass || on_cell_click_callable) return this; + return nullptr; } // Property system @@ -532,6 +626,14 @@ int UIGridView::init_explicit_view(PyUIGridViewObject* self, PyObject* args, PyO if (self->data->grid_data) { self->data->center_camera(); self->data->ensureRenderTextureSize(); + // #359 - Register this view so it receives markDirty/markCompositeDirty + // notifications (its own ancestor chain -- e.g. a Frame(use_render_texture= + // True) wrapping this view -- needs invalidating too, not just the + // creating view's). Does NOT disturb identity: primaryView() (used by + // UIEntity::get_grid) is views.front(), which is always the view that + // created this GridData via init_with_data, since init_explicit_view can + // only attach to grid_data that already exists. + self->data->grid_data->registerView(self->data); } self->weakreflist = NULL; @@ -605,8 +707,8 @@ int UIGridView::init_with_data(PyUIGridViewObject* self, PyObject* args, PyObjec } } - // Set owning_view back-reference on the GridData - self->data->grid_data->owning_view = self->data; + // #359 - Register this view on the GridData (dirty-notification + identity) + self->data->grid_data->registerView(self->data); self->data->ensureRenderTextureSize(); @@ -776,35 +878,35 @@ int UIGridView::set_grid(PyUIGridViewObject* self, PyObject* value, void* closur // #348: the persistent wrapper tracks the *current* grid_data; any reassign // (including to None) invalidates it so get_grid rebuilds for the new data. Py_CLEAR(self->data->cached_grid_wrapper); + // #359 - Unregister self from whatever grid_data it was viewing before + // reassignment. unregisterView matches by identity (self->data.get()), so + // this is safe even when other views also share the old grid_data. + if (self->data->grid_data) { + self->data->grid_data->unregisterView(self->data.get()); + } if (value == Py_None) { - if (self->data->grid_data) { - self->data->grid_data->owning_view.reset(); - } self->data->grid_data = nullptr; return 0; } // Accept internal _GridData (UIGrid) objects if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { PyUIGridObject* pygrid = (PyUIGridObject*)value; - if (self->data->grid_data) { - self->data->grid_data->owning_view.reset(); - } self->data->grid_data = std::shared_ptr( pygrid->data, static_cast(pygrid->data.get())); self->data->ptex = pygrid->data->getTexture(); - self->data->grid_data->owning_view = self->data; + self->data->grid_data->registerView(self->data); return 0; } // Accept GridView (unified Grid) objects - share their grid_data if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType)) { PyUIGridViewObject* pyview = (PyUIGridViewObject*)value; if (pyview->data->grid_data) { - if (self->data->grid_data) { - self->data->grid_data->owning_view.reset(); - } self->data->grid_data = pyview->data->grid_data; self->data->ptex = pyview->data->ptex; - // Don't override owning_view - original owner keeps it + // #359: register self alongside the original owner (and any other + // secondary views) -- does not disturb primaryView() identity, + // which stays views.front() (the original creator). + self->data->grid_data->registerView(self->data); return 0; } self->data->grid_data = nullptr; @@ -856,6 +958,68 @@ int UIGridView::set_fill_color(PyUIGridViewObject* self, PyObject* value, void* return 0; } +// ========================================================================= +// Perspective (#355 fix): OWNED BY THE VIEW. The FOV overlay is drawn by +// UIGridView::render, so the state it gates on must live here -- previously +// `grid.perspective` fell through getattro to the internal _GridData and wrote +// UIGrid::perspective_enabled, which render() never read: the overlay was dead. +// Per-view ownership is also the correct semantics for shared GridData (#359): +// two views of one map can follow two different entities' FOV. +// ========================================================================= +PyObject* UIGridView::get_perspective(PyUIGridViewObject* self, void* closure) +{ + auto locked = self->data->perspective_entity.lock(); + if (!locked) Py_RETURN_NONE; + + // Honor the cache so Entity subclass identity survives (#266). + if (locked->serial_number != 0) { + PyObject* cached = PythonObjectCache::getInstance().lookup(locked->serial_number); + if (cached) return cached; // new ref + } + + auto type = &mcrfpydef::PyUIEntityType; + auto o = (PyUIEntityObject*)type->tp_alloc(type, 0); + if (!o) return PyErr_NoMemory(); + o->data = locked; + o->weakreflist = NULL; + return (PyObject*)o; +} + +int UIGridView::set_perspective(PyUIGridViewObject* self, PyObject* value, void* closure) +{ + if (value == Py_None) { + self->data->perspective_entity.reset(); + self->data->perspective_enabled = false; + self->data->markDirty(); + return 0; + } + + if (!PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIEntityType)) { + PyErr_SetString(PyExc_TypeError, "perspective must be an Entity or None"); + return -1; + } + + PyUIEntityObject* entity_obj = (PyUIEntityObject*)value; + self->data->perspective_entity = entity_obj->data; + self->data->perspective_enabled = true; + self->data->markDirty(); + return 0; +} + +PyObject* UIGridView::get_perspective_enabled(PyUIGridViewObject* self, void* closure) +{ + return PyBool_FromLong(self->data->perspective_enabled); +} + +int UIGridView::set_perspective_enabled(PyUIGridViewObject* self, PyObject* value, void* closure) +{ + int enabled = PyObject_IsTrue(value); + if (enabled == -1) return -1; + self->data->perspective_enabled = enabled; + self->data->markDirty(); + return 0; +} + PyObject* UIGridView::get_texture(PyUIGridViewObject* self, void* closure) { // #318: return a Texture wrapper sharing the underlying shared_ptr, @@ -904,6 +1068,342 @@ int UIGridView::set_float_member_gv(PyUIGridViewObject* self, PyObject* value, v return 0; } +// ========================================================================= +// #355 - Cell input machinery (moved verbatim from UIGrid, retargeted to the view) +// ========================================================================= + +// Helper function to convert button string to MouseButton enum value +static int buttonStringToEnum(const std::string& button) { + if (button == "left") return 0; // MouseButton.LEFT + if (button == "right") return 1; // MouseButton.RIGHT + if (button == "middle") return 2; // MouseButton.MIDDLE + if (button == "wheel_up") return 3; // MouseButton.WHEEL_UP + if (button == "wheel_down") return 4; // MouseButton.WHEEL_DOWN + return 0; // Default to LEFT +} + +// Helper function to convert action string to InputState enum value +static int actionStringToEnum(const std::string& action) { + if (action == "start" || action == "pressed") return 0; // InputState.PRESSED + if (action == "end" || action == "released") return 1; // InputState.RELEASED + return 0; // Default to PRESSED +} + +// Helper to create typed cell callback arguments: (Vector, MouseButton, InputState) +static PyObject* createCellCallbackArgs(sf::Vector2i cell, const std::string& button, const std::string& action) { + PyObject* cell_pos = PyObject_CallFunction((PyObject*)&mcrfpydef::PyVectorType, "ff", (float)cell.x, (float)cell.y); + if (!cell_pos) { + PyErr_Print(); + return nullptr; + } + + int button_val = buttonStringToEnum(button); + PyObject* button_enum = PyObject_CallFunction(PyMouseButton::mouse_button_enum_class, "i", button_val); + if (!button_enum) { + Py_DECREF(cell_pos); + PyErr_Print(); + return nullptr; + } + + int action_val = actionStringToEnum(action); + PyObject* action_enum = PyObject_CallFunction(PyInputState::input_state_enum_class, "i", action_val); + if (!action_enum) { + Py_DECREF(cell_pos); + Py_DECREF(button_enum); + PyErr_Print(); + return nullptr; + } + + PyObject* args = Py_BuildValue("(OOO)", cell_pos, button_enum, action_enum); + Py_DECREF(cell_pos); + Py_DECREF(button_enum); + Py_DECREF(action_enum); + return args; +} + +// #230 - Helper to create cell hover callback arguments: (Vector) only +static PyObject* createCellHoverArgs(sf::Vector2i cell) { + PyObject* cell_pos = PyObject_CallFunction((PyObject*)&mcrfpydef::PyVectorType, "ii", cell.x, cell.y); + if (!cell_pos) { + PyErr_Print(); + return nullptr; + } + + PyObject* args = Py_BuildValue("(O)", cell_pos); + Py_DECREF(cell_pos); + return args; +} + +// #142 - Refresh cell callback cache for Python subclass method support +void UIGridView::refreshCellCallbackCache(PyObject* pyObj) { + if (!pyObj || !is_python_subclass) { + cell_callback_cache.valid = false; + return; + } + + // Get the class's callback generation counter + PyObject* cls = (PyObject*)Py_TYPE(pyObj); + uint32_t current_gen = 0; + PyObject* gen_obj = PyObject_GetAttrString(cls, "_mcrf_callback_gen"); + if (gen_obj) { + current_gen = static_cast(PyLong_AsUnsignedLong(gen_obj)); + Py_DECREF(gen_obj); + } else { + PyErr_Clear(); + } + + if (cell_callback_cache.valid && cell_callback_cache.generation == current_gen) { + return; // Cache is fresh + } + + cell_callback_cache.has_on_cell_click = false; + cell_callback_cache.has_on_cell_enter = false; + cell_callback_cache.has_on_cell_exit = false; + + // Walk the class hierarchy down to (but not including) the base Grid type. + // #355: sentinel is PyUIGridViewType -- mcrfpy.Grid IS UIGridView. + PyTypeObject* type = Py_TYPE(pyObj); + while (type && type != &mcrfpydef::PyUIGridViewType && type != &PyBaseObject_Type) { + if (type->tp_dict) { + if (!cell_callback_cache.has_on_cell_click) { + PyObject* method = PyDict_GetItemString(type->tp_dict, "on_cell_click"); + if (method && PyCallable_Check(method)) { + cell_callback_cache.has_on_cell_click = true; + } + } + if (!cell_callback_cache.has_on_cell_enter) { + PyObject* method = PyDict_GetItemString(type->tp_dict, "on_cell_enter"); + if (method && PyCallable_Check(method)) { + cell_callback_cache.has_on_cell_enter = true; + } + } + if (!cell_callback_cache.has_on_cell_exit) { + PyObject* method = PyDict_GetItemString(type->tp_dict, "on_cell_exit"); + if (method && PyCallable_Check(method)) { + cell_callback_cache.has_on_cell_exit = true; + } + } + } + type = type->tp_base; + } + + cell_callback_cache.generation = current_gen; + cell_callback_cache.valid = true; +} + +// Fire cell click callback with full signature (cell_pos, button, action) +bool UIGridView::fireCellClick(sf::Vector2i cell, const std::string& button, const std::string& action) { + // Try property-assigned callback first + if (on_cell_click_callable && !on_cell_click_callable->isNone()) { + PyObject* args = createCellCallbackArgs(cell, button, action); + if (args) { + PyObject* result = PyObject_CallObject(on_cell_click_callable->borrow(), args); + Py_DECREF(args); + if (!result) { + std::cerr << "Cell click callback raised an exception:" << std::endl; + PyErr_Print(); + PyErr_Clear(); + } else { + Py_DECREF(result); + } + return true; + } + } + + // Try Python subclass method + if (is_python_subclass) { + PyObject* pyObj = PythonObjectCache::getInstance().lookup(this->serial_number); + if (pyObj) { + refreshCellCallbackCache(pyObj); + if (cell_callback_cache.has_on_cell_click) { + PyObject* method = PyObject_GetAttrString(pyObj, "on_cell_click"); + if (method && PyCallable_Check(method)) { + PyObject* args = createCellCallbackArgs(cell, button, action); + if (args) { + PyObject* result = PyObject_CallObject(method, args); + Py_DECREF(args); + Py_DECREF(method); + Py_DECREF(pyObj); + if (!result) { + std::cerr << "Cell click method raised an exception:" << std::endl; + PyErr_Print(); + PyErr_Clear(); + } else { + Py_DECREF(result); + } + return true; + } + } + Py_XDECREF(method); + } + Py_DECREF(pyObj); + } + } + return false; +} + +// #230 - Fire cell enter callback with position-only signature (cell_pos) +bool UIGridView::fireCellEnter(sf::Vector2i cell) { + if (on_cell_enter_callable && !on_cell_enter_callable->isNone()) { + on_cell_enter_callable->call(cell); + return true; + } + + if (is_python_subclass) { + PyObject* pyObj = PythonObjectCache::getInstance().lookup(this->serial_number); + if (pyObj) { + refreshCellCallbackCache(pyObj); + if (cell_callback_cache.has_on_cell_enter) { + PyObject* method = PyObject_GetAttrString(pyObj, "on_cell_enter"); + if (method && PyCallable_Check(method)) { + PyObject* args = createCellHoverArgs(cell); + if (args) { + PyObject* result = PyObject_CallObject(method, args); + Py_DECREF(args); + Py_DECREF(method); + Py_DECREF(pyObj); + if (!result) { + std::cerr << "Cell enter method raised an exception:" << std::endl; + PyErr_Print(); + PyErr_Clear(); + } else { + Py_DECREF(result); + } + return true; + } + } + Py_XDECREF(method); + } + Py_DECREF(pyObj); + } + } + return false; +} + +// #230 - Fire cell exit callback with position-only signature (cell_pos) +bool UIGridView::fireCellExit(sf::Vector2i cell) { + if (on_cell_exit_callable && !on_cell_exit_callable->isNone()) { + on_cell_exit_callable->call(cell); + return true; + } + + if (is_python_subclass) { + PyObject* pyObj = PythonObjectCache::getInstance().lookup(this->serial_number); + if (pyObj) { + refreshCellCallbackCache(pyObj); + if (cell_callback_cache.has_on_cell_exit) { + PyObject* method = PyObject_GetAttrString(pyObj, "on_cell_exit"); + if (method && PyCallable_Check(method)) { + PyObject* args = createCellHoverArgs(cell); + if (args) { + PyObject* result = PyObject_CallObject(method, args); + Py_DECREF(args); + Py_DECREF(method); + Py_DECREF(pyObj); + if (!result) { + std::cerr << "Cell exit method raised an exception:" << std::endl; + PyErr_Print(); + PyErr_Clear(); + } else { + Py_DECREF(result); + } + return true; + } + } + Py_XDECREF(method); + } + Py_DECREF(pyObj); + } + } + return false; +} + +// #355 - UIDrawable input virtuals +bool UIGridView::dispatchCellClick(const std::string& button, const std::string& action) +{ + if (!last_clicked_cell.has_value()) return false; + sf::Vector2i cell = last_clicked_cell.value(); + last_clicked_cell = std::nullopt; + return fireCellClick(cell, button, action); +} + +void UIGridView::updateHover(sf::Vector2f point, bool hit_allowed) +{ + // point is PARENT-local (same space as click_at); the view's own box position + // takes it to widget-local, and cellAtLocal applies this view's camera. + std::optional new_cell = std::nullopt; + if (hit_allowed) new_cell = cellAtLocal(point - box.getPosition()); + if (new_cell != hovered_cell) { + if (hovered_cell.has_value()) fireCellExit(hovered_cell.value()); + if (new_cell.has_value()) fireCellEnter(new_cell.value()); + hovered_cell = new_cell; + } +} + +// ========================================================================= +// #355 - Cell callback properties (moved from UIGrid) +// ========================================================================= +PyObject* UIGridView::get_on_cell_enter(PyUIGridViewObject* self, void* closure) { + if (self->data->on_cell_enter_callable) { + PyObject* cb = self->data->on_cell_enter_callable->borrow(); + Py_INCREF(cb); + return cb; + } + Py_RETURN_NONE; +} + +int UIGridView::set_on_cell_enter(PyUIGridViewObject* self, PyObject* value, void* closure) { + if (value == Py_None) { + self->data->on_cell_enter_callable.reset(); + } else { + self->data->on_cell_enter_callable = std::make_unique(value); + } + return 0; +} + +PyObject* UIGridView::get_on_cell_exit(PyUIGridViewObject* self, void* closure) { + if (self->data->on_cell_exit_callable) { + PyObject* cb = self->data->on_cell_exit_callable->borrow(); + Py_INCREF(cb); + return cb; + } + Py_RETURN_NONE; +} + +int UIGridView::set_on_cell_exit(PyUIGridViewObject* self, PyObject* value, void* closure) { + if (value == Py_None) { + self->data->on_cell_exit_callable.reset(); + } else { + self->data->on_cell_exit_callable = std::make_unique(value); + } + return 0; +} + +PyObject* UIGridView::get_on_cell_click(PyUIGridViewObject* self, void* closure) { + if (self->data->on_cell_click_callable) { + PyObject* cb = self->data->on_cell_click_callable->borrow(); + Py_INCREF(cb); + return cb; + } + Py_RETURN_NONE; +} + +int UIGridView::set_on_cell_click(PyUIGridViewObject* self, PyObject* value, void* closure) { + if (value == Py_None) { + self->data->on_cell_click_callable.reset(); + } else { + self->data->on_cell_click_callable = std::make_unique(value); + } + return 0; +} + +PyObject* UIGridView::get_hovered_cell(PyUIGridViewObject* self, void* closure) { + if (self->data->hovered_cell.has_value()) { + return Py_BuildValue("(ii)", self->data->hovered_cell->x, self->data->hovered_cell->y); + } + Py_RETURN_NONE; +} + // ========================================================================= // Subscript protocol: grid[x, y] -> GridPoint (delegates to GridData). // Setitem raises TypeError (GridPoints are views, not assignable). @@ -1019,5 +1519,26 @@ PyGetSetDef UIGridView::getsetters[] = { UIDRAWABLE_ALIGNMENT_GETSETTERS(PyObjectsEnum::UIGRIDVIEW), UIDRAWABLE_ROTATION_GETSETTERS(PyObjectsEnum::UIGRIDVIEW), UIDRAWABLE_SHADER_GETSETTERS(PyObjectsEnum::UIGRIDVIEW), + // #355 - cell input properties (moved from _GridData to the view) + {"on_cell_enter", (getter)UIGridView::get_on_cell_enter, (setter)UIGridView::set_on_cell_enter, + MCRF_PROPERTY(on_cell_enter, "Callback when mouse enters a grid cell (Callable | None). Called with (cell_pos: Vector)."), NULL}, + {"on_cell_exit", (getter)UIGridView::get_on_cell_exit, (setter)UIGridView::set_on_cell_exit, + MCRF_PROPERTY(on_cell_exit, "Callback when mouse exits a grid cell (Callable | None). Called with (cell_pos: Vector)."), NULL}, + {"on_cell_click", (getter)UIGridView::get_on_cell_click, (setter)UIGridView::set_on_cell_click, + MCRF_PROPERTY(on_cell_click, "Callback when a grid cell is clicked (Callable | None). Called with (cell_pos: Vector, button: MouseButton, action: InputState)."), NULL}, + {"hovered_cell", (getter)UIGridView::get_hovered_cell, NULL, + MCRF_PROPERTY(hovered_cell, "Currently hovered cell as (x, y) tuple, or None if not hovering (tuple | None, read-only)."), NULL}, + // #355 - perspective moved from _GridData to the view: render() draws the FOV + // overlay, so the view must own the state it gates on. Per-view, so two views + // of one grid can follow different entities. + {"perspective", (getter)UIGridView::get_perspective, (setter)UIGridView::set_perspective, + MCRF_PROPERTY(perspective, + "Entity whose perspective_map drives fog-of-war rendering in this view (Entity | None). " + "Setting an entity enables perspective mode; setting None disables it. " + "Cells the entity has never seen are drawn black, discovered-but-not-visible cells dimmed."), NULL}, + {"perspective_enabled", (getter)UIGridView::get_perspective_enabled, (setter)UIGridView::set_perspective_enabled, + MCRF_PROPERTY(perspective_enabled, + "Whether this view renders the perspective/FOV overlay (bool). " + "Set automatically when assigning perspective; set False to show the whole map without clearing the entity."), NULL}, {NULL} }; diff --git a/src/UIGridView.h b/src/UIGridView.h index 1871cdb..61be536 100644 --- a/src/UIGridView.h +++ b/src/UIGridView.h @@ -41,6 +41,7 @@ public: sf::FloatRect get_bounds() const override; void move(float dx, float dy) override; void resize(float w, float h) override; + void onPositionChanged() override; // #355: keep box in sync with position // The grid data this view renders std::shared_ptr grid_data; @@ -64,6 +65,42 @@ public: std::weak_ptr perspective_entity; bool perspective_enabled = false; + // ===================================================================== + // #355 - Cell input. Owned by the VIEW, not GridData: two views over one + // GridData must each track their own hover cell (a shared hovered_cell + // would ping-pong exit/enter between views), and the subclass-dispatch + // path must resolve against the VIEW's serial_number, because the public + // subclassable type (mcrfpy.Grid) IS UIGridView. + // ===================================================================== + std::unique_ptr on_cell_enter_callable; + std::unique_ptr on_cell_exit_callable; + std::unique_ptr on_cell_click_callable; + std::optional hovered_cell; // Python-visible (read-only) + std::optional last_clicked_cell; // C++ only: click_at -> dispatchCellClick + + struct CellCallbackCache { + uint32_t generation = 0; + bool valid = false; + bool has_on_cell_click = false; + bool has_on_cell_enter = false; + bool has_on_cell_exit = false; + }; + CellCallbackCache cell_callback_cache; + + bool fireCellClick(sf::Vector2i cell, const std::string& button, const std::string& action); + bool fireCellEnter(sf::Vector2i cell); + bool fireCellExit(sf::Vector2i cell); + void refreshCellCallbackCache(PyObject* pyObj); + + // UIDrawable input virtuals (#355) + bool dispatchCellClick(const std::string& button, const std::string& action) override; + void updateHover(sf::Vector2f point, bool hit_allowed) override; + GridData* asGridData() override { return grid_data.get(); } + + // Cell math. local_point is relative to the widget's top-left. + sf::Vector2f localToGridWorld(sf::Vector2f local_point) const; + std::optional cellAtLocal(sf::Vector2f local_point) const; + // #351 - clean-state render early-out cache. These record the inputs the // current RenderTexture was rasterized from; render() re-blits the cached // texture instead of clear+redraw when none changed. Camera params are @@ -76,6 +113,7 @@ public: sf::Vector2f last_box_size{-1.f, -1.f}; sf::Color last_fill_color{0, 0, 0, 0}; sf::Vector2u last_render_tex_size{0, 0}; + bool last_perspective_enabled = false; // #355: fog baked into the cached raster // Render textures sf::Sprite sprite_proto, output; @@ -96,8 +134,9 @@ public: void center_camera(); void center_camera(float tile_x, float tile_y); - // Cell coordinate conversion - std::optional screenToCell(sf::Vector2f screen_pos) const; + // #355: no screenToCell() -- hover/click both arrive in parent-local space and + // go through cellAtLocal(). A global-coords helper would be a second, wrong + // coordinate path for grids nested inside frames/grids. sf::Vector2f getEffectiveCellSize() const; static constexpr int DEFAULT_CELL_WIDTH = 16; @@ -130,6 +169,21 @@ public: static PyObject* get_float_member_gv(PyUIGridViewObject* self, void* closure); static int set_float_member_gv(PyUIGridViewObject* self, PyObject* value, void* closure); + // #355 - cell callback properties (moved from UIGrid) + static PyObject* get_on_cell_enter(PyUIGridViewObject* self, void* closure); + static int set_on_cell_enter(PyUIGridViewObject* self, PyObject* value, void* closure); + static PyObject* get_on_cell_exit(PyUIGridViewObject* self, void* closure); + static int set_on_cell_exit(PyUIGridViewObject* self, PyObject* value, void* closure); + static PyObject* get_on_cell_click(PyUIGridViewObject* self, void* closure); + static int set_on_cell_click(PyUIGridViewObject* self, PyObject* value, void* closure); + static PyObject* get_hovered_cell(PyUIGridViewObject* self, void* closure); + + // #355 - perspective properties (moved from UIGrid: the view renders the overlay) + static PyObject* get_perspective(PyUIGridViewObject* self, void* closure); + static int set_perspective(PyUIGridViewObject* self, PyObject* value, void* closure); + static PyObject* get_perspective_enabled(PyUIGridViewObject* self, void* closure); + static int set_perspective_enabled(PyUIGridViewObject* self, PyObject* value, void* closure); + static PyMethodDef methods[]; static PyGetSetDef getsetters[]; @@ -159,17 +213,16 @@ namespace mcrfpydef { if (obj->weakreflist != NULL) { PyObject_ClearWeakRefs(self); } - // Clear owning_view back-reference before releasing grid_data -- - // but only when this wrapper is the LAST owner of the view (#251 - // pattern, mirrors PyUIGridType) AND the dying view is actually - // the one owning_view points at. The previous ungated reset - // severed the back-reference whenever ANY Python wrapper was + // #359: Unregister from the GridData's view list before releasing + // grid_data -- but only when this wrapper is the LAST owner of the + // view (#251 pattern, mirrors PyUIGridType). An ungated unregister + // would sever the back-reference whenever ANY Python wrapper was // GC'd while the C++ view lived on (e.g. held by scene.children), // breaking entity.grid -> Grid identity and the #313 data-layer - // dirty notifications. - if (obj->data && obj->data->grid_data && obj->data.use_count() <= 1 && - obj->data->grid_data->owning_view.lock() == obj->data) { - obj->data->grid_data->owning_view.reset(); + // dirty notifications. unregisterView matches by identity, so it's + // harmless (a no-op) if this view was never registered. + if (obj->data && obj->data->grid_data && obj->data.use_count() <= 1) { + obj->data->grid_data->unregisterView(obj->data.get()); } obj->data.reset(); Py_TYPE(self)->tp_free(self); @@ -212,6 +265,21 @@ namespace mcrfpydef { if (obj->data && obj->data->cached_grid_wrapper) { Py_VISIT(obj->data->cached_grid_wrapper); } + // #355: cell callbacks now live on the view. + if (obj->data) { + if (obj->data->on_cell_enter_callable) { + PyObject* cb = obj->data->on_cell_enter_callable->borrow(); + if (cb && cb != Py_None) Py_VISIT(cb); + } + if (obj->data->on_cell_exit_callable) { + PyObject* cb = obj->data->on_cell_exit_callable->borrow(); + if (cb && cb != Py_None) Py_VISIT(cb); + } + if (obj->data->on_cell_click_callable) { + PyObject* cb = obj->data->on_cell_click_callable->borrow(); + if (cb && cb != Py_None) Py_VISIT(cb); + } + } return 0; }, .tp_clear = [](PyObject* self) -> int { @@ -220,6 +288,10 @@ namespace mcrfpydef { obj->data->click_unregister(); // #348: drop the persistent wrapper; get_grid rebuilds on demand. Py_CLEAR(obj->data->cached_grid_wrapper); + // #355: release cell callbacks (breaks closure->grid cycles). + obj->data->on_cell_enter_callable.reset(); + obj->data->on_cell_exit_callable.reset(); + obj->data->on_cell_click_callable.reset(); } return 0; }, diff --git a/tests/regression/issue_355_camera_rotation_hit_test.py b/tests/regression/issue_355_camera_rotation_hit_test.py new file mode 100644 index 0000000..66b3b53 --- /dev/null +++ b/tests/regression/issue_355_camera_rotation_hit_test.py @@ -0,0 +1,190 @@ +#!/usr/bin/env python3 +"""Regression test for #355 - cell hit testing under camera_rotation. + +UIGridView::localToGridWorld() rasterizes-then-rotates in render(), but the hit +test used to skip the rotation entirely (and used the widget size instead of the +rotated AABB). With camera_rotation != 0 every cell handed to on_cell_click / +on_cell_enter / on_cell_exit / hovered_cell was the cell that WOULD be under the +mouse if the camera were unrotated -- plausible-looking, silently wrong data. +Before #355 all grid input was dead, so this ships as new behavior; it has to be +right. + +GROUND TRUTH IS THE RENDERED IMAGE, not a re-derivation of the camera math: one +cell is painted pure red by a ColorLayer, the frame is screenshotted, the red +pixels are located by decoding the PNG, and the click is aimed at their centroid. +The cell reported back by on_cell_click must be the red cell. +""" +import sys +import os +import zlib +import struct +import tempfile + +import mcrfpy +from mcrfpy import automation + +CELL = 16 +TMPDIR = tempfile.mkdtemp(prefix="mcrf355rot_") +FAILURES = [] + + +def check(cond, msg): + if not cond: + print("FAIL: %s" % msg, file=sys.stderr) + FAILURES.append(msg) + + +# --------------------------------------------------------------------------- # +# Minimal PNG reader (stdlib only): 8-bit RGB/RGBA, non-interlaced -- what the +# engine's screenshot encoder emits. +# --------------------------------------------------------------------------- # +def read_png(path): + with open(path, "rb") as f: + data = f.read() + assert data[:8] == b"\x89PNG\r\n\x1a\n", "not a PNG" + pos = 8 + idat = b"" + width = height = depth = color = None + while pos < len(data): + (length,) = struct.unpack(">I", data[pos:pos + 4]) + ctype = data[pos + 4:pos + 8] + chunk = data[pos + 8:pos + 8 + length] + pos += 12 + length + if ctype == b"IHDR": + width, height, depth, color, _, _, interlace = struct.unpack(">IIBBBBB", chunk) + assert depth == 8, "unexpected bit depth %d" % depth + assert color in (2, 6), "unexpected color type %d" % color + assert interlace == 0, "interlaced PNG not supported" + elif ctype == b"IDAT": + idat += chunk + elif ctype == b"IEND": + break + + raw = zlib.decompress(idat) + channels = 3 if color == 2 else 4 + stride = width * channels + out = bytearray(height * stride) + prev = bytearray(stride) + p = 0 + for y in range(height): + filt = raw[p] + p += 1 + line = bytearray(raw[p:p + stride]) + p += stride + if filt == 1: # Sub + for i in range(channels, stride): + line[i] = (line[i] + line[i - channels]) & 0xFF + elif filt == 2: # Up + for i in range(stride): + line[i] = (line[i] + prev[i]) & 0xFF + elif filt == 3: # Average + for i in range(stride): + a = line[i - channels] if i >= channels else 0 + line[i] = (line[i] + ((a + prev[i]) >> 1)) & 0xFF + elif filt == 4: # Paeth + for i in range(stride): + a = line[i - channels] if i >= channels else 0 + b = prev[i] + c = prev[i - channels] if i >= channels else 0 + pa, pb, pc = abs(b - c), abs(a - c), abs(a + b - 2 * c) + pr = a if (pa <= pb and pa <= pc) else (b if pb <= pc else c) + line[i] = (line[i] + pr) & 0xFF + elif filt != 0: + raise AssertionError("bad PNG filter %d" % filt) + out[y * stride:(y + 1) * stride] = line + prev = line + return width, height, channels, bytes(out) + + +def red_centroid(path): + """Centroid of pure-red pixels in the screenshot, or None.""" + w, h, ch, px = read_png(path) + sx = sy = n = 0 + for y in range(h): + row = y * w * ch + for x in range(w): + i = row + x * ch + if px[i] > 200 and px[i + 1] < 60 and px[i + 2] < 60: + sx += x + sy += y + n += 1 + if n == 0: + return None + return (sx / n, sy / n, n) + + +def build_scene(rotation): + scene = mcrfpy.Scene("rot%d" % int(rotation)) + scene.activate() + # 5x5 cells of 16px = 80x80 of content; widget is 80x80 and the camera is + # centered, so content exactly fills the widget at zoom 1. + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(80, 80)) + scene.children.append(grid) + grid.center = (40, 40) + grid.zoom = 1.0 + + layer = mcrfpy.ColorLayer(z_index=-1, grid_size=(5, 5)) + grid.add_layer(layer) + for x in range(5): + for y in range(5): + layer.set((x, y), mcrfpy.Color(20, 20, 20)) + layer.set(RED_CELL, mcrfpy.Color(255, 0, 0)) + + grid.camera_rotation = rotation + return scene, grid + + +RED_CELL = (0, 1) # off-center and off-diagonal: distinguishable under any rotation + + +def run_case(rotation): + scene, grid = build_scene(rotation) + + clicks = [] + grid.on_cell_click = lambda pos, button, action: clicks.append((int(pos.x), int(pos.y))) + + path = os.path.join(TMPDIR, "rot%d.png" % int(rotation)) + automation.screenshot(path) # headless screenshot is synchronous (#153) + + c = red_centroid(path) + check(c is not None, "[rot=%s] red marker cell was not rendered at all" % rotation) + if c is None: + return + cx, cy, n = c + check(n > 100, "[rot=%s] red marker too small (%d px) to aim at" % (rotation, n)) + + automation.click((int(round(cx)), int(round(cy)))) + check(len(clicks) >= 1, + "[rot=%s] clicking the visible red cell fired no on_cell_click" % rotation) + if clicks: + check(clicks[0] == RED_CELL, + "[rot=%s] clicked the pixel where cell %s is DRAWN (%.1f,%.1f); " + "on_cell_click reported %s" % (rotation, RED_CELL, cx, cy, clicks[0])) + + automation.moveTo((int(round(cx)), int(round(cy)))) + check(grid.hovered_cell is not None and tuple(grid.hovered_cell) == RED_CELL, + "[rot=%s] hovered_cell over the drawn red cell should be %s, got %s" + % (rotation, RED_CELL, grid.hovered_cell)) + + +def main(): + for rotation in (0.0, 90.0, 180.0, 270.0, 45.0): + run_case(rotation) + + if FAILURES: + print("\n%d FAILURE(S)" % len(FAILURES), file=sys.stderr) + sys.exit(1) + print("PASS") + sys.exit(0) + + +if __name__ == "__main__": + try: + main() + except SystemExit: + raise + except Exception as e: + print("\nTEST CRASHED: %s" % e, file=sys.stderr) + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/regression/issue_355_grid_cell_dispatch_test.py b/tests/regression/issue_355_grid_cell_dispatch_test.py new file mode 100644 index 0000000..b5882a2 --- /dev/null +++ b/tests/regression/issue_355_grid_cell_dispatch_test.py @@ -0,0 +1,300 @@ +#!/usr/bin/env python3 +"""Regression test for #355: grid cell input dispatch (click + hover). + +Before #355, cell input was owned by GridData/UIGrid and PyScene gated it on +derived_type() == UIGRID. But mcrfpy.Grid IS a UIGridView (UIGRIDVIEW), so every +one of those gates was dead: on_cell_click / on_cell_enter / on_cell_exit / +hovered_cell never fired for any user-reachable Grid. + +Input now lives on UIGridView (the object that owns the camera), dispatched via +the UIDrawable::dispatchCellClick / updateHover virtuals. + +automation.click()/moveTo() reach PyScene::do_mouse_input / do_mouse_hover +synchronously in headless mode, so no mcrfpy.step() is needed for dispatch. + +NOT covered (deliberately): entity clicks. UIEntity exposes no on_click/sprite +binding, so entity->sprite.click_callable is unreachable from Python. The entity +branch of UIGridView::click_at is implemented but dead until that binding exists. +""" +import sys +import mcrfpy +from mcrfpy import automation + +CELL = 16 # default texture cell size (px) +FAILURES = [] + + +def check(cond, msg): + if not cond: + print(f"FAIL: {msg}", file=sys.stderr) + FAILURES.append(msg) + + +def cell_tuple(hovered): + """hovered_cell as a comparable tuple; None stays None (never raises).""" + return None if hovered is None else tuple(hovered) + + +def screen_of_cell(grid, cx, cy, zoom=1.0): + """Screen coords of the center of cell (cx, cy), using the view's own camera + formula: left_spritepixels = center_x - w/(2*zoom); screen = pos + (gw - lsp)*zoom + """ + ox, oy = grid.x, grid.y + w, h = grid.w, grid.h + left_sp = int(grid.center_x - (w / 2.0 / zoom)) + top_sp = int(grid.center_y - (h / 2.0 / zoom)) + gwx = (cx + 0.5) * CELL + gwy = (cy + 0.5) * CELL + return (ox + (gwx - left_sp) * zoom, oy + (gwy - top_sp) * zoom) + + +def case_a_property_click(): + scene = mcrfpy.Scene("a_click") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + grid.center_camera((2.5, 2.5)) + + events = [] + grid.on_cell_click = lambda pos, button, action: events.append((pos.x, pos.y, button, action)) + + for cell in [(0, 0), (2, 3), (4, 4)]: + events.clear() + automation.click(screen_of_cell(grid, *cell)) + check(len(events) >= 1, f"[a] on_cell_click did not fire for cell {cell}") + if not events: + continue + cx, cy, button, action = events[0] + check((cx, cy) == (float(cell[0]), float(cell[1])), + f"[a] expected cell {cell}, got ({cx},{cy})") + check(button == mcrfpy.MouseButton.LEFT, f"[a] expected LEFT, got {button}") + check(action == mcrfpy.InputState.PRESSED, f"[a] expected PRESSED first, got {action}") + + +def case_b_panned_zoomed(): + scene = mcrfpy.Scene("b_zoom") + scene.activate() + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + grid.zoom = 2.0 + grid.center = (7 * CELL, 5 * CELL) # pan the camera off the default + + events = [] + grid.on_cell_click = lambda pos, button, action: events.append((pos.x, pos.y)) + + for cell in [(6, 4), (7, 5), (8, 6)]: + events.clear() + automation.click(screen_of_cell(grid, *cell, zoom=2.0)) + check(len(events) >= 1, f"[b] on_cell_click did not fire for panned+zoomed cell {cell}") + if events: + check(events[0] == (float(cell[0]), float(cell[1])), + f"[b] panned+zoomed: expected cell {cell}, got {events[0]}") + + +def case_c_hover(): + scene = mcrfpy.Scene("c_hover") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + entered, exited = [], [] + grid.on_cell_enter = lambda pos: entered.append((pos.x, pos.y)) + grid.on_cell_exit = lambda pos: exited.append((pos.x, pos.y)) + + A, B = (1, 1), (3, 2) + + automation.moveTo(screen_of_cell(grid, *A)) + check(entered == [(1.0, 1.0)], f"[c] expected one enter for {A}, got {entered}") + check(cell_tuple(grid.hovered_cell) == A, f"[c] hovered_cell should be {A}, got {grid.hovered_cell}") + + entered.clear() + automation.moveTo(screen_of_cell(grid, *B)) + check(exited == [(1.0, 1.0)], f"[c] expected exit for {A}, got {exited}") + check(entered == [(3.0, 2.0)], f"[c] expected enter for {B}, got {entered}") + check(cell_tuple(grid.hovered_cell) == B, f"[c] hovered_cell should be {B}, got {grid.hovered_cell}") + + entered.clear() + exited.clear() + automation.moveTo((10, 10)) # outside the grid + check(exited == [(3.0, 2.0)], f"[c] expected exit for {B} on leaving grid, got {exited}") + check(entered == [], f"[c] no enter expected outside the grid, got {entered}") + check(grid.hovered_cell is None, f"[c] hovered_cell should be None outside, got {grid.hovered_cell}") + + +def case_d_subclass(): + calls = [] + + class MyGrid(mcrfpy.Grid): + def on_cell_click(self, pos, button, action): + calls.append(("click", pos.x, pos.y)) + + def on_cell_enter(self, pos): + calls.append(("enter", pos.x, pos.y)) + + def on_cell_exit(self, pos): + calls.append(("exit", pos.x, pos.y)) + + scene = mcrfpy.Scene("d_subclass") + scene.activate() + grid = MyGrid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + automation.moveTo(screen_of_cell(grid, 1, 1)) + automation.moveTo(screen_of_cell(grid, 2, 2)) + automation.click(screen_of_cell(grid, 2, 2)) + + check(("enter", 1.0, 1.0) in calls, f"[d] subclass on_cell_enter(1,1) did not fire: {calls}") + check(("exit", 1.0, 1.0) in calls, f"[d] subclass on_cell_exit(1,1) did not fire: {calls}") + check(("enter", 2.0, 2.0) in calls, f"[d] subclass on_cell_enter(2,2) did not fire: {calls}") + check(("click", 2.0, 2.0) in calls, f"[d] subclass on_cell_click(2,2) did not fire: {calls}") + + +def case_e_child_consumes_click(): + scene = mcrfpy.Scene("e_child") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + cell_clicks, frame_clicks = [], [] + grid.on_cell_click = lambda pos, button, action: cell_clicks.append((pos.x, pos.y)) + + # #360: grid children are positioned in GRID-WORLD PIXEL coordinates. + gx, gy = 3, 1 + frame = mcrfpy.Frame(pos=(gx * CELL, gy * CELL), size=(CELL, CELL)) + frame.on_click = lambda pos, button, action: frame_clicks.append((pos.x, pos.y)) + grid.children.append(frame) + + automation.click(screen_of_cell(grid, gx, gy)) + check(len(frame_clicks) >= 1, + f"[e] grid child's on_click did not fire (grid-world child coords broken?): {frame_clicks}") + check(cell_clicks == [], + f"[e] child consumed the click, so on_cell_click must NOT fire; got {cell_clicks}") + + # And a click on a cell NOT covered by the child still reaches on_cell_click. + automation.click(screen_of_cell(grid, 0, 4)) + check(cell_clicks and cell_clicks[0] == (0.0, 4.0), + f"[e] cell outside the child should still fire on_cell_click; got {cell_clicks}") + + +def case_f_two_views_one_griddata(): + scene = mcrfpy.Scene("f_views") + scene.activate() + g = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(g) + + v2 = mcrfpy.GridView(grid=g.grid_data, pos=(400, 100), size=(200, 200)) + scene.children.append(v2) + + g_events, v_events = [], [] + g.on_cell_enter = lambda pos: g_events.append(("enter", pos.x, pos.y)) + g.on_cell_exit = lambda pos: g_events.append(("exit", pos.x, pos.y)) + v2.on_cell_enter = lambda pos: v_events.append(("enter", pos.x, pos.y)) + v2.on_cell_exit = lambda pos: v_events.append(("exit", pos.x, pos.y)) + + # Hover over v2 only. + automation.moveTo(screen_of_cell(v2, 2, 2)) + check(v_events == [("enter", 2.0, 2.0)], f"[f] v2 should have entered (2,2); got {v_events}") + check(g_events == [], f"[f] hovering v2 must not fire events on g; got {g_events}") + check(g.hovered_cell is None, f"[f] g.hovered_cell must stay None; got {g.hovered_cell}") + check(cell_tuple(v2.hovered_cell) == (2, 2), f"[f] v2.hovered_cell should be (2,2); got {v2.hovered_cell}") + + # Move to g: v2 exits, g enters. No spurious cross-talk. + v_events.clear() + g_events.clear() + automation.moveTo(screen_of_cell(g, 1, 3)) + check(v_events == [("exit", 2.0, 2.0)], f"[f] v2 should have exited (2,2); got {v_events}") + check(g_events == [("enter", 1.0, 3.0)], f"[f] g should have entered (1,3); got {g_events}") + check(v2.hovered_cell is None, f"[f] v2.hovered_cell should be None now; got {v2.hovered_cell}") + check(cell_tuple(g.hovered_cell) == (1, 3), f"[f] g.hovered_cell should be (1,3); got {g.hovered_cell}") + + # Back to v2: each view tracks its own hover, no ping-pong on the other. + v_events.clear() + g_events.clear() + automation.moveTo(screen_of_cell(v2, 2, 2)) + check(v_events == [("enter", 2.0, 2.0)], f"[f] v2 re-enter (2,2) expected; got {v_events}") + check(g_events == [("exit", 1.0, 3.0)], f"[f] g exit (1,3) expected; got {g_events}") + + +def case_g_child_hover(): + """Hover must reach grid children, exactly as click already does. + + do_mouse_hover used to recurse only into UIFRAME children, so a drawable in + grid.children could receive on_click but never on_enter/on_exit/on_move, and + its .hovered flag was stuck False -- callbacks that exist on the API surface + but can never fire. The hover walk now descends through the view's camera + (grid-world pixel coords), the same transform click_at uses. + """ + scene = mcrfpy.Scene("g_child_hover") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + entered, exited, moved = [], [], [] + gx, gy = 3, 1 + frame = mcrfpy.Frame(pos=(gx * CELL, gy * CELL), size=(CELL, CELL)) # grid-world coords + frame.on_enter = lambda pos: entered.append((pos.x, pos.y)) + frame.on_exit = lambda pos: exited.append((pos.x, pos.y)) + frame.on_move = lambda pos: moved.append((pos.x, pos.y)) + grid.children.append(frame) + + # Mouse onto the cell the child covers. + automation.moveTo(screen_of_cell(grid, gx, gy)) + check(len(entered) == 1, f"[g] grid child's on_enter did not fire: {entered}") + check(frame.hovered is True, f"[g] grid child's .hovered should be True, got {frame.hovered}") + check(len(moved) == 1, f"[g] grid child's on_move did not fire while inside: {moved}") + + # Mouse to a different cell inside the grid but outside the child. + automation.moveTo(screen_of_cell(grid, 0, 4)) + check(len(exited) == 1, f"[g] grid child's on_exit did not fire on leaving it: {exited}") + check(frame.hovered is False, f"[g] grid child's .hovered should be False, got {frame.hovered}") + + # Re-enter, then leave the grid widget entirely: the child must still exit, + # and must NOT be re-entered by a point outside the view that happens to map + # into grid-world space over the child. + entered.clear() + exited.clear() + automation.moveTo(screen_of_cell(grid, gx, gy)) + check(len(entered) == 1, f"[g] grid child re-enter expected, got {entered}") + automation.moveTo((10, 10)) # far outside the grid widget + check(len(exited) == 1, f"[g] leaving the grid must exit the hovered child: {exited}") + check(frame.hovered is False, "[g] child still hovered after mouse left the grid") + + # Panning the camera moves the child under a DIFFERENT screen pixel; hover + # must follow the camera (the whole point of routing through localToGridWorld). + entered.clear() + grid.zoom = 2.0 + grid.center = (gx * CELL, gy * CELL) # child centered in the widget + automation.moveTo((int(grid.x + grid.w / 2), int(grid.y + grid.h / 2))) + check(len(entered) == 1, + f"[g] after pan+zoom, hover did not track the child through the camera: {entered}") + check(frame.hovered is True, "[g] child not hovered at its new on-screen position") + + +def main(): + case_a_property_click() + case_b_panned_zoomed() + case_c_hover() + case_d_subclass() + case_e_child_consumes_click() + case_f_two_views_one_griddata() + case_g_child_hover() + + if FAILURES: + print(f"\n{len(FAILURES)} FAILURE(S)", file=sys.stderr) + sys.exit(1) + print("PASS") + sys.exit(0) + + +if __name__ == "__main__": + # --exec does NOT turn an unhandled exception into a non-zero exit code, so a + # crashing test would otherwise report success. Translate explicitly. + try: + main() + except SystemExit: + raise + except Exception as e: + print(f"\nTEST CRASHED: {e}", file=sys.stderr) + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/regression/issue_355_grid_input_test.py b/tests/regression/issue_355_grid_input_test.py new file mode 100644 index 0000000..39d68b4 --- /dev/null +++ b/tests/regression/issue_355_grid_input_test.py @@ -0,0 +1,223 @@ +#!/usr/bin/env python3 +"""Regression test for #355 - mcrfpy.Grid input is entirely dead. + +Since the #252 Grid/GridView split, mcrfpy.Grid(...) constructs a +UIGridView (PyObjectsEnum::UIGRIDVIEW). Every input dispatch site that +matters for grid cell/child/entity interactivity (PyScene::do_mouse_input, +PyScene::do_mouse_hover's processHover, and the subclass-method lookup in +UIGrid::fireCellClick) still gates on derived_type() == UIGRID -- the +*internal* _GridData type nothing user-visible is ever an instance of. As a +result: + - on_cell_click / on_cell_enter / on_cell_exit never fire on a real Grid. + - Child drawables appended to grid.children never receive their own + on_click. + - A Python subclass of mcrfpy.Grid that overrides on_cell_click as a + *method* (rather than assigning the on_cell_click property) is doubly + broken: is_python_subclass/serial_number tracking for that lookup is + keyed off the internal _GridData wrapper, not the public Grid/GridView + instance a subclass is actually built from. + +Each check below is a hard assertion (sys.exit via unhandled AssertionError +on failure) -- no "PARTIAL" outs. + +Coordinate math: with an unmodified camera and an explicit `size=`, +UIGridView's default center is size/(2*zoom) == the viewport's own +half-width/half-height, which cancels the half-width term in the +screen->cell formula, so grid_space == local screen-relative offset +whenever zoom==1. cell = floor(grid_space / cell_pixel_size), with the +16x16 default texture. Case (b) explicitly overrides grid.center/grid.zoom +to non-default values and uses the full formula +(grid_space = (local - half_width) / zoom + center_x) so it is a genuine +discriminator against a fix that reads the wrong (stale, internal +_GridData-owned) camera copy instead of the public Grid/GridView's own +center_x/center_y/zoom. +""" +import sys +import mcrfpy +from mcrfpy import automation + + +def test_a_plain_cell_click(): + """(a) on_cell_click fires with the correct cell for a click on a plain Grid.""" + print("(a) plain grid cell click...") + scene = mcrfpy.Scene("issue355_a") + ui = scene.children + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + ui.append(grid) + + clicks = [] + def on_cell_click(cell_pos, button, action): + clicks.append((cell_pos.x, cell_pos.y, button, action)) + grid.on_cell_click = on_cell_click + + # local=(36,52) -> cell (2,3), see module docstring for the math. + automation.click((136, 152)) + mcrfpy.step(0.05) + + assert len(clicks) >= 1, f"on_cell_click never fired; clicks={clicks}" + cx, cy, button, action = clicks[0] + assert (cx, cy) == (2, 3), f"expected cell (2,3), got ({cx},{cy})" + assert button == mcrfpy.MouseButton.LEFT + assert action == mcrfpy.InputState.PRESSED + print(" OK") + + +def test_b_panned_zoomed_cell_click(): + """(b) on_cell_click reports the CORRECT cell after grid.center/grid.zoom + are set to non-default values -- discriminates against a fix that reads + a stale internal camera copy instead of the public Grid's own.""" + print("(b) panned+zoomed grid cell click...") + scene = mcrfpy.Scene("issue355_b") + ui = scene.children + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(50, 50), size=(200, 200)) + ui.append(grid) + + grid.zoom = 2.0 + grid.center = (88, 88) # pixel-space camera center (== tile (5.5,5.5) at 16px cells) + assert grid.zoom == 2.0 + assert (grid.center.x, grid.center.y) == (88, 88), \ + f"grid.center did not take the assigned value: {grid.center}" + + clicks = [] + def on_cell_click(cell_pos, button, action): + clicks.append((cell_pos.x, cell_pos.y)) + grid.on_cell_click = on_cell_click + + # local=(60,60); grid_space = (60-100)/2.0 + 88 = 68; cell = floor(68/16) = 4 + automation.click((110, 110)) + mcrfpy.step(0.05) + + assert len(clicks) >= 1, f"on_cell_click never fired under pan/zoom; clicks={clicks}" + assert clicks[0] == (4, 4), ( + f"expected cell (4,4) under grid.center=(88,88)/grid.zoom=2.0, got {clicks[0]} " + "(a stale-camera fix would report (3,3) instead)" + ) + print(" OK") + + +def test_c_hover_boundary(): + """(c) on_cell_enter / on_cell_exit fire on hover across a cell boundary.""" + print("(c) cell hover enter/exit across a boundary...") + scene = mcrfpy.Scene("issue355_c") + ui = scene.children + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + ui.append(grid) + + enters = [] + exits = [] + grid.on_cell_enter = lambda pos: enters.append((pos.x, pos.y)) + grid.on_cell_exit = lambda pos: exits.append((pos.x, pos.y)) + + # local=(40,40) -> cell (2,2); local=(56,40) -> cell (3,2) + automation.moveTo((140, 140)) + mcrfpy.step(0.05) + automation.moveTo((156, 140)) + mcrfpy.step(0.05) + + assert (2, 2) in enters, f"on_cell_enter never fired for (2,2); enters={enters}" + assert (2, 2) in exits, f"on_cell_exit never fired for (2,2); exits={exits}" + assert (3, 2) in enters, f"on_cell_enter never fired for (3,2); enters={enters}" + print(" OK") + + +def test_d_child_drawable_click(): + """(d) A Frame child of grid.children receives its own on_click when + clicked, at the screen pixel derived from the grid's camera transform + (children live in grid-world pixel coordinates, not screen pixels).""" + print("(d) child drawable click (grid-world pixel coords via camera)...") + scene = mcrfpy.Scene("issue355_d") + ui = scene.children + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(50, 50), size=(200, 200)) + ui.append(grid) + + # Grid-world pixel box [90,110]x[90,110]. Default camera (center=(100,100), + # zoom=1) makes grid_space == local, so: + # screen (150,150) -> local (100,100) -> world (100,100): INSIDE the frame + # screen (120,120) -> local (70,70) -> world (70,70): OUTSIDE the frame + frame = mcrfpy.Frame(pos=(90, 90), size=(20, 20)) + grid.children.append(frame) + + frame_clicks = [] + def on_frame_click(pos, button, action): + frame_clicks.append((pos.x, pos.y)) + frame.on_click = on_frame_click + + # Miss first: proves the screen point isn't just always hitting the frame. + automation.click((120, 120)) + mcrfpy.step(0.05) + assert len(frame_clicks) == 0, ( + f"frame.on_click fired for a screen point outside its grid-world bounds: {frame_clicks}" + ) + + automation.click((150, 150)) + mcrfpy.step(0.05) + assert len(frame_clicks) >= 1, ( + "frame.on_click never fired for a click on a Frame in grid.children " + "at the correctly camera-transformed screen pixel" + ) + print(" OK") + + +def test_e_subclass_method_override(): + """(e) A Python subclass of mcrfpy.Grid overriding on_cell_click as a + METHOD (not the property) has that method invoked.""" + print("(e) Grid subclass on_cell_click method override...") + + class ClickCountingGrid(mcrfpy.Grid): + def __init__(self, *a, **kw): + super().__init__(*a, **kw) + self.clicked_cells = [] + + def on_cell_click(self, cell_pos, button, action): + self.clicked_cells.append((cell_pos.x, cell_pos.y)) + + scene = mcrfpy.Scene("issue355_e") + ui = scene.children + mcrfpy.current_scene = scene + + mg = ClickCountingGrid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + ui.append(mg) + + # local=(36,52) -> cell (2,3), same math as (a). + automation.click((136, 152)) + mcrfpy.step(0.05) + + assert len(mg.clicked_cells) >= 1, ( + "ClickCountingGrid.on_cell_click (method override) never fired" + ) + assert mg.clicked_cells[0] == (2, 3), \ + f"expected cell (2,3), got {mg.clicked_cells[0]}" + print(" OK") + + +def main(): + test_a_plain_cell_click() + test_b_panned_zoomed_cell_click() + test_c_hover_boundary() + test_d_child_drawable_click() + test_e_subclass_method_override() + print("PASS") + + +if __name__ == "__main__": + # NOTE: --exec does not turn an unhandled Python exception into a + # non-zero process exit code (verified empirically), so failures MUST + # be caught and translated to sys.exit(1) explicitly here -- letting a + # bare AssertionError propagate would silently "pass" the suite, which + # is exactly the masking anti-pattern #355 shipped behind. + try: + main() + sys.exit(0) + except Exception as e: + print(f"\nTEST FAILED: {e}") + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/regression/issue_355_gridview_position_sync_test.py b/tests/regression/issue_355_gridview_position_sync_test.py new file mode 100644 index 0000000..42984c9 --- /dev/null +++ b/tests/regression/issue_355_gridview_position_sync_test.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 +"""Regression test for #355 (prerequisite): UIGridView box/position desync. + +UIGridView overrode move()/resize() but NOT onPositionChanged(), so assigning +grid.pos / grid.x / grid.y updated UIDrawable::position while the sf::RectangleShape +`box` -- which render() and get_bounds() and every hit test read -- stayed at the +construction-time origin. A repositioned Grid rendered at the stale spot and its +cell hit testing was meaningless. +""" +import sys +import mcrfpy +from mcrfpy import automation + +CELL = 16 # default texture cell size + + +def fail(msg): + print(f"FAIL: {msg}", file=sys.stderr) + sys.exit(1) + + +def main(): + scene = mcrfpy.Scene("pos_sync") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + # 1. box follows position + grid.pos = (300, 50) + origin, size = grid.bounds # bounds == (pos: Vector, size: Vector), read from `box` + if (origin.x, origin.y) != (300, 50): + fail(f"grid.bounds should follow grid.pos; expected origin (300,50), got ({origin.x},{origin.y})") + if (size.x, size.y) != (200, 200): + fail(f"grid.bounds size changed unexpectedly: ({size.x},{size.y})") + + clicks = [] + grid.on_cell_click = lambda pos, button, action: clicks.append((pos.x, pos.y)) + + # 2. a click at the NEW location resolves the correct cell. + # center defaults to size/2 => left_spritepixels == 0 => grid-world == local. + # local (40, 40) -> cell (2, 2) + automation.click((340, 90)) + if not clicks: + fail("on_cell_click did not fire for a click inside the repositioned grid") + if clicks[0] != (2.0, 2.0): + fail(f"expected cell (2,2) at the new position, got {clicks[0]}") + + # 3. a click at the OLD location resolves nothing. + clicks.clear() + automation.click((140, 140)) + if clicks: + fail(f"click at the old (vacated) position should not hit the grid; got {clicks}") + + print("PASS") + sys.exit(0) + + +if __name__ == "__main__": + main() diff --git a/tests/regression/issue_355_perspective_overlay_test.py b/tests/regression/issue_355_perspective_overlay_test.py new file mode 100644 index 0000000..03d4741 --- /dev/null +++ b/tests/regression/issue_355_perspective_overlay_test.py @@ -0,0 +1,103 @@ +#!/usr/bin/env python3 +"""Regression test for #355 - grid.perspective actually renders fog-of-war. + +After the #252 Grid/GridView split, mcrfpy.Grid IS a UIGridView and the FOV +overlay is drawn by UIGridView::render(). But `grid.perspective = entity` fell +through getattro delegation to the internal _GridData and wrote UIGrid's copy of +the perspective state, which render() never reads -- the view gated the overlay +on its OWN perspective_enabled member, which nothing ever set. Result: +perspective_map computed correctly, grid.perspective_enabled read True, and not +a single fog pixel was drawn. + +The state now lives on the view (single owner). This test asserts on PIXELS, not +on the property round-trip -- the property round-trip is exactly what lied. +""" +import sys +import os +import tempfile + +import mcrfpy +from mcrfpy import automation + +TMPDIR = tempfile.mkdtemp(prefix="mcrf355persp_") +_counter = 0 + + +def shot(): + """Headless screenshot is synchronous (#153): render + capture inline.""" + global _counter + path = os.path.join(TMPDIR, "p%d.png" % _counter) + _counter += 1 + automation.screenshot(path) + with open(path, "rb") as f: + return f.read() + + +def main(): + texture = mcrfpy.Texture("assets/kenney_tinydungeon.png", 16, 16) + + scene = mcrfpy.Scene("persp355") + scene.activate() + + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(160, 160), texture=texture) + scene.children.append(grid) + + tiles = mcrfpy.TileLayer(name="terrain", z_index=-2, texture=texture) + grid.add_layer(tiles) + tiles.fill(5) + + # Opaque everywhere except the entity's own cell -> FOV is a tiny island, so + # the vast majority of the map must be covered by the unknown/black overlay. + for x in range(10): + for y in range(10): + grid.at(x, y).transparent = False + + e = mcrfpy.Entity((1, 1), grid=grid) + e.sprite_index = 5 + + omniscient = shot() + + grid.perspective = e + e.update_visibility() + + assert grid.perspective is e, "grid.perspective did not round-trip the entity" + assert grid.perspective_enabled is True, "assigning perspective must enable it" + + visible = sum(1 for x in range(10) for y in range(10) + if e.perspective_map[x, y] == mcrfpy.Perspective.VISIBLE) + assert 0 < visible < 100, "test setup: expected a partial FOV, got %d visible" % visible + + fogged = shot() + assert fogged != omniscient, ( + "grid.perspective is set and perspective_map has %d/100 visible cells, but the " + "rendered frame is byte-identical to the omniscient one -- the FOV overlay is " + "not being drawn (view's perspective state never set)" % visible + ) + + # Turning perspective back off must restore the omniscient image exactly. + grid.perspective = None + assert grid.perspective_enabled is False, "perspective=None must disable the overlay" + cleared = shot() + assert cleared == omniscient, ( + "clearing grid.perspective did not restore the un-fogged render" + ) + + # perspective_enabled toggles the overlay without clearing the entity. + grid.perspective = e + assert shot() != omniscient, "re-enabling perspective did not re-draw the overlay" + grid.perspective_enabled = False + assert grid.perspective is e, "perspective_enabled=False must not clear the entity" + assert shot() == omniscient, "perspective_enabled=False did not remove the overlay" + + print("PASS") + + +if __name__ == "__main__": + try: + main() + sys.exit(0) + except Exception as e: + print("\nTEST FAILED: %s" % e) + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/regression/issue_359_shared_griddata_test.py b/tests/regression/issue_359_shared_griddata_test.py new file mode 100644 index 0000000..47ccce2 --- /dev/null +++ b/tests/regression/issue_359_shared_griddata_test.py @@ -0,0 +1,191 @@ +"""Regression test for #359 - the shared-data grid path is unwired. + +Two concrete defects, both in the `Grid(grid=other)` shared-GridData path +(the whole point of the #252 split -- split-screen, minimap, multiple +cameras over one dataset): + + (a) UIGridView::init_explicit_view never registered the new view with the + GridData it attaches to, so GridData::markDirty()/markCompositeDirty() + (which push markContentDirty/markCompositeDirty up a view's OWN + ancestor chain -- e.g. a Frame(cache_subtree=True) wrapping that view) + never reached a secondary view's ancestors. Note this is NOT the same + thing as the #351 render early-out itself: UIGridView::render() polls + GridData::content_generation directly every time it actually runs, so + a bare secondary view (no cached ancestor) already re-rasters + correctly regardless of this bug. The bug only surfaces when a + secondary view sits under a render-texture-caching ancestor, because + that ancestor decides whether to invoke the child's render() AT ALL -- + a push notification, not a poll, is required to reach it. Test 3 below + is the discriminator: it fails (stale cache) on the pre-fix code and + passes once init_explicit_view registers the view. + + (b) PyUIGridObject::view (the internal `_GridData.view` shim, meant to + point back at "the" GridView) was placement-new'd but never assigned + anywhere reachable from Python -- `_GridData.view` was always None. + Given `_GridData` is internal (never exported to the mcrfpy module + namespace), the fix deletes the field/getter outright rather than + wiring it up (a single view back-pointer is structurally wrong once N + views can share one GridData; see GridData::views / primaryView() for + the replacement, exercised implicitly by test 2). Test 4 confirms the + dead property is gone, not silently still None. + +Design note carried over from the fix: GridData::views is a *list*, not a +single pointer, specifically because N views can share one GridData. Index 0 +is guaranteed (by construction: a fresh GridData is only ever produced by +Grid()'s factory path, `init_with_data`; `init_explicit_view` can only ATTACH +to an already-existing GridData) to be the view that created the data, so +UIEntity.grid identity (test 2) stays deterministic even with secondary +views registered -- not an arbitrary pick from an unordered set. +""" +import sys +import os +import tempfile +import mcrfpy +from mcrfpy import automation + +TMPDIR = tempfile.mkdtemp(prefix="mcrf359_") +_counter = 0 + + +def shot(): + """Render the active scene to PNG and return its bytes (headless + screenshot is synchronous -- see #351's test for the same pattern).""" + global _counter + path = os.path.join(TMPDIR, "s%d.png" % _counter) + _counter += 1 + automation.screenshot(path) + with open(path, "rb") as f: + return f.read() + + +def test_1_two_views_render_shared_mutations(): + """Two Grid views over one GridData, with different camera params, both + reflect a mutation made through a third path (this is the exact scenario + the #359 issue's own test description asks for).""" + print("(1) two views over one GridData both render mutations...") + texture = mcrfpy.Texture("assets/kenney_tinydungeon.png", 16, 16) + + scene_a = mcrfpy.Scene("issue359_1a") + grid_a = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(160, 160), texture=texture) + scene_a.children.append(grid_a) + + scene_b = mcrfpy.Scene("issue359_1b") + grid_b = mcrfpy.Grid(grid=grid_a, pos=(0, 0), size=(160, 160)) + grid_b.zoom = 1.5 + grid_b.center = (64, 64) + scene_b.children.append(grid_b) + + mcrfpy.current_scene = scene_a + a1 = shot() + mcrfpy.current_scene = scene_b + b1 = shot() + + # Mutate through the shared data (add a visible entity at cell (3,3)). + e = mcrfpy.Entity((3, 3), grid=grid_a) + e.sprite_index = 5 + + mcrfpy.current_scene = scene_a + a2 = shot() + assert a2 != a1, "primary view (grid_a) did not reflect the mutation" + + mcrfpy.current_scene = scene_b + b2 = shot() + assert b2 != b1, "secondary view (grid_b) did not reflect the mutation" + print(" OK") + + +def test_2_entity_grid_identity(): + """entity.grid returns the SAME object as the Grid() that actually + created the data (GridData::views.front()), not the secondary view, not + None, and not a fresh throwaway wrapper -- even once a secondary view is + registered on the same GridData.""" + print("(2) entity.grid identity with a secondary view registered...") + grid_a = mcrfpy.Grid(grid_size=(5, 5)) + grid_b = mcrfpy.Grid(grid=grid_a, pos=(0, 0), size=(80, 80)) # noqa: F841 (keep alive) + + e = mcrfpy.Entity((1, 1), grid=grid_a) + + assert e.grid is grid_a, f"entity.grid identity broken: {e.grid!r} is not grid_a ({grid_a!r})" + assert e.grid is not grid_b, "entity.grid returned the secondary view instead of the creator" + print(" OK") + + +def test_3_ancestor_cache_invalidation_through_secondary_view(): + """The discriminating regression: a SECONDARY view nested inside a + Frame(cache_subtree=True) must have its ancestor's cached subtree + invalidated when the shared GridData mutates, even though the mutation + happens through a DIFFERENT (primary) view/handle. This requires + init_explicit_view to register the secondary view with GridData -- pure + content_generation polling (#351) is not enough, because the caching + Frame decides whether to call the child's render() at all.""" + print("(3) ancestor render-texture cache invalidated via secondary view...") + texture = mcrfpy.Texture("assets/kenney_tinydungeon.png", 16, 16) + + scene = mcrfpy.Scene("issue359_3") + grid_a = mcrfpy.Grid(grid_size=(6, 6), pos=(200, 200), size=(96, 96), texture=texture) + # grid_a deliberately NOT added to this scene -- it exists only to own + # the data and be the mutation path; only the secondary view is visible. + + grid_b = mcrfpy.Grid(grid=grid_a, pos=(0, 0), size=(96, 96)) + + frame = mcrfpy.Frame(pos=(0, 0), size=(96, 96)) + frame.cache_subtree = True + frame.children.append(grid_b) + scene.children.append(frame) + mcrfpy.current_scene = scene + + # First render bakes the Frame's cached subtree (render_dirty starts True). + shot1 = shot() + # Idle render: cache should be stable (sanity check the test methodology). + shot2 = shot() + assert shot1 == shot2, "cache_subtree Frame was not stable across an idle frame (test setup problem)" + + # Mutate the shared GridData through the PRIMARY handle grid_a, NOT the + # secondary view. If grid_b is registered on the GridData, this reaches + # grid_b's own ancestor chain (the cache_subtree Frame) and invalidates it. + e = mcrfpy.Entity((3, 3), grid=grid_a) + e.sprite_index = 5 + + shot3 = shot() + assert shot3 != shot2, ( + "Frame(cache_subtree=True) wrapping the SECONDARY view did not invalidate " + "when the shared GridData mutated through the primary handle -- " + "init_explicit_view is not registering the view with GridData (#359 defect a)" + ) + print(" OK") + + +def test_4_griddata_view_property_removed(): + """_GridData.view (PyUIGridObject::view) is dead: nothing in the + codebase ever assigned it, and _GridData is internal/not exported. The + fix deletes the field and getter outright rather than wiring a + structurally-wrong single back-pointer; confirm it's actually gone, not + silently still None.""" + print("(4) _GridData.view property deleted (not left dangling)...") + grid_a = mcrfpy.Grid(grid_size=(3, 3)) + gd = grid_a.grid_data + assert not hasattr(gd, "view"), ( + "_GridData.view still exists -- #359 defect (b) says delete it " + "(internal type, never wired, N-view sharing makes a single " + "back-pointer wrong) rather than leave it dangling" + ) + print(" OK") + + +def main(): + test_1_two_views_render_shared_mutations() + test_2_entity_grid_identity() + test_3_ancestor_cache_invalidation_through_secondary_view() + test_4_griddata_view_property_removed() + print("PASS") + + +if __name__ == "__main__": + try: + main() + sys.exit(0) + except Exception as e: + print(f"\nTEST FAILED: {e}") + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/snapshots/api_surface.golden.txt b/tests/snapshots/api_surface.golden.txt index e88a497..ec2edd5 100644 --- a/tests/snapshots/api_surface.golden.txt +++ b/tests/snapshots/api_surface.golden.txt @@ -547,8 +547,12 @@ submodule automation prop h: float (rw) prop horiz_margin: float (rw) prop hovered: Any (ro) + prop hovered_cell: tuple | None (ro) prop margin: float (rw) prop name: str (rw) + prop on_cell_click: Callable | None (rw) + prop on_cell_enter: Callable | None (rw) + prop on_cell_exit: Callable | None (rw) prop on_click: Callable | None (rw) prop on_enter: Any (rw) prop on_exit: Any (rw) @@ -556,6 +560,8 @@ submodule automation prop opacity: Any (rw) prop origin: Any (rw) prop parent: Any (rw) + prop perspective: Entity | None (rw) + prop perspective_enabled: bool (rw) prop pos: Vector (rw) prop rotate_with_camera: bool (rw) prop rotation: Any (rw) @@ -587,8 +593,12 @@ submodule automation prop h: float (rw) prop horiz_margin: float (rw) prop hovered: Any (ro) + prop hovered_cell: tuple | None (ro) prop margin: float (rw) prop name: str (rw) + prop on_cell_click: Callable | None (rw) + prop on_cell_enter: Callable | None (rw) + prop on_cell_exit: Callable | None (rw) prop on_click: Callable | None (rw) prop on_enter: Any (rw) prop on_exit: Any (rw) @@ -596,6 +606,8 @@ submodule automation prop opacity: Any (rw) prop origin: Any (rw) prop parent: Any (rw) + prop perspective: Entity | None (rw) + prop perspective_enabled: bool (rw) prop pos: Vector (rw) prop rotate_with_camera: bool (rw) prop rotation: Any (rw) @@ -1127,13 +1139,9 @@ submodule automation prop h: float (rw) prop horiz_margin: float (rw) prop hovered: Any (ro) - prop hovered_cell: tuple | None (ro) prop layers: tuple (ro) prop margin: float (rw) prop name: str (rw) - prop on_cell_click: Callable | None (rw) - prop on_cell_enter: Callable | None (rw) - prop on_cell_exit: Callable | None (rw) prop on_click: Any (rw) prop on_enter: Any (rw) prop on_exit: Any (rw) @@ -1141,8 +1149,6 @@ submodule automation prop opacity: Any (rw) prop origin: Any (rw) prop parent: Any (rw) - prop perspective: Entity | None (rw) - prop perspective_enabled: bool (rw) prop pos: Vector (rw) prop rotate_with_camera: bool (rw) prop rotation: Any (rw) @@ -1151,7 +1157,6 @@ submodule automation prop texture: Texture | None (ro) prop uniforms: Any (ro) prop vert_margin: float (rw) - prop view: GridView | None (ro) prop visible: bool (rw) prop w: float (rw) prop x: float (rw) @@ -1228,7 +1233,7 @@ func tripleClick :: tripleClick(pos: tuple | list | Vector | None = None) -> Non func typewrite :: typewrite(message: str, interval: float = 0.0) -> None === DELEGATION INTEGRITY (Grid instance -> _GridData) === - delegated-resolved: 69/69 + delegated-resolved: 62/62 === WRITABILITY PROBES (#313-touched properties) === Entity.grid: writable diff --git a/tests/unit/test_grid_cell_events.py b/tests/unit/test_grid_cell_events.py index 94902ab..79a3045 100644 --- a/tests/unit/test_grid_cell_events.py +++ b/tests/unit/test_grid_cell_events.py @@ -1,5 +1,22 @@ #!/usr/bin/env python3 -"""Test #142: Grid Cell Mouse Events""" +"""Test #142: Grid Cell Mouse Events + +#355 follow-up: this file used to treat "zero events fired" as a soft +"PARTIAL" print and still exit(0). That masked the #355 regression (grid +cell click/hover dispatch is entirely dead for mcrfpy.Grid, which is a +UIGridView under the hood) as a passing test suite. Every path below now +hard-asserts; a callback that fails to fire is a test failure, not a +"maybe interactive mode" shrug. + +Coordinate math: with an unmodified (default) camera and an explicit +`size=`, UIGridView's default center is exactly size/(2*zoom), which +equals the viewport's own half-width/half-height. That makes grid_space +== local screen-relative position when zoom==1 (the two halves cancel), +so cell = floor(local_offset / cell_pixel_size) with the default 16x16 +texture. All screen coordinates below are chosen with that arithmetic, +landing deliberately mid-cell (not on a boundary) to avoid float-edge +ambiguity. +""" import sys import mcrfpy from mcrfpy import automation @@ -47,7 +64,7 @@ def test_properties(): def test_cell_hover(): - """Test cell hover events""" + """Test cell hover events fire with the correct cells, across a boundary.""" print("Testing cell hover events...") test_hover = mcrfpy.Scene("test_hover") @@ -70,23 +87,31 @@ def test_cell_hover(): grid.on_cell_enter = on_enter grid.on_cell_exit = on_exit - # Move into grid and between cells - automation.moveTo((150, 150)) + # local=(40,40) -> cell (2,2); local=(56,40) -> cell (3,2) (adjacent, same row) + automation.moveTo((140, 140)) mcrfpy.step(0.05) - automation.moveTo((200, 200)) + automation.moveTo((156, 140)) mcrfpy.step(0.05) - print(f" Enter events: {len(enter_events)}, Exit events: {len(exit_events)}") + print(f" Enter events: {enter_events}, Exit events: {exit_events}") print(f" Hovered cell: {grid.hovered_cell}") - if len(enter_events) >= 1: - print(" - Hover: PASS") - else: - print(" - Hover: PARTIAL (events may require interactive mode)") + assert (2, 2) in enter_events, \ + f"expected on_cell_enter to fire for cell (2,2); got {enter_events}" + assert (3, 2) in enter_events, \ + f"expected on_cell_enter to fire for cell (3,2) after crossing the boundary; got {enter_events}" + assert (2, 2) in exit_events, \ + f"expected on_cell_exit to fire for cell (2,2) when leaving it; got {exit_events}" + assert grid.hovered_cell is not None, "grid.hovered_cell should be set after hovering" + # hovered_cell is an (x, y) tuple (see its docstring / api_surface golden). + assert tuple(grid.hovered_cell) == (3, 2), \ + f"expected grid.hovered_cell == (3,2), got {grid.hovered_cell}" + + print(" - Hover: PASS") def test_cell_click(): - """Test cell click events""" + """Test cell click events fire with the correct cell.""" print("Testing cell click events...") test_click = mcrfpy.Scene("test_click") @@ -100,19 +125,23 @@ def test_cell_click(): # #230 - cell click receives (cell_pos: Vector, button: MouseButton, action: InputState) def on_click(pos, button, action): - click_events.append((pos.x, pos.y)) + click_events.append((pos.x, pos.y, button, action)) grid.on_cell_click = on_click - automation.click((200, 200)) + # local=(36,52) -> cell (2,3) + automation.click((136, 152)) mcrfpy.step(0.05) - print(f" Click events: {len(click_events)}") + print(f" Click events: {click_events}") - if len(click_events) >= 1: - print(" - Click: PASS") - else: - print(" - Click: PARTIAL (events may require interactive mode)") + assert len(click_events) >= 1, \ + "expected on_cell_click to fire at least once for a click inside the grid" + cx, cy, button, action = click_events[0] + assert (cx, cy) == (2, 3), f"expected cell (2,3), got ({cx},{cy})" + assert button == mcrfpy.MouseButton.LEFT, f"expected LEFT button, got {button}" + + print(" - Click: PASS") if __name__ == "__main__": From 086c886d7092ea982eaf4401163afa401940e246 Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 18:02:04 -0400 Subject: [PATCH 02/11] fix(grid): find()/findAll() descend into grids again MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit McRFPy_API::find_in_collection gated its descent into a grid's entities and overlay children on derived_type() == PyObjectsEnum::UIGRID — dead since #252, because every mcrfpy.Grid in a scene graph is a UIGRIDVIEW. Named entities and named child drawables inside a Grid were simply unfindable. Uses the UIDrawable::asGridData() virtual added by #355 rather than adding a UIGRIDVIEW arm next to the dead UIGRID one, which would only relocate the bug. Two defects found in review of the now-reachable code: - find_in_grid_entities built Entity wrappers with a raw tp_alloc, bypassing the PythonObjectCache lookup every other entity accessor performs. When the duplicate wrapper was deallocated, PyUIEntityType's tp_dealloc unconditionally ran `self->data->pyobject = nullptr`, dropping the entity's #266 strong identity reference without a DECREF. It now consults the cache first, exactly as UIEntityCollection::getitem does, so find('hero') returns the user's Hero instance rather than a base Entity. - With N views sharing one GridData (the split-screen/minimap case), the asGridData() recursion visited the shared data once per view, so findAll() returned every grid entity and child N times. find_in_collection now threads a visited-GridData set. closes #357 Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- src/McRFPy_API.cpp | 121 +++++++----- .../regression/issue_357_find_in_grid_test.py | 175 ++++++++++++++++++ 3 files changed, 248 insertions(+), 50 deletions(-) create mode 100644 tests/regression/issue_357_find_in_grid_test.py diff --git a/api/manifest.json b/api/manifest.json index f0c08ad..0805dd3 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"4c0953c","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"85e4bbe","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/McRFPy_API.cpp b/src/McRFPy_API.cpp index 48f1bb6..6a4606b 100644 --- a/src/McRFPy_API.cpp +++ b/src/McRFPy_API.cpp @@ -53,6 +53,7 @@ #include #endif #include // mkdir +#include // #359 - dedupe shared GridData during find/findAll walk // ImGui is only available for SFML builds #if !defined(MCRF_HEADLESS) && !defined(MCRF_SDL2) #include "ImGuiConsole.h" @@ -1587,11 +1588,21 @@ static bool name_matches_pattern(const std::string& name, const std::string& pat return pattern_pos == pattern.length() && name_pos == name.length(); } -// Helper to recursively search a collection for named elements -static void find_in_collection(std::vector>* collection, const std::string& pattern, - bool find_all, PyObject* results) { +// Also search Grid entities (forward-declared: find_in_collection recurses +// into grid children via GridData, and the two helpers are mutually called). +static void find_in_grid_entities(GridData* grid, const std::string& pattern, + bool find_all, PyObject* results); + +// Helper to recursively search a collection for named elements. +// visited_grids: #359 - N views can share ONE GridData (split-screen/minimap). +// asGridData() returns the same GridData* from each of them, so without this set +// the shared grid's entities and overlay children are walked (and appended) once +// per view -- findAll() would return N duplicate wrappers for the same object. +static void find_in_collection(std::vector>* collection, const std::string& pattern, + bool find_all, PyObject* results, + std::unordered_set& visited_grids) { if (!collection) return; - + for (auto& drawable : *collection) { if (!drawable) continue; @@ -1671,39 +1682,68 @@ static void find_in_collection(std::vector>* collect // Recursively search in Frame children if (drawable->derived_type() == PyObjectsEnum::UIFRAME) { auto frame = std::static_pointer_cast(drawable); - find_in_collection(frame->children.get(), pattern, find_all, results); + find_in_collection(frame->children.get(), pattern, find_all, results, visited_grids); if (!find_all && PyList_Size(results) > 0) { return; // Found one, stop searching } } + + // #357 - Recursively search a grid's own overlay children and its + // entities. Dispatch via asGridData() (#355), not derived_type(): a + // real mcrfpy.Grid() is a UIGridView (PyObjectsEnum::UIGRIDVIEW), so + // gating on UIGRID here would be structurally unreachable again. + // #359 - visit each GridData exactly once per search: several views may + // point at the same data. + if (GridData* gd = drawable->asGridData()) { + if (visited_grids.insert(gd).second) { + find_in_grid_entities(gd, pattern, find_all, results); + if (!find_all && PyList_Size(results) > 0) { + return; + } + + find_in_collection(gd->children.get(), pattern, find_all, results, visited_grids); + if (!find_all && PyList_Size(results) > 0) { + return; + } + } + } } } -// Also search Grid entities -static void find_in_grid_entities(UIGrid* grid, const std::string& pattern, +static void find_in_grid_entities(GridData* grid, const std::string& pattern, bool find_all, PyObject* results) { if (!grid || !grid->entities) return; - + for (auto& entity : *grid->entities) { if (!entity) continue; - + // Entities delegate name to their sprite if (name_matches_pattern(entity->sprite.name, pattern)) { - auto type = &mcrfpydef::PyUIEntityType; - auto o = (PyUIEntityObject*)type->tp_alloc(type, 0); - if (o) { - o->data = entity; - PyObject* py_obj = (PyObject*)o; - - if (find_all) { - PyList_Append(results, py_obj); - Py_DECREF(py_obj); - } else { - PyList_Append(results, py_obj); - Py_DECREF(py_obj); - return; + // #266/#357: the cache is the ONLY correct way to wrap an existing + // entity. A fresh tp_alloc would (a) return a base-class Entity for + // a Python subclass instance, losing identity and its __dict__, and + // (b) leak the entity's strong self-reference when that duplicate + // wrapper is deallocated -- PyUIEntityType's tp_dealloc clears + // data->pyobject unconditionally. Mirrors UIEntityCollection::getitem. + PyObject* py_obj = nullptr; + if (entity->serial_number != 0) { + py_obj = PythonObjectCache::getInstance().lookup(entity->serial_number); // new ref + } + if (!py_obj) { + auto type = &mcrfpydef::PyUIEntityType; + auto o = (PyUIEntityObject*)type->tp_alloc(type, 0); + if (o) { + o->data = entity; + o->weakreflist = NULL; + py_obj = (PyObject*)o; } } + + if (py_obj) { + PyList_Append(results, py_obj); + Py_DECREF(py_obj); + if (!find_all) return; + } } } } @@ -1739,20 +1779,11 @@ PyObject* McRFPy_API::_find(PyObject* self, PyObject* args) { ui_elements = current->ui_elements; } - // Search the scene's UI elements - find_in_collection(ui_elements.get(), name, false, results); - - // Also search all grids in the scene for entities - if (PyList_Size(results) == 0 && ui_elements) { - for (auto& drawable : *ui_elements) { - if (drawable && drawable->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = std::static_pointer_cast(drawable); - find_in_grid_entities(grid.get(), name, false, results); - if (PyList_Size(results) > 0) break; - } - } - } - + // Search the scene's UI elements. find_in_collection recurses into a + // grid's entities and overlay children via asGridData() (#355/#357). + std::unordered_set visited_grids; // #359 - shared GridData visited once + find_in_collection(ui_elements.get(), name, false, results, visited_grids); + // Return the first result or None if (PyList_Size(results) > 0) { PyObject* result = PyList_GetItem(results, 0); @@ -1796,19 +1827,11 @@ PyObject* McRFPy_API::_findAll(PyObject* self, PyObject* args) { ui_elements = current->ui_elements; } - // Search the scene's UI elements - find_in_collection(ui_elements.get(), pattern, true, results); - - // Also search all grids in the scene for entities - if (ui_elements) { - for (auto& drawable : *ui_elements) { - if (drawable && drawable->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = std::static_pointer_cast(drawable); - find_in_grid_entities(grid.get(), pattern, true, results); - } - } - } - + // Search the scene's UI elements. find_in_collection recurses into a + // grid's entities and overlay children via asGridData() (#355/#357). + std::unordered_set visited_grids; // #359 - shared GridData visited once + find_in_collection(ui_elements.get(), pattern, true, results, visited_grids); + return results; } diff --git a/tests/regression/issue_357_find_in_grid_test.py b/tests/regression/issue_357_find_in_grid_test.py new file mode 100644 index 0000000..8efde8e --- /dev/null +++ b/tests/regression/issue_357_find_in_grid_test.py @@ -0,0 +1,175 @@ +#!/usr/bin/env python3 +"""Regression test for #357 - mcrfpy.find()/find_all() never descend into a +Grid's entities or child drawables. + +Root cause (same #252 GridView-split fracture family as #355): + - McRFPy_API::_find / _findAll gate their grid-entity search on + `drawable->derived_type() == PyObjectsEnum::UIGRID`, but a real + mcrfpy.Grid() is a UIGridView (PyObjectsEnum::UIGRIDVIEW) -- that branch + is structurally unreachable for anything a Python script can build. + - find_in_collection()'s child-recursion only descends into UIFRAME + children; it never recurses into a grid's own overlay children + (grid.children) at all, regardless of the UIGRID/UIGRIDVIEW question. + +Both are exercised here as hard assertions. +""" +import sys +import mcrfpy + + +def test_find_entity_in_grid(): + print("find()/find_all() locate a named Entity inside a Grid...") + scene = mcrfpy.Scene("issue357_entity") + ui = scene.children + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(0, 0), size=(80, 80)) + ui.append(grid) + + e = mcrfpy.Entity(grid_pos=(2, 2), name="findme_entity") + grid.entities.append(e) + + found = mcrfpy.find("findme_entity") + assert found is not None, "mcrfpy.find() failed to locate a named Entity inside a Grid" + assert found.name == "findme_entity", f"found wrong object: name={getattr(found, 'name', None)!r}" + assert (found.grid_pos.x, found.grid_pos.y) == (2, 2), ( + f"find() returned an entity with the wrong grid_pos: {found.grid_pos.x},{found.grid_pos.y}" + ) + + all_found = mcrfpy.find_all("findme_entity") + assert len(all_found) >= 1, "mcrfpy.find_all() failed to locate a named Entity inside a Grid" + print(" OK") + + +def test_find_child_drawable_in_grid(): + print("find()/find_all() locate a named child drawable inside a Grid...") + scene = mcrfpy.Scene("issue357_child") + ui = scene.children + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(0, 0), size=(80, 80)) + ui.append(grid) + + child = mcrfpy.Frame(pos=(10, 10), size=(5, 5), name="findme_child") + grid.children.append(child) + + found = mcrfpy.find("findme_child") + assert found is not None, "mcrfpy.find() failed to locate a named child drawable inside a Grid" + assert found.name == "findme_child", f"found wrong object: name={getattr(found, 'name', None)!r}" + + all_found = mcrfpy.find_all("findme_child") + assert len(all_found) >= 1, "mcrfpy.find_all() failed to locate a named child drawable inside a Grid" + print(" OK") + + +def test_find_preserves_entity_identity(): + """find() must return the SAME Python object the user created (the #266 + identity ref via PythonObjectCache), not a fresh base-class wrapper. + + Two bugs in one, if it doesn't: + * a Grid entity that is an Entity SUBCLASS comes back as a plain + mcrfpy.Entity -- attributes on the subclass instance are gone; + * disposing that duplicate wrapper runs PyUIEntityType's tp_dealloc, + which clears data->pyobject WITHOUT a Py_DECREF -- permanently leaking + the entity's strong self-reference, so the subclass instance (and its + __dict__/closures) is never reclaimed, even after it leaves the grid. + """ + print("find() returns the entity's real Python object (identity + no leak)...") + import gc + import weakref + + scene = mcrfpy.Scene("issue357_identity") + mcrfpy.current_scene = scene + + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(0, 0), size=(80, 80)) + scene.children.append(grid) + + class Hero(mcrfpy.Entity): + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.hp = 10 + + hero = Hero(grid_pos=(2, 2), name="hero") + grid.entities.append(hero) + + assert grid.entities[0] is hero, "collection lookup lost identity (test setup broken)" + + found = mcrfpy.find("hero") + assert found is hero, ( + f"find() returned a duplicate wrapper ({type(found).__name__}), not the " + "Hero instance -- PythonObjectCache lookup skipped" + ) + assert found.hp == 10, "subclass attributes lost -- find() built a base Entity" + + all_found = mcrfpy.find_all("hero") + assert all_found and all_found[0] is hero, f"find_all() lost identity: {all_found}" + + # Now prove the identity reference was not leaked: dropping every Python + # handle after the entity leaves the grid must reclaim the Hero object. + del found + del all_found + ref = weakref.ref(hero) + grid.entities.remove(hero) # releasePyIdentity() -> DECREF the strong ref + del hero + gc.collect() + assert ref() is None, ( + "Hero object survived removal from the grid -- the entity's strong " + "identity reference was dropped without a DECREF (leak)" + ) + print(" OK") + + +def test_find_dedupes_shared_griddata(): + """N views can share ONE GridData (#359 split-screen/minimap). The grid's + entities and overlay children must be walked once per GridData, not once + per view, or find_all() returns N duplicates of every match.""" + print("find_all() does not duplicate entities across views of one GridData...") + scene = mcrfpy.Scene("issue357_shared") + mcrfpy.current_scene = scene + + g = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(g) + + v2 = mcrfpy.GridView(grid=g.grid_data, pos=(400, 100), size=(200, 200)) + scene.children.append(v2) + + enemy = mcrfpy.Entity(grid_pos=(1, 1), name="enemy") + g.entities.append(enemy) + + child = mcrfpy.Frame(pos=(16, 16), size=(16, 16), name="marker") + g.children.append(child) + + hits = mcrfpy.find_all("enemy") + assert len(hits) == 1, ( + f"find_all('enemy') returned {len(hits)} results for one entity -- the " + "shared GridData was walked once per view (a 'for e in find_all(...)' loop " + "would apply its effect twice)" + ) + assert hits[0] is enemy, "find_all() lost entity identity" + + child_hits = mcrfpy.find_all("marker") + assert len(child_hits) == 1, ( + f"find_all('marker') returned {len(child_hits)} results for one grid child" + ) + print(" OK") + + +def main(): + test_find_entity_in_grid() + test_find_child_drawable_in_grid() + test_find_preserves_entity_identity() + test_find_dedupes_shared_griddata() + print("PASS") + + +if __name__ == "__main__": + # See issue_355_grid_input_test.py: --exec does not turn an unhandled + # exception into a non-zero process exit code, so translate explicitly. + try: + main() + sys.exit(0) + except Exception as e: + print(f"\nTEST FAILED: {e}") + import traceback + traceback.print_exc() + sys.exit(1) From 521d99916a03a9bb18360c83be755d83693b45ce Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 18:02:11 -0400 Subject: [PATCH 03/11] fix(imgui): scene explorer can expand grid children and entities MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ImGuiSceneExplorer::renderDrawableNode switched on derived_type() with a UIGRID arm that nothing in a scene graph has matched since #252; UIGRIDVIEW fell through to `default: break`, so a Grid node in the explorer tree could not be expanded to reveal its children or entities. Uses UIDrawable::asGridData() (#355) rather than adding a UIGRIDVIEW enum arm. Debug tooling only — but the explorer's blindness here is part of why the whole #355 family stayed invisible for so long. closes #358 Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- src/ImGuiSceneExplorer.cpp | 31 +++++++++++++++++-------------- 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/api/manifest.json b/api/manifest.json index 0805dd3..39eb3f6 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"85e4bbe","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"086c886","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/ImGuiSceneExplorer.cpp b/src/ImGuiSceneExplorer.cpp index be447c2..dc3d37a 100644 --- a/src/ImGuiSceneExplorer.cpp +++ b/src/ImGuiSceneExplorer.cpp @@ -11,8 +11,8 @@ #include "UIFrame.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" #include "UIGridView.h" +#include "GridData.h" #include "UIEntity.h" #include "ImGuiConsole.h" #include "PythonObjectCache.h" @@ -118,22 +118,25 @@ void ImGuiSceneExplorer::renderDrawableNode(std::shared_ptr drawable // Check if this node has children bool hasChildren = false; UIFrame* frame = nullptr; - UIGrid* grid = nullptr; + // #358: dispatch on the asGridData() virtual (#355), not derived_type() -- + // nothing in a scene graph is ever a bare UIGRID since #252 (Grid nodes are + // UIGridView instances), so a UIGRID enum arm here is always dead code. + GridData* gridData = drawable->asGridData(); switch (drawable->derived_type()) { case PyObjectsEnum::UIFRAME: frame = static_cast(drawable.get()); hasChildren = frame->children && !frame->children->empty(); break; - case PyObjectsEnum::UIGRID: - grid = static_cast(drawable.get()); - hasChildren = (grid->entities && !grid->entities->empty()) || - (grid->children && !grid->children->empty()); - break; default: break; } + if (gridData) { + hasChildren = (gridData->entities && !gridData->entities->empty()) || + (gridData->children && !gridData->children->empty()); + } + if (!hasChildren) { flags |= ImGuiTreeNodeFlags_Leaf | ImGuiTreeNodeFlags_NoTreePushOnOpen; } @@ -168,14 +171,14 @@ void ImGuiSceneExplorer::renderDrawableNode(std::shared_ptr drawable } } - if (grid) { + if (gridData) { // Render entities - if (grid->entities && !grid->entities->empty()) { + if (gridData->entities && !gridData->entities->empty()) { ImGuiTreeNodeFlags entityGroupFlags = ImGuiTreeNodeFlags_OpenOnArrow; bool entitiesOpen = ImGui::TreeNodeEx("Entities", entityGroupFlags, "Entities (%zu)", - grid->entities->size()); + gridData->entities->size()); if (entitiesOpen) { - for (auto& entity : *grid->entities) { + for (auto& entity : *gridData->entities) { if (entity) { renderEntityNode(entity); } @@ -185,12 +188,12 @@ void ImGuiSceneExplorer::renderDrawableNode(std::shared_ptr drawable } // Render grid's drawable children (overlays) - if (grid->children && !grid->children->empty()) { + if (gridData->children && !gridData->children->empty()) { ImGuiTreeNodeFlags overlayGroupFlags = ImGuiTreeNodeFlags_OpenOnArrow; bool overlaysOpen = ImGui::TreeNodeEx("Overlays", overlayGroupFlags, "Overlays (%zu)", - grid->children->size()); + gridData->children->size()); if (overlaysOpen) { - for (auto& child : *grid->children) { + for (auto& child : *gridData->children) { if (child) { renderDrawableNode(child, depth + 1); } From 540c793e4e0f879be2628d1c2533d0719358f1b2 Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 18:02:29 -0400 Subject: [PATCH 04/11] docs(grid): document grid-world child coordinates and the overlay pattern MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Grid children are positioned in the grid's pixel-world coordinates — the same origin as Entity positions — while Frame children are frame-local. Neither was documented, so the difference read as an inconsistency (it surfaced during #355, which had to decide whether to preserve it). It is not an inconsistency. A Frame has no camera and cannot pan its content, so frame-local is effectively screen space; a Grid does have a camera, and its children are deliberately anchored to world content, not to the viewport. Testing grid children at their visible coordinates would break all positioning the moment the camera moved. The use case is diegetic UI — speech bubbles, damage numbers, range indicators — that belongs to a place or an entity in the world. Documents the convention on both Grid.children and Frame.children (each pointing at the other), and adds docs/grid-coordinate-spaces.md with the overlay pattern for screen-space UI over a grid: a sibling Frame matching the Grid's pos/size, rather than Grid.children. Note: docs/ is gitignored wholesale with tracked files force-added, so the guide needed `git add -f` — it would otherwise have been silently dropped. closes #360 Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- docs/grid-coordinate-spaces.md | 91 ++++++++++++++++++++++++++++++++++ src/UIFrame.cpp | 11 +++- src/UIGridPyProperties.cpp | 16 +++++- 4 files changed, 117 insertions(+), 3 deletions(-) create mode 100644 docs/grid-coordinate-spaces.md diff --git a/api/manifest.json b/api/manifest.json index 39eb3f6..1eb60e1 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"086c886","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"521d999","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/docs/grid-coordinate-spaces.md b/docs/grid-coordinate-spaces.md new file mode 100644 index 0000000..581f246 --- /dev/null +++ b/docs/grid-coordinate-spaces.md @@ -0,0 +1,91 @@ +# Grid Coordinate Spaces & the Overlay Pattern + +Clarifies which coordinate space `UIDrawable` children are positioned in depending on +their parent, and how to build screen-space UI (HUDs, dialogs) that sits on top of a +panning/zooming `Grid`. See issue #360. + +## The short version + +- **`Frame.children`** are positioned **frame-local**: relative to the Frame's + top-left corner. A `Frame` has no camera and cannot pan its content, so + frame-local is effectively already screen space. +- **`Grid.children`** are positioned in the grid's **pixel-world coordinates** — the + same origin as `Entity` positions — **not** in the grid widget's on-screen pixels. + They pan and zoom with the grid's camera (`grid.center`, `grid.zoom`), exactly like + entities and tiles do. + +This is not an inconsistency to "fix": a `Frame` genuinely has no notion of a camera, +so there is no other coordinate space its children could reasonably use. A `Grid` +does have a camera, and its children are deliberately anchored to grid content (the +world), not to the viewport. Entities are positioned by cell; grid-world pixel +coordinates share that same origin, so a `Grid` child can be placed precisely next to +an entity (using `entity.pos`, itself documented as "pixel position relative to +grid") and will continue to track that entity's neighborhood as the camera moves. + +The use case for `Grid.children` is **diegetic** UI: speech bubbles, damage numbers, +range indicators, path markers — things that belong to a place or an entity in the +world and should move/zoom with it. + +```python +# A speech bubble anchored near an entity, in grid-world pixels. +# entity.pos is already "pixel position relative to grid" -- the same origin +# Grid.children use. +bubble = mcrfpy.Caption(text="Hello!", pos=(entity.pos.x, entity.pos.y - 20)) +grid.children.append(bubble) +``` + +If you instead want UI that floats over the grid at a fixed screen position +regardless of where the camera is pointed — a health bar HUD, an inventory panel, a +modal dialog — **`Grid.children` is the wrong tool**, because those children would +pan and zoom right along with everything else and drift off screen. + +## The overlay pattern + +Put a `Frame` as a **sibling** of the `Grid` (not a child of it), sized and +positioned to match the `Grid`, and draw your screen-space UI as children of that +Frame instead. Give the overlay Frame a later `z_index` (or simply append it after +the Grid) so it draws on top. + +``` +Scene (or a container Frame) +├── Grid # pan, zoom, entities, diegetic children +│ ├── entities: positioned by cell +│ └── children: positioned in grid-world pixels (pan/zoom with camera) +└── Frame (overlay) # same pos/size as the Grid, drawn after it + └── children: positioned in frame-local coordinates (screen space) +``` + +```python +import mcrfpy + +scene = mcrfpy.Scene("game") +ui = scene.children + +grid = mcrfpy.Grid(grid_size=(40, 30), pos=(0, 0), size=(640, 480)) +ui.append(grid) + +# Diegetic marker: lives in the grid's world, pans/zooms with the camera. +marker = mcrfpy.Caption(text="!", pos=(160, 96)) +grid.children.append(marker) + +# Screen-space HUD: same pos/size as the grid, but its own children are +# frame-local, so they stay put no matter how grid.center/grid.zoom change. +overlay = mcrfpy.Frame(pos=(0, 0), size=(640, 480)) +overlay.fill_color = mcrfpy.Color(0, 0, 0, 0) # transparent container +ui.append(overlay) # appended after grid -> draws on top + +health_bar = mcrfpy.Frame(pos=(10, 10), size=(200, 20)) +health_bar.fill_color = mcrfpy.Color(200, 40, 40) +overlay.children.append(health_bar) +``` + +Panning or zooming `grid` (`grid.center = ...`, `grid.zoom = ...`) moves `marker` +along with the world; `health_bar` never moves, because it belongs to `overlay`, not +to `grid`. + +## See also + +- `Grid.children` / `Frame.children` docstrings (`mcrfpy.Grid.children.__doc__`, + `mcrfpy.Frame.children.__doc__`) for the API-level statement of this contract. +- `Entity.draw_pos` / `Entity.cell_pos` for the cell-vs-pixel distinction on the + entity side of the same coordinate system. diff --git a/src/UIFrame.cpp b/src/UIFrame.cpp index 9e5da4f..43b95f5 100644 --- a/src/UIFrame.cpp +++ b/src/UIFrame.cpp @@ -548,7 +548,16 @@ PyGetSetDef UIFrame::getsetters[] = { "For animation, use 'outline_color.r', 'outline_color.g', etc." ), (void*)1}, {"children", (getter)UIFrame::get_children, NULL, - MCRF_PROPERTY(children, "UICollection of child drawable objects rendered on top of this frame (UICollection, read-only)."), + MCRF_PROPERTY(children, + "UICollection of child drawable objects rendered on top of this frame (UICollection, " + "read-only)." + MCRF_NOTE( + "Child positions are frame-local (relative to this Frame's top-left corner). A " + "Frame has no camera, so it cannot pan its content -- frame-local is effectively " + "screen space. Contrast with Grid.children, which are positioned in the grid's " + "pixel-world coordinates and pan/zoom with the grid camera." + ) + ), NULL}, {"on_click", (getter)UIDrawable::get_click, (setter)UIDrawable::set_click, MCRF_PROPERTY(on_click, diff --git a/src/UIGridPyProperties.cpp b/src/UIGridPyProperties.cpp index 296057c..80393e4 100644 --- a/src/UIGridPyProperties.cpp +++ b/src/UIGridPyProperties.cpp @@ -373,7 +373,21 @@ PyGetSetDef UIGrid::getsetters[] = { {"entities", (getter)UIGrid::get_entities, NULL, MCRF_PROPERTY(entities, "EntityCollection of entities on this grid (EntityCollection, read-only)."), NULL}, {"children", (getter)UIGrid::get_children, NULL, - MCRF_PROPERTY(children, "UICollection of UIDrawable children such as speech bubbles, effects, and overlays (UICollection, read-only)."), NULL}, + MCRF_PROPERTY(children, + "UICollection of UIDrawable children such as speech bubbles, effects, and range " + "indicators anchored to grid content (UICollection, read-only)." + MCRF_NOTE( + "Grid children are positioned in the grid's pixel-world coordinates -- the same " + "origin as Entity positions -- NOT in the grid widget's screen-space pixels. They " + "pan and zoom with the grid camera (center, zoom), so a child placed near an " + "entity stays near that entity as the camera moves. This differs from " + "Frame.children, which are frame-local: since a Frame cannot pan its content, " + "Frame children are effectively already in screen coordinates. If you want UI " + "that floats over the grid regardless of camera position (e.g. a HUD), do not use " + "Grid.children -- add a sibling Frame with the same pos/size as the Grid instead." + ) + MCRF_LINK("docs/grid-coordinate-spaces.md", "Grid Coordinate Spaces & Overlay Pattern") + ), NULL}, {"layers", (getter)UIGrid::get_layers, NULL, MCRF_PROPERTY(layers, "Tuple of grid layers sorted by z_index (tuple, read-only). Contains ColorLayer and TileLayer objects."), NULL}, From 7952d25cadb69da69cf2c7324e6989401ae85d8f Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 20:26:32 -0400 Subject: [PATCH 05/11] fix(grid): UICollection.repr names Grids again instead of "UIDrawable" UICollection::repr tallied contents by derived_type(), feeding its "Grid" bucket from PyObjectsEnum::UIGRID and routing UIGRIDVIEW into other_count. Since #252 every mcrfpy.Grid in a scene graph is a UIGRIDVIEW, so grids were never named: repr(scene.children) reported "1 Frame, 2 UIDrawables". Dispatch on the asGridData() virtual (added in #355) rather than the enum, which covers both the view and the internal _GridData type. This was the last dead derived_type()==UIGRID gate in a user-visible path -- the same bug class #355 was opened to eliminate. One live UIGRID arm remains in UIDrawable::removeFromParent, but it is not dead (grid children genuinely do get parent = the internal UIGrid today) and it is redundant rather than broken; it disappears with #361. closes #366 --- api/manifest.json | 2 +- src/UICollection.cpp | 7 +- .../issue_366_collection_repr_grid_test.py | 66 +++++++++++++++++++ 3 files changed, 72 insertions(+), 3 deletions(-) create mode 100644 tests/regression/issue_366_collection_repr_grid_test.py diff --git a/api/manifest.json b/api/manifest.json index 1eb60e1..c93b993 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"521d999","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"540c793","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/UICollection.cpp b/src/UICollection.cpp index 87a4f2d..fd52082 100644 --- a/src/UICollection.cpp +++ b/src/UICollection.cpp @@ -1127,12 +1127,15 @@ PyObject* UICollection::repr(PyUICollectionObject* self) // Count each type int frame_count = 0, caption_count = 0, sprite_count = 0, grid_count = 0, other_count = 0; for (auto& item : *self->data) { + // #366: detect grid-ness with the asGridData() virtual (#355), not + // derived_type(). Every mcrfpy.Grid in a collection is a UIGRIDVIEW -- + // the UIGRID arm this used to key on has not appeared in a scene graph + // since #252, so grids were tallied as "other". + if (item->asGridData()) { grid_count++; continue; } switch(item->derived_type()) { case PyObjectsEnum::UIFRAME: frame_count++; break; case PyObjectsEnum::UICAPTION: caption_count++; break; case PyObjectsEnum::UISPRITE: sprite_count++; break; - case PyObjectsEnum::UIGRID: grid_count++; break; - case PyObjectsEnum::UIGRIDVIEW: other_count++; break; default: other_count++; break; } } diff --git a/tests/regression/issue_366_collection_repr_grid_test.py b/tests/regression/issue_366_collection_repr_grid_test.py new file mode 100644 index 0000000..2783b06 --- /dev/null +++ b/tests/regression/issue_366_collection_repr_grid_test.py @@ -0,0 +1,66 @@ +#!/usr/bin/env python3 +"""Regression test for #366: UICollection.repr counted grids as "UIDrawable". + +UICollection::repr tallies collection contents by derived_type() and routed +PyObjectsEnum::UIGRIDVIEW into other_count, while the "Grid" bucket was fed only +by UIGRID -- the internal _GridData type, which no scene graph ever contains +since #252. So repr(scene.children) on a scene holding grids reported +"" and never named the grids. + +Last surviving instance of the bug class #355 eliminated (a caller switching on +derived_type() to detect grid-ness, silently dead since the type it names stopped +appearing in scene graphs). Now dispatched on the asGridData() virtual instead. +""" +import sys +import mcrfpy + +FAILURES = [] + + +def check(cond, msg): + if not cond: + print(f"FAIL: {msg}", file=sys.stderr) + FAILURES.append(msg) + + +def main(): + scene = mcrfpy.Scene("repr_grid") + ui = scene.children + + ui.append(mcrfpy.Frame(pos=(0, 0), size=(10, 10))) + ui.append(mcrfpy.Grid(grid_size=(4, 4), pos=(20, 20), size=(64, 64))) + ui.append(mcrfpy.Grid(grid_size=(4, 4), pos=(100, 20), size=(64, 64))) + + r = repr(ui) + print(f"repr: {r}") + + check("2 Grids" in r, + f"repr should name the 2 Grids (grids counted as 'other'?); got {r}") + check("1 Frame" in r, f"repr should still name the Frame; got {r}") + check("UIDrawable" not in r, + f"no element here is an unclassified UIDrawable; got {r}") + + # A single grid uses the singular form. + scene2 = mcrfpy.Scene("repr_grid_one") + scene2.children.append(mcrfpy.Grid(grid_size=(4, 4), pos=(0, 0), size=(64, 64))) + r2 = repr(scene2.children) + print(f"repr: {r2}") + check("1 Grid" in r2 and "Grids" not in r2, + f"a single grid should read '1 Grid'; got {r2}") + + +if __name__ == "__main__": + try: + main() + if FAILURES: + print(f"\n{len(FAILURES)} FAILURE(S)", file=sys.stderr) + sys.exit(1) + print("PASS") + sys.exit(0) + except SystemExit: + raise + except Exception as e: + print(f"\nTEST CRASHED: {e}", file=sys.stderr) + import traceback + traceback.print_exc() + sys.exit(1) From 11f8394f9bfdade091d57d84078d0404a107f9ea Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 20:26:59 -0400 Subject: [PATCH 06/11] fix(grid): never dispatch a stale cell from UIGridView::click_at #355 made last_clicked_cell the channel by which click_at hands a resolved cell to dispatchCellClick (the point cannot be recomputed later -- click_at works in parent-local space, PyScene only has global coords). Two gaps let a cell survive into a dispatch it did not belong to: 1. click_at stashed the cell at step 3 even when it then returned nullptr because the view had no handlers. dispatchCellClick only runs on the drawable PyScene got back, so nothing consumed that stash and the cell lingered indefinitely. 2. the no-grid_data early return hands back `this` (when click_callable || is_python_subclass) without clearing the stash. Together: click a cell on a handler-less grid, then enable interactivity and set grid_data = None, then click the now cell-less view -- and on_cell_click fired with a cell from a grid that no longer exists. A wrong-data dispatch, not a missing one. Now the cell is stashed only when the view is actually returned as the click target, and the dataless path clears it. NOTE: #365 as filed described the repro as "click a cell, set grid = None, click again," which does NOT reproduce -- dispatchCellClick consumes last_clicked_cell (nullopt on read), so a cell that was actually dispatched cannot survive. The unconsumed handler-less stash is the real path; the regression test covers it, plus a guard that a click on no cell leaves nothing behind. closes #365 --- api/manifest.json | 2 +- src/UIGridView.cpp | 16 ++- .../issue_365_stale_clicked_cell_test.py | 121 ++++++++++++++++++ 3 files changed, 135 insertions(+), 4 deletions(-) create mode 100644 tests/regression/issue_365_stale_clicked_cell_test.py diff --git a/api/manifest.json b/api/manifest.json index c93b993..b77fd7d 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"540c793","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"7952d25","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/UIGridView.cpp b/src/UIGridView.cpp index 12f6f60..f218c06 100644 --- a/src/UIGridView.cpp +++ b/src/UIGridView.cpp @@ -414,6 +414,10 @@ UIDrawable* UIGridView::click_at(sf::Vector2f point) // point is in PARENT-LOCAL space (UIFrame::click_at passes point - position down). if (!box.getGlobalBounds().contains(point)) return nullptr; if (!grid_data) { + // #365: a view with no cells cannot produce a cell event. Drop any cell + // stashed by an earlier click, or dispatchCellClick would fire it for a + // grid that no longer exists. + last_clicked_cell = std::nullopt; return (click_callable || is_python_subclass) ? this : nullptr; } @@ -460,9 +464,15 @@ UIDrawable* UIGridView::click_at(sf::Vector2f point) } // 3. The cell itself. Stash for dispatchCellClick (PyScene has only global coords). - last_clicked_cell = cellAtLocal(local); - - if (click_callable || is_python_subclass || on_cell_click_callable) return this; + // #365: only stash when we are actually returning ourselves as the click + // target. Returning nullptr means PyScene never calls dispatchCellClick, so + // nothing would consume the stash (dispatchCellClick clears it on read) and + // the cell would linger until some later dispatch fired it. + if (click_callable || is_python_subclass || on_cell_click_callable) { + last_clicked_cell = cellAtLocal(local); + return this; + } + last_clicked_cell = std::nullopt; return nullptr; } diff --git a/tests/regression/issue_365_stale_clicked_cell_test.py b/tests/regression/issue_365_stale_clicked_cell_test.py new file mode 100644 index 0000000..1787678 --- /dev/null +++ b/tests/regression/issue_365_stale_clicked_cell_test.py @@ -0,0 +1,121 @@ +#!/usr/bin/env python3 +"""Regression test for #365: stale last_clicked_cell dispatched for a dataless view. + +#355 made UIGridView::last_clicked_cell the channel by which click_at hands the +resolved cell to dispatchCellClick (the point cannot be recomputed later -- +click_at works in parent-local space, PyScene only has global coords). + +Two halves let a stale cell survive into a later dispatch: + +1. click_at stashed the cell (step 3) even when it went on to return nullptr + because the view had no handlers. Nothing consumed that stash -- + dispatchCellClick only runs on the drawable PyScene got back, and it got + nullptr. The cell sat there indefinitely. +2. click_at's early return for the no-grid_data case returns `this` (when + click_callable || is_python_subclass) WITHOUT clearing last_clicked_cell. + +So: click a cell on a grid with no handlers, then enable interactivity and drop +grid_data, then click the (now cell-less) view -- and on_cell_click fired with a +cell from a grid that no longer exists. A wrong-data dispatch, not a missing one. + +NOTE: the issue as filed described this as "click a cell, set grid = None, click +again," which does NOT reproduce -- dispatchCellClick *consumes* +last_clicked_cell (sets it to nullopt after reading), so a cell that was actually +dispatched cannot survive. The unconsumed no-handler stash is the real path. +""" +import sys +import mcrfpy +from mcrfpy import automation + +CELL = 16 +FAILURES = [] + + +def check(cond, msg): + if not cond: + print(f"FAIL: {msg}", file=sys.stderr) + FAILURES.append(msg) + + +def screen_of_cell(grid, cx, cy): + """Screen coords of the center of cell (cx, cy) under the view's camera.""" + left_sp = int(grid.center_x - (grid.w / 2.0)) + top_sp = int(grid.center_y - (grid.h / 2.0)) + return (grid.x + ((cx + 0.5) * CELL - left_sp), + grid.y + ((cy + 0.5) * CELL - top_sp)) + + +def case_stale_survives_into_dataless_view(): + scene = mcrfpy.Scene("stale_cell") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + target = screen_of_cell(grid, 2, 2) + + # 1. Click with NO handlers: click_at resolves cell (2,2), stashes it, then + # returns nullptr. PyScene has no target, so nothing consumes the stash. + automation.click(target) + + # 2. Enable interactivity, then drop the grid data. on_click is what makes + # click_at return `this` on the !grid_data path at all. + cell_clicks, plain_clicks = [], [] + grid.on_cell_click = lambda pos, button, action: cell_clicks.append((pos.x, pos.y)) + grid.on_click = lambda pos, button, action: plain_clicks.append((pos.x, pos.y)) + grid.grid_data = None # property is `grid_data`; the ctor kwarg is `grid` + check(grid.grid_data is None, "grid_data should be None after assignment") + + # 3. Click the cell-less view. It must still deliver on_click, but a grid with + # no cells cannot produce a cell event. + automation.click(target) + check(len(plain_clicks) >= 1, + f"the dataless view should still deliver on_click; got {plain_clicks}") + check(cell_clicks == [], + f"on_cell_click must NOT fire for a view with no grid data " + f"(stale last_clicked_cell dispatched); got {cell_clicks}") + + +def case_no_handler_click_leaves_no_stash(): + """The stash itself must not outlive a click that had nowhere to dispatch.""" + scene = mcrfpy.Scene("stale_cell_2") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + # Click cell (1,1) with no handlers -> nothing may be retained. + automation.click(screen_of_cell(grid, 1, 1)) + + # Now attach a cell handler and click a spot that resolves to NO cell (well + # outside the grid's cells but still inside the widget box, reached by + # shrinking the camera so the 5x5 grid does not fill the 200x200 widget). + cell_clicks = [] + grid.on_cell_click = lambda pos, button, action: cell_clicks.append((pos.x, pos.y)) + grid.zoom = 0.5 # 5*16*0.5 = 40px of content inside a 200px widget + grid.center = (2.5 * CELL, 2.5 * CELL) + + # Bottom-right corner of the widget: inside the box, outside every cell. + automation.click((grid.x + grid.w - 3, grid.y + grid.h - 3)) + check(cell_clicks == [], + f"a click inside the widget but on no cell must not fire on_cell_click " + f"(stale stash from the earlier handler-less click); got {cell_clicks}") + + +def main(): + case_stale_survives_into_dataless_view() + case_no_handler_click_leaves_no_stash() + + +if __name__ == "__main__": + try: + main() + if FAILURES: + print(f"\n{len(FAILURES)} FAILURE(S)", file=sys.stderr) + sys.exit(1) + print("PASS") + sys.exit(0) + except SystemExit: + raise + except Exception as e: + print(f"\nTEST CRASHED: {e}", file=sys.stderr) + import traceback + traceback.print_exc() + sys.exit(1) From 461dcf7f29b58de73a6c331f0575ff217c0740e5 Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 20:27:28 -0400 Subject: [PATCH 07/11] fix(grid): ~UIGridView unregisters from the GridData view registry GridData::views (the N-view registry that replaced owning_view in #359) was only ever pruned by UIGridView::set_grid and by tp_dealloc -- and tp_dealloc's unregister is gated on data.use_count() <= 1 (the #251 pattern). When the C++ view outlives its Python wrapper, which is the normal case because the scene holds the last shared_ptr, that guard skips the unregister and the view's entry survives its own destruction as an expired weak_ptr. Entries therefore accumulated for the lifetime of a GridData, and markDirty() / markCompositeDirty() lock() every one of them on every entity move. Not a correctness bug (expired weak_ptrs lock to null and are skipped) but an unbounded leak on a hot path. ~UIGridView is the only place guaranteed to run exactly once per view, so the unregister belongs there. unregisterView already prunes expired entries, so no other change is needed. NO REGRESSION TEST: GridData::views has no Python observable, so the registry's size cannot be asserted from a test script. Adding one (e.g. a read-only GridData.view_count) is deliberately deferred to #361, which makes GridData a public type and reworks this area; the fix is landed now because the leak is on a hot path and the one-liner is unambiguous. Full suite green (324/324). closes #362 --- api/manifest.json | 2 +- src/UIGridView.cpp | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/api/manifest.json b/api/manifest.json index b77fd7d..86fe1dd 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"7952d25","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"11f8394","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/UIGridView.cpp b/src/UIGridView.cpp index f218c06..afde22f 100644 --- a/src/UIGridView.cpp +++ b/src/UIGridView.cpp @@ -32,6 +32,16 @@ UIGridView::UIGridView() } UIGridView::~UIGridView() { + // #362: drop ourselves from the GridData's view registry. This is the only + // place guaranteed to run exactly once per view: tp_dealloc's unregister is + // gated on data.use_count() <= 1 (the #251 pattern), so a view that outlives + // its Python wrapper -- the normal case, when the scene holds the last ref -- + // would otherwise leave an expired weak_ptr in `views` forever. markDirty() + // walks that vector on every entity move. + if (grid_data) { + grid_data->unregisterView(this); + } + // #348: release the persistent internal-Grid wrapper. Guard with // Py_IsInitialized() because this destructor may run during interpreter // shutdown (mirrors Animation::~Animation). From 4bb1966b9749c9af6ca26784094eae0acb2575bc Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 21:12:58 -0400 Subject: [PATCH 08/11] fix(input): dispatch hover-exit when the cursor leaves the window closes #363 Hover was driven exclusively by sf::Event::MouseMoved -> PyScene::do_mouse_hover. Nothing anywhere handled sf::Event::MouseLeft, so when the cursor left the window while over a drawable, no further MouseMoved arrived and the hover state simply froze: on_exit / on_cell_exit never fired, and Grid.hovered_cell kept reporting a cell the mouse was nowhere near. Any hover-driven affordance (tile highlight, tooltip, range preview) stayed stranded in its hovered visual until the player re-entered the window AND crossed a boundary. Pre-existing gap in the input layer -- it hit Frame.on_exit too. #355 only made it observable, by giving grids hover callbacks that could get stuck. The fix reuses the machinery rather than adding a parallel teardown path. do_mouse_hover's walk becomes dispatch_hover(pos, in_window); a window-leave is just that walk with hit_allowed=false at the root, which is precisely "the mouse is over nothing": every hovered drawable takes its ordinary exit path, and none can enter. So grid cells, frames, and grid overlay children all clear through the code that already knows how to clear them. sf::Event::MouseLeft carries no coordinates, so exit callbacks get the last position seen by do_mouse_hover (the convention the DOM's mouseleave uses). There is no more recent position, and inventing one would be a lie. All three backends feed this: desktop SFML emits MouseLeft natively, SDL2Renderer already translated SDL_WINDOWEVENT_LEAVE to it (and had nobody listening), and headless reaches it via the new automation.mouseLeave(), which takes no position for the same reason the event carries none. Test asserts the cell exit fires, hovered_cell goes None, a redundant leave does not double-fire, and re-entering the SAME cell fires on_cell_enter again -- that last one is what distinguishes a real clear from a faked one. api_surface golden re-baselined: +1 line, automation.mouseLeave. Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- src/GameEngine.cpp | 9 ++ src/McRFPy_Automation.cpp | 18 +++ src/McRFPy_Automation.h | 1 + src/PyScene.cpp | 27 +++- src/PyScene.h | 10 ++ ...sue_363_hover_exit_on_window_leave_test.py | 140 ++++++++++++++++++ tests/snapshots/api_surface.golden.txt | 1 + 8 files changed, 205 insertions(+), 3 deletions(-) create mode 100644 tests/regression/issue_363_hover_exit_on_window_leave_test.py diff --git a/api/manifest.json b/api/manifest.json index 86fe1dd..a8ed0e2 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"11f8394","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"461dcf7","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/GameEngine.cpp b/src/GameEngine.cpp index 915a8a3..cdc5143 100644 --- a/src/GameEngine.cpp +++ b/src/GameEngine.cpp @@ -621,6 +621,15 @@ void GameEngine::processEvent(const sf::Event& event) } return; } + // #363 - The cursor left the window. No further MouseMoved will arrive, so + // whatever is hovered must be exited now or it stays hovered forever. + else if (event.type == sf::Event::MouseLeft) + { + if (auto* pyscene = dynamic_cast(currentScene())) { + pyscene->do_mouse_leave(); + } + return; + } else return; diff --git a/src/McRFPy_Automation.cpp b/src/McRFPy_Automation.cpp index 0803924..9a6e1ee 100644 --- a/src/McRFPy_Automation.cpp +++ b/src/McRFPy_Automation.cpp @@ -326,6 +326,15 @@ PyObject* McRFPy_Automation::_moveTo(PyObject* self, PyObject* args, PyObject* k Py_RETURN_NONE; } +// #363 - Simulate the cursor leaving the window. sf::Event::MouseLeft carries no +// coordinates, so this takes none; the engine reports the last known position to the +// exit callbacks it fires. The simulated position is deliberately NOT moved -- the +// cursor is outside the window, not at some new point inside it. +PyObject* McRFPy_Automation::_mouseLeave(PyObject* self, PyObject* args) { + injectMouseEvent(sf::Event::MouseLeft, simulated_mouse_pos.x, simulated_mouse_pos.y); + Py_RETURN_NONE; +} + // Move mouse relative - accepts moveRel(offset, duration) PyObject* McRFPy_Automation::_moveRel(PyObject* self, PyObject* args, PyObject* kwargs) { static const char* kwlist[] = {"offset", "duration", NULL}; @@ -972,6 +981,15 @@ static PyMethodDef automationMethods[] = { MCRF_ARG("pos", "Position as (x, y) tuple, [x, y] list, Vector, or None for current position") MCRF_ARG("button", "Mouse button: 'left', 'right', or 'middle' (default 'left')") )}, + {"mouseLeave", (PyCFunction)McRFPy_Automation::_mouseLeave, METH_NOARGS, + MCRF_METHOD(automation, mouseLeave, + MCRF_SIG("()", "None"), + MCRF_DESC("Simulate the cursor leaving the window, clearing all hover state. " + "Every hovered drawable fires its on_exit, every hovered grid fires " + "on_cell_exit, and Grid.hovered_cell becomes None."), + MCRF_NOTE("Takes no position: the cursor is outside the window, so there is none. " + "Exit callbacks receive the last position passed to moveTo/click.") + )}, {"typewrite", (PyCFunction)McRFPy_Automation::_typewrite, METH_VARARGS | METH_KEYWORDS, MCRF_METHOD(automation, typewrite, diff --git a/src/McRFPy_Automation.h b/src/McRFPy_Automation.h index 7be6f96..fcab6ce 100644 --- a/src/McRFPy_Automation.h +++ b/src/McRFPy_Automation.h @@ -35,6 +35,7 @@ public: static PyObject* _scroll(PyObject* self, PyObject* args, PyObject* kwargs); static PyObject* _mouseDown(PyObject* self, PyObject* args, PyObject* kwargs); static PyObject* _mouseUp(PyObject* self, PyObject* args, PyObject* kwargs); + static PyObject* _mouseLeave(PyObject* self, PyObject* args); // #363 // Keyboard static PyObject* _typewrite(PyObject* self, PyObject* args, PyObject* kwargs); diff --git a/src/PyScene.cpp b/src/PyScene.cpp index 48d60ed..9a4b6d0 100644 --- a/src/PyScene.cpp +++ b/src/PyScene.cpp @@ -304,6 +304,27 @@ void PyScene::do_mouse_hover(int x, int y) mousepos = game->windowToGameCoords(sf::Vector2f(static_cast(x), static_cast(y))); } + last_mouse_pos = mousepos; + dispatch_hover(mousepos, true); +} + +// #363 - The cursor left the window. sf::Event::MouseLeft carries no coordinates, +// and no further MouseMoved will arrive, so without this every drawable the mouse +// was over stays hovered forever: on_exit / on_cell_exit never fire and +// grid.hovered_cell keeps reporting a cell the cursor is nowhere near. +// +// This is the ordinary hover walk with hit_allowed=false at the root, which is +// exactly "the mouse is over nothing": every hovered drawable takes its normal exit +// path and none can enter. Exit callbacks get the last known cursor position -- the +// same convention the DOM's mouseleave uses; there is no more recent position to +// report, and inventing one would be a lie. +void PyScene::do_mouse_leave() +{ + dispatch_hover(last_mouse_pos, false); +} + +void PyScene::dispatch_hover(sf::Vector2f mousepos, bool in_window) +{ // Helper function to process hover for a single drawable and its children. // // `point` is in the drawable's PARENT-local coordinate space -- the same @@ -394,9 +415,11 @@ void PyScene::do_mouse_hover(int x, int y) } }; - // Process all top-level UI elements + // Process all top-level UI elements. in_window is false only on the #363 + // mouse-left-the-window path, where it propagates down as hit_allowed=false and + // turns the whole walk into a pure exit sweep. for (auto& element : *ui_elements) { - processHover(element.get(), mousepos, true); + processHover(element.get(), mousepos, in_window); } } diff --git a/src/PyScene.h b/src/PyScene.h index 2ebcc2e..5c9ad48 100644 --- a/src/PyScene.h +++ b/src/PyScene.h @@ -15,7 +15,17 @@ public: void do_mouse_input(std::string, std::string); void do_mouse_hover(int x, int y); // #140 - Mouse enter/exit tracking + void do_mouse_leave(); // #363 - cursor left the window // Dirty flag for z_index sorting optimization bool ui_elements_need_sort = true; + +private: + // #363 - Shared hover walk. in_window=false makes it an exit-only sweep (no + // drawable may become hovered), which is what a window-leave means. + void dispatch_hover(sf::Vector2f mousepos, bool in_window); + + // #363 - Last cursor position seen by do_mouse_hover, reported to the exit + // callbacks fired by do_mouse_leave (MouseLeft carries no coordinates). + sf::Vector2f last_mouse_pos{0.f, 0.f}; }; diff --git a/tests/regression/issue_363_hover_exit_on_window_leave_test.py b/tests/regression/issue_363_hover_exit_on_window_leave_test.py new file mode 100644 index 0000000..bf490f5 --- /dev/null +++ b/tests/regression/issue_363_hover_exit_on_window_leave_test.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 +"""Regression test for #363: cursor leaving the window never fired exit callbacks. + +Hover was driven exclusively by sf::Event::MouseMoved -> PyScene::do_mouse_hover. +Nothing handled sf::Event::MouseLeft, so when the cursor left the window while over +a drawable: + +- no further MouseMoved arrived, +- on_exit / on_cell_exit never fired for whatever was hovered, and +- grid.hovered_cell stayed stuck reporting a cell the mouse was nowhere near. + +A hover-driven affordance (tile highlight, tooltip, range preview) got stranded in +its hovered visual state until the player re-entered the window AND crossed a +boundary. hovered_cell was a lying read. + +The fix routes MouseLeft to PyScene::do_mouse_leave(), which re-runs the ordinary +hover walk with hit_allowed=false at the root -- so every drawable that thinks it is +hovered gets its normal exit path, and no drawable can enter. Exit callbacks receive +the last known cursor position (the same convention the DOM's mouseleave uses). + +automation.mouseLeave() injects the event; there was no way to simulate it before. +""" +import sys +import mcrfpy +from mcrfpy import automation + +CELL = 16 +FAILURES = [] + + +def check(cond, msg): + if not cond: + print(f"FAIL: {msg}", file=sys.stderr) + FAILURES.append(msg) + + +def screen_of_cell(grid, cx, cy): + """Screen coords of the center of cell (cx, cy) under the view's camera.""" + left_sp = int(grid.center_x - (grid.w / 2.0)) + top_sp = int(grid.center_y - (grid.h / 2.0)) + return (grid.x + ((cx + 0.5) * CELL - left_sp), + grid.y + ((cy + 0.5) * CELL - top_sp)) + + +def case_grid_cell_exit_fires_on_leave(): + scene = mcrfpy.Scene("leave_grid") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + enters, exits = [], [] + grid.on_cell_enter = lambda pos: enters.append((pos.x, pos.y)) + grid.on_cell_exit = lambda pos: exits.append((pos.x, pos.y)) + + automation.moveTo(screen_of_cell(grid, 2, 2)) + check(enters == [(2, 2)], f"moving onto cell (2,2) should fire on_cell_enter; got {enters}") + check(grid.hovered_cell == (2, 2), + f"hovered_cell should be (2, 2) while hovering; got {grid.hovered_cell}") + check(exits == [], f"nothing should have exited yet; got {exits}") + + # The cursor leaves the window without any further MouseMoved. + automation.mouseLeave() + + check(exits == [(2, 2)], + f"leaving the window must fire on_cell_exit for the hovered cell; got {exits}") + check(grid.hovered_cell is None, + f"hovered_cell must be None once the cursor has left the window; " + f"got {grid.hovered_cell}") + check(enters == [(2, 2)], + f"leaving the window must not fire any on_cell_enter; got {enters}") + + +def case_frame_on_exit_fires_on_leave(): + """#363 is an input-layer gap: Frame.on_exit was stranded the same way.""" + scene = mcrfpy.Scene("leave_frame") + scene.activate() + frame = mcrfpy.Frame(pos=(50, 50), size=(100, 100)) + scene.children.append(frame) + + entered, exited = [], [] + frame.on_enter = lambda pos: entered.append((pos.x, pos.y)) + frame.on_exit = lambda pos: exited.append((pos.x, pos.y)) + + automation.moveTo((100, 100)) + check(len(entered) == 1, f"moving into the frame should fire on_enter; got {entered}") + check(exited == [], f"nothing should have exited yet; got {exited}") + + automation.mouseLeave() + check(len(exited) == 1, + f"leaving the window must fire the frame's on_exit; got {exited}") + + # A second leave is a no-op: nothing is hovered any more. + automation.mouseLeave() + check(len(exited) == 1, + f"a redundant leave must not fire on_exit twice; got {exited}") + + +def case_reenter_after_leave(): + """Hover state must be genuinely cleared, not just reported clear.""" + scene = mcrfpy.Scene("leave_reenter") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + enters = [] + grid.on_cell_enter = lambda pos: enters.append((pos.x, pos.y)) + + target = screen_of_cell(grid, 3, 3) + automation.moveTo(target) + automation.mouseLeave() + + # Re-entering onto the SAME cell must fire on_cell_enter again -- if the leave + # had only faked the clear, the cell would compare equal and be swallowed. + automation.moveTo(target) + check(enters == [(3, 3), (3, 3)], + f"re-entering the same cell after a leave must fire on_cell_enter again; " + f"got {enters}") + + +def main(): + case_grid_cell_exit_fires_on_leave() + case_frame_on_exit_fires_on_leave() + case_reenter_after_leave() + + +if __name__ == "__main__": + try: + main() + if FAILURES: + print(f"\n{len(FAILURES)} FAILURE(S)", file=sys.stderr) + sys.exit(1) + print("PASS") + sys.exit(0) + except SystemExit: + raise + except Exception as e: + print(f"\nTEST CRASHED: {e}", file=sys.stderr) + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/snapshots/api_surface.golden.txt b/tests/snapshots/api_surface.golden.txt index ec2edd5..1c4988f 100644 --- a/tests/snapshots/api_surface.golden.txt +++ b/tests/snapshots/api_surface.golden.txt @@ -1220,6 +1220,7 @@ func keyDown :: keyDown(key: str) -> None func keyUp :: keyUp(key: str) -> None func middleClick :: middleClick(pos: tuple | list | Vector | None = None) -> None func mouseDown :: mouseDown(pos: tuple | list | Vector | None = None, button: str = 'left') -> None +func mouseLeave :: mouseLeave() -> None func mouseUp :: mouseUp(pos: tuple | list | Vector | None = None, button: str = 'left') -> None func moveRel :: moveRel(offset: tuple | list | Vector, duration: float = 0.0) -> None func moveTo :: moveTo(pos: tuple | list | Vector, duration: float = 0.0) -> None From 3e18c1fbf6ec6958bd8c84be5c0ef186be118b20 Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sun, 12 Jul 2026 23:06:59 -0400 Subject: [PATCH 09/11] fix(grid): overlay children belong to the GridView, not the shared GridData A grid child (speech bubble, marker, range indicator) is an OVERLAY painted over the map through one camera -- it occupies no cell, nothing collides with it, and the turn manager cannot see it. Entities are the world contents. So children are per-view and entities are shared, not the other way around. Ownership follows from that. A UIDrawable has one `parent`, but a GridData may have N views, so a child owned by the data could only ever name one of them -- arbitrarily -- and would dangle if that view died while the others kept drawing it. That is why children's dirty push dead-ended at the internal UIGrid, which is in no scene: a Frame(cache_subtree=True) above the grid was never told to re-composite and re-blitted a stale cache. Owned by the view, a child's parent is a real scene-graph drawable and the dead-end cannot be expressed. - GridData::children/children_need_sort -> UIGridView; UIGrid::get_children -> UIGridView::get_children (collection owner = the view, so UICollection::append already parents and invalidates correctly) - UIDrawable::removeFromParent drops its UIGRID arm; set_parent rejects _GridData - UIGrid::render's child-drawing block deleted (the ghost path has no children); UIGrid::resize's aligned-child loop moved to UIGridView::resize, which never had one -- a resized grid was not re-anchoring aligned children at all - PyScene hover, mcrfpy.find()/findAll(), and the ImGui explorer read the view's children. find() no longer dedups children per-GridData (two views hold different children); entities still dedup. Also fixes a latent staleness this exposed: UIGridView::render's #351 early-out never consulted its own render_dirty. It survived on content_generation plus a "grid has children -> always full render" carve-out -- but removing the LAST child lifts that carve-out, leaving every other input unchanged, so the view re-blitted a raster with the removed child still baked in. can_skip now requires !render_dirty, and render() clears it after rasterizing. mcrfpy.Grid IS the UIGridView, so grid.children.append(...) is unchanged for every single-view script; only the internal _GridData loses `children` (API snapshot: delegation 62 -> 61, public surface identical). Answers #361's Q1 (one child, one view, one screen pixel) and moots its Q2 (no non-drawable parent kind remains to represent), unblocking it. Test: tests/regression/issue_364_grid_children_on_view_test.py -- 17 assertions; the load-bearing ones screenshot a grid inside a Frame(cache_subtree=True) and assert move/recolor/remove of a child change the pixels. All three were byte-identical before. Suite 326/326. Spun out: #368 (markContentDirty's was_dirty latch swallows every invalidation after the first -- not grid-specific), #369 (.parent allocates a fresh wrapper, so `child.parent is parent` is always False). closes #364 --- api/manifest.json | 2 +- src/GridData.cpp | 2 +- src/GridData.h | 18 +- src/ImGuiSceneExplorer.cpp | 16 +- src/McRFPy_API.cpp | 28 +-- src/PyScene.cpp | 4 +- src/UIBase.h | 2 +- src/UIDrawable.cpp | 37 ++-- src/UIDrawable.h | 2 +- src/UIGrid.cpp | 44 +---- src/UIGrid.h | 8 +- src/UIGridPyProperties.cpp | 30 +--- src/UIGridView.cpp | 82 +++++++-- src/UIGridView.h | 17 ++ .../issue_364_grid_children_on_view_test.py | 169 ++++++++++++++++++ tests/snapshots/api_surface.golden.txt | 5 +- 16 files changed, 327 insertions(+), 139 deletions(-) create mode 100644 tests/regression/issue_364_grid_children_on_view_test.py diff --git a/api/manifest.json b/api/manifest.json index a8ed0e2..fb2b9c6 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"461dcf7","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"cf6919d67b9e275f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"4bb1966","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/GridData.cpp b/src/GridData.cpp index 48077b2..518cd53 100644 --- a/src/GridData.cpp +++ b/src/GridData.cpp @@ -55,7 +55,7 @@ std::shared_ptr GridData::primaryView() const { GridData::GridData() { entities = std::make_shared>>(); // #329 - children = std::make_shared>>(); + // #364: children live on UIGridView, not here -- see GridData.h. } GridData::~GridData() diff --git a/src/GridData.h b/src/GridData.h index dc8ffc9..4cc38b4 100644 --- a/src/GridData.h +++ b/src/GridData.h @@ -124,11 +124,19 @@ public: // the data. Two views over one GridData must track hover independently, and // the subclassable Python type (mcrfpy.Grid) IS UIGridView. - // ========================================================================= - // UIDrawable children (speech bubbles, effects, overlays) - // ========================================================================= - std::shared_ptr>> children; - bool children_need_sort = true; + // #364 - UIDrawable children (speech bubbles, markers, range indicators) moved + // to UIGridView. They are OVERLAYS painted over the map through one camera, not + // world contents: nothing collides with them, they occupy no cell, and the turn + // manager cannot see them. Entities are the world contents, and those stay here, + // shared by every view. + // + // Ownership follows from that. A UIDrawable has exactly one `parent`, but a + // GridData may have N views -- so a child owned by the data could only ever name + // one of them as parent, arbitrarily, and would dangle if that view died while + // the others kept rendering it. Owned by the view, a child's parent is a real + // scene-graph drawable, so its dirty push reaches the view and every caching + // ancestor above it, and its grid-world position resolves through exactly one + // camera. // ========================================================================= // #252/#359 - GridView back-references. Multiple GridViews can share one diff --git a/src/ImGuiSceneExplorer.cpp b/src/ImGuiSceneExplorer.cpp index dc3d37a..866890e 100644 --- a/src/ImGuiSceneExplorer.cpp +++ b/src/ImGuiSceneExplorer.cpp @@ -122,19 +122,24 @@ void ImGuiSceneExplorer::renderDrawableNode(std::shared_ptr drawable // nothing in a scene graph is ever a bare UIGRID since #252 (Grid nodes are // UIGridView instances), so a UIGRID enum arm here is always dead code. GridData* gridData = drawable->asGridData(); + // #364: overlay children hang off the VIEW; entities off the shared data. + UIGridView* gridView = nullptr; switch (drawable->derived_type()) { case PyObjectsEnum::UIFRAME: frame = static_cast(drawable.get()); hasChildren = frame->children && !frame->children->empty(); break; + case PyObjectsEnum::UIGRIDVIEW: + gridView = static_cast(drawable.get()); + break; default: break; } if (gridData) { hasChildren = (gridData->entities && !gridData->entities->empty()) || - (gridData->children && !gridData->children->empty()); + (gridView && gridView->children && !gridView->children->empty()); } if (!hasChildren) { @@ -187,13 +192,14 @@ void ImGuiSceneExplorer::renderDrawableNode(std::shared_ptr drawable } } - // Render grid's drawable children (overlays) - if (gridData->children && !gridData->children->empty()) { + // Render the view's drawable children (overlays) -- #364: owned by the + // view, not the shared data, so a second view lists its own. + if (gridView && gridView->children && !gridView->children->empty()) { ImGuiTreeNodeFlags overlayGroupFlags = ImGuiTreeNodeFlags_OpenOnArrow; bool overlaysOpen = ImGui::TreeNodeEx("Overlays", overlayGroupFlags, "Overlays (%zu)", - gridData->children->size()); + gridView->children->size()); if (overlaysOpen) { - for (auto& child : *gridData->children) { + for (auto& child : *gridView->children) { if (child) { renderDrawableNode(child, depth + 1); } diff --git a/src/McRFPy_API.cpp b/src/McRFPy_API.cpp index 6a4606b..e58468f 100644 --- a/src/McRFPy_API.cpp +++ b/src/McRFPy_API.cpp @@ -1688,23 +1688,29 @@ static void find_in_collection(std::vector>* collect } } - // #357 - Recursively search a grid's own overlay children and its - // entities. Dispatch via asGridData() (#355), not derived_type(): a - // real mcrfpy.Grid() is a UIGridView (PyObjectsEnum::UIGRIDVIEW), so - // gating on UIGRID here would be structurally unreachable again. - // #359 - visit each GridData exactly once per search: several views may - // point at the same data. + // #364 - A grid's overlay children belong to the VIEW, so they are searched + // per view and NOT deduplicated: two views over one GridData hold different + // children, and each must be visited. + if (drawable->derived_type() == PyObjectsEnum::UIGRIDVIEW) { + auto view = std::static_pointer_cast(drawable); + find_in_collection(view->children.get(), pattern, find_all, results, visited_grids); + if (!find_all && PyList_Size(results) > 0) { + return; + } + } + + // #357 - Recursively search a grid's entities. Dispatch via asGridData() + // (#355), not derived_type(): a real mcrfpy.Grid() is a UIGridView + // (PyObjectsEnum::UIGRIDVIEW), so gating on UIGRID here would be + // structurally unreachable again. + // #359 - entities are shared world content, so visit each GridData exactly + // once per search: several views may point at the same data. if (GridData* gd = drawable->asGridData()) { if (visited_grids.insert(gd).second) { find_in_grid_entities(gd, pattern, find_all, results); if (!find_all && PyList_Size(results) > 0) { return; } - - find_in_collection(gd->children.get(), pattern, find_all, results, visited_grids); - if (!find_all && PyList_Size(results) > 0) { - return; - } } } } diff --git a/src/PyScene.cpp b/src/PyScene.cpp index 9a4b6d0..723d17e 100644 --- a/src/PyScene.cpp +++ b/src/PyScene.cpp @@ -403,12 +403,12 @@ void PyScene::dispatch_hover(sf::Vector2f mousepos, bool in_window) // so a child that was hovered still receives its on_exit. else if (drawable->derived_type() == PyObjectsEnum::UIGRIDVIEW) { auto view = static_cast(drawable); - if (view->grid_data && view->grid_data->children) { + if (view->children) { sf::Vector2f local = point - view->box.getPosition(); sf::Vector2f grid_world = view->localToGridWorld(local); bool inside_view = hit_allowed && sf::FloatRect(sf::Vector2f(0.f, 0.f), view->box.getSize()).contains(local); - for (auto& child : *view->grid_data->children) { + for (auto& child : *view->children) { processHover(child.get(), grid_world, inside_view); } } diff --git a/src/UIBase.h b/src/UIBase.h index a9377de..3c63eca 100644 --- a/src/UIBase.h +++ b/src/UIBase.h @@ -327,7 +327,7 @@ static int UIDrawable_set_opacity(T* self, PyObject* value, void* closure) MCRF_PROPERTY(rotate_with_camera, \ "Whether to rotate visually with parent Grid's camera_rotation (bool). " \ "False (default): stay screen-aligned. True: tilt with camera. " \ - "Only affects children of UIGrid; ignored for other parents." \ + "Only affects children of a Grid; ignored for other parents." \ ), (void*)type_enum} // #106: Shader support - GPU-accelerated visual effects diff --git a/src/UIDrawable.cpp b/src/UIDrawable.cpp index 657650d..c494956 100644 --- a/src/UIDrawable.cpp +++ b/src/UIDrawable.cpp @@ -1007,29 +1007,19 @@ void UIDrawable::removeFromParent() { } frame->children_need_sort = true; } - else if (p->derived_type() == PyObjectsEnum::UIGRID) { - auto grid = std::static_pointer_cast(p); - auto& children = *grid->children; - - for (auto it = children.begin(); it != children.end(); ++it) { - if (it->get() == this) { - children.erase(it); - break; - } - } - grid->children_need_sort = true; - } + // #364: a grid child's parent is the UIGridView. The internal UIGrid (_GridData) + // holds no drawables, so it can never be a parent and needs no arm here. else if (p->derived_type() == PyObjectsEnum::UIGRIDVIEW) { auto view = std::static_pointer_cast(p); - if (view->grid_data && view->grid_data->children) { - auto& children = *view->grid_data->children; + if (view->children) { + auto& children = *view->children; for (auto it = children.begin(); it != children.end(); ++it) { if (it->get() == this) { children.erase(it); break; } } - view->grid_data->children_need_sort = true; + view->children_need_sort = true; } } @@ -1417,13 +1407,14 @@ int UIDrawable::set_parent(PyObject* self, PyObject* value, void* closure) { return 0; } - // Value must be a Frame, Grid, or Scene (things with children collections) + // Value must be a Frame, Grid, or Scene (things with children collections). + // #364: the internal _GridData (PyUIGridType) is NOT among them -- it holds + // entities and cells, never drawables -- so it falls through to the TypeError. bool is_frame = PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIFrameType); - bool is_grid = PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType); bool is_gridview = PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType); bool is_scene = PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PySceneType); - if (!is_frame && !is_grid && !is_gridview && !is_scene) { + if (!is_frame && !is_gridview && !is_scene) { PyErr_SetString(PyExc_TypeError, "parent must be a Frame, Grid, Scene, or None"); return -1; } @@ -1468,16 +1459,10 @@ int UIDrawable::set_parent(PyObject* self, PyObject* value, void* closure) { children_ptr = &frame->children; new_parent = frame; } else if (is_gridview) { - // #252: GridView (unified Grid) - access children through grid_data + // #364: overlay children belong to the view itself, not to the grid data. auto view = ((PyUIGridViewObject*)value)->data; - if (view->grid_data) { - children_ptr = &view->grid_data->children; - } + children_ptr = &view->children; new_parent = view; - } else if (is_grid) { - auto grid = ((PyUIGridObject*)value)->data; - children_ptr = &grid->children; - new_parent = grid; } if (children_ptr && *children_ptr) { diff --git a/src/UIDrawable.h b/src/UIDrawable.h index 96bfd09..46c024f 100644 --- a/src/UIDrawable.h +++ b/src/UIDrawable.h @@ -155,7 +155,7 @@ public: sf::Vector2f origin; // Whether to rotate visually with parent Grid's camera_rotation - // Only affects children of UIGrid; ignored for other parents + // Only affects children of a Grid (UIGridView); ignored for other parents bool rotate_with_camera = false; // Parent-child hierarchy (#122) diff --git a/src/UIGrid.cpp b/src/UIGrid.cpp index 0f1dd5a..ae32ffb 100644 --- a/src/UIGrid.cpp +++ b/src/UIGrid.cpp @@ -252,37 +252,9 @@ void UIGrid::render(sf::Vector2f offset, sf::RenderTarget& target) left_edge, top_edge, x_limit, y_limit, zoom, cell_width, cell_height); } - // Children layer - UIDrawables in grid-world pixel coordinates - // Positioned between entities and FOV overlay for proper z-ordering - if (children && !children->empty()) { - // Sort by z_index if needed - if (children_need_sort) { - std::sort(children->begin(), children->end(), - [](const auto& a, const auto& b) { return a->z_index < b->z_index; }); - children_need_sort = false; - } - - for (auto& child : *children) { - if (!child->visible) continue; - - // Cull children outside visible region (convert pixel pos to cell coords) - float child_grid_x = child->position.x / cell_width; - float child_grid_y = child->position.y / cell_height; - - if (child_grid_x < left_edge - 2 || child_grid_x >= left_edge + width_sq + 2 || - child_grid_y < top_edge - 2 || child_grid_y >= top_edge + height_sq + 2) { - continue; // Not visible, skip rendering - } - - // Transform grid-world pixel position to RenderTexture pixel position - auto pixel_pos = sf::Vector2f( - (child->position.x - left_spritepixels) * zoom, - (child->position.y - top_spritepixels) * zoom - ); - - child->render(pixel_pos, *activeTexture); - } - } + // #364: overlay children are drawn by UIGridView, which owns them. This legacy + // render path (a bare _GridData drawn directly -- the ghost view #361 deletes) + // has no children to draw. // #355: the perspective/FOV overlay is drawn by UIGridView::render, which owns // the perspective state. UIGrid (the internal _GridData) no longer duplicates it. @@ -430,14 +402,8 @@ void UIGrid::resize(float w, float h) output.setTexture(renderTexture.getTexture()); } - // Notify aligned children to recalculate their positions - if (children) { - for (auto& child : *children) { - if (child->getAlignment() != AlignmentType::NONE) { - child->applyAlignment(); - } - } - } + // #364: children (and therefore alignment against the widget's bounds) belong to + // UIGridView::resize -- this class no longer holds any. } void UIGrid::onPositionChanged() diff --git a/src/UIGrid.h b/src/UIGrid.h index bb8e95c..93fef99 100644 --- a/src/UIGrid.h +++ b/src/UIGrid.h @@ -135,7 +135,7 @@ public: static PyMappingMethods mpmethods; static PyObject* subscript(PyUIGridObject* self, PyObject* key); static PyObject* get_entities(PyUIGridObject* self, void* closure); - static PyObject* get_children(PyUIGridObject* self, void* closure); + // #364: get_children lives on UIGridView -- overlay children belong to the view. static PyObject* repr(PyUIGridObject* self); static PyObject* py_add_layer(PyUIGridObject* self, PyObject* args); @@ -218,12 +218,6 @@ namespace mcrfpydef { " texture (Texture): Tile texture atlas\n" " fill_color (Color): Background color\n" " entities (EntityCollection): Collection of entities in the grid\n" - " children (UICollection): UIDrawable children (speech bubbles, markers, " - "range indicators) anchored to grid content -- positioned in the grid's " - "pixel-world coordinates, same origin as entities, and pan/zoom with the " - "camera. NOT the same coordinate space as Frame.children. For screen-space " - "UI that floats over the grid, use a sibling Frame instead; see " - "docs/grid-coordinate-spaces.md\n" " click (callable): Click event handler\n" " visible (bool): Visibility state\n" " opacity (float): Opacity value\n" diff --git a/src/UIGridPyProperties.cpp b/src/UIGridPyProperties.cpp index 80393e4..fd9d4ec 100644 --- a/src/UIGridPyProperties.cpp +++ b/src/UIGridPyProperties.cpp @@ -275,16 +275,8 @@ PyObject* UIGrid::get_entities(PyUIGridObject* self, void* closure) return (PyObject*)o; } -PyObject* UIGrid::get_children(PyUIGridObject* self, void* closure) -{ - PyTypeObject* type = &mcrfpydef::PyUICollectionType; - auto o = (PyUICollectionObject*)type->tp_alloc(type, 0); - if (o) { - o->data = self->data->children; - o->owner = self->data; - } - return (PyObject*)o; -} +// #364: get_children moved to UIGridView. GridData holds no drawables, so the +// internal _GridData no longer exposes a children collection at all. PyObject* UIGrid::get_layers(PyUIGridObject* self, void* closure) { self->data->sortLayers(); @@ -372,22 +364,8 @@ PyGetSetDef UIGrid::getsetters[] = { {"entities", (getter)UIGrid::get_entities, NULL, MCRF_PROPERTY(entities, "EntityCollection of entities on this grid (EntityCollection, read-only)."), NULL}, - {"children", (getter)UIGrid::get_children, NULL, - MCRF_PROPERTY(children, - "UICollection of UIDrawable children such as speech bubbles, effects, and range " - "indicators anchored to grid content (UICollection, read-only)." - MCRF_NOTE( - "Grid children are positioned in the grid's pixel-world coordinates -- the same " - "origin as Entity positions -- NOT in the grid widget's screen-space pixels. They " - "pan and zoom with the grid camera (center, zoom), so a child placed near an " - "entity stays near that entity as the camera moves. This differs from " - "Frame.children, which are frame-local: since a Frame cannot pan its content, " - "Frame children are effectively already in screen coordinates. If you want UI " - "that floats over the grid regardless of camera position (e.g. a HUD), do not use " - "Grid.children -- add a sibling Frame with the same pos/size as the Grid instead." - ) - MCRF_LINK("docs/grid-coordinate-spaces.md", "Grid Coordinate Spaces & Overlay Pattern") - ), NULL}, + // #364: `children` is a property of the VIEW (mcrfpy.Grid / GridView), not of the + // data. See UIGridView::getsetters. {"layers", (getter)UIGrid::get_layers, NULL, MCRF_PROPERTY(layers, "Tuple of grid layers sorted by z_index (tuple, read-only). Contains ColorLayer and TileLayer objects."), NULL}, diff --git a/src/UIGridView.cpp b/src/UIGridView.cpp index afde22f..b7d9047 100644 --- a/src/UIGridView.cpp +++ b/src/UIGridView.cpp @@ -29,6 +29,7 @@ UIGridView::UIGridView() output.setTexture(renderTexture.getTexture()); box.setSize(sf::Vector2f(256, 256)); box.setFillColor(sf::Color(0, 0, 0, 0)); + children = std::make_shared>>(); // #364 } UIGridView::~UIGridView() { @@ -88,6 +89,16 @@ void UIGridView::move(float dx, float dy) void UIGridView::resize(float w, float h) { box.setSize(sf::Vector2f(w, h)); + + // #364: aligned children re-anchor against the widget's new bounds. This ran in + // UIGrid::resize before children moved to the view; it belongs here now. + if (children) { + for (auto& child : *children) { + if (child->getAlignment() != AlignmentType::NONE) { + child->applyAlignment(); + } + } + } } void UIGridView::onPositionChanged() @@ -194,9 +205,15 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) // other input is unchanged (otherwise the fog stays on screen forever). bool can_skip = has_rendered_once + // #364 - a child mutation (move, recolor, add, remove) reaches us as + // render_dirty via the parent chain, because grid children now parent to the + // view. The children carve-out below cannot catch the removal of the LAST + // child -- children is empty by then, so the carve-out lifts and the cached + // raster, which still has that child baked into it, would be re-blitted. + && !render_dirty && !perspective_enabled && !last_perspective_enabled - && (!grid_data->children || grid_data->children->empty()) + && (!children || children->empty()) && grid_data->content_generation == last_content_gen && center_x == last_center_x && center_y == last_center_y && zoom == last_zoom && camera_rotation == last_camera_rotation @@ -303,14 +320,14 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) left_edge, top_edge, x_limit, y_limit, zoom, cell_width, cell_height); } - // Children (grid-world pixel coordinates) - if (grid_data->children && !grid_data->children->empty()) { - if (grid_data->children_need_sort) { - std::sort(grid_data->children->begin(), grid_data->children->end(), + // Children (grid-world pixel coordinates; owned by this view -- #364) + if (children && !children->empty()) { + if (children_need_sort) { + std::sort(children->begin(), children->end(), [](const auto& a, const auto& b) { return a->z_index < b->z_index; }); - grid_data->children_need_sort = false; + children_need_sort = false; } - for (auto& child : *grid_data->children) { + for (auto& child : *children) { if (!child->visible) continue; float child_grid_x = child->position.x / cell_width; float child_grid_y = child->position.y / cell_height; @@ -399,6 +416,11 @@ void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) // #351 - record the inputs this raster was built from for next frame's early-out. has_rendered_once = true; + // #364 - the raster is now current with every child mutation that pushed dirt up + // the parent chain into us. Clearing here is what makes render_dirty a usable + // early-out input (see can_skip): without it the flag latches true forever after + // the first child edit and the early-out could never fire again. + clearDirty(); last_content_gen = grid_data->content_generation; last_center_x = center_x; last_center_y = center_y; @@ -442,13 +464,13 @@ UIDrawable* UIGridView::click_at(sf::Vector2f point) // 1. Children first (drawn on top). Children of a grid live in GRID-WORLD PIXEL // coordinates -- NOT view-local, NOT screen (#360, by design: moving the // camera must not move a child's logical position). Do not "fix" this. - if (grid_data->children && !grid_data->children->empty()) { - if (grid_data->children_need_sort) { - std::sort(grid_data->children->begin(), grid_data->children->end(), + if (children && !children->empty()) { + if (children_need_sort) { + std::sort(children->begin(), children->end(), [](const auto& a, const auto& b) { return a->z_index < b->z_index; }); - grid_data->children_need_sort = false; + children_need_sort = false; } - for (auto it = grid_data->children->rbegin(); it != grid_data->children->rend(); ++it) { + for (auto it = children->rbegin(); it != children->rend(); ++it) { auto& child = *it; if (!child->visible) continue; if (auto target = child->click_at(gw)) return target; @@ -1417,6 +1439,20 @@ int UIGridView::set_on_cell_click(PyUIGridViewObject* self, PyObject* value, voi return 0; } +// #364 - Overlay children. The collection's owner is the VIEW, so UICollection::append +// parents each child to a drawable that is actually in the scene graph: its dirty push +// then reaches this view and every caching ancestor above it. +PyObject* UIGridView::get_children(PyUIGridViewObject* self, void* closure) +{ + PyTypeObject* type = &mcrfpydef::PyUICollectionType; + auto o = (PyUICollectionObject*)type->tp_alloc(type, 0); + if (o) { + o->data = self->data->children; + o->owner = self->data; + } + return (PyObject*)o; +} + PyObject* UIGridView::get_hovered_cell(PyUIGridViewObject* self, void* closure) { if (self->data->hovered_cell.has_value()) { return Py_BuildValue("(ii)", self->data->hovered_cell->x, self->data->hovered_cell->y); @@ -1501,6 +1537,28 @@ PyMethodDef UIGridView_all_methods[] = { PyGetSetDef UIGridView::getsetters[] = { {"grid_data", (getter)UIGridView::get_grid, (setter)UIGridView::set_grid, MCRF_PROPERTY(grid_data, "The underlying grid data object (Grid | None). Used for multi-view scenarios where multiple GridViews share one Grid."), NULL}, + {"children", (getter)UIGridView::get_children, NULL, + MCRF_PROPERTY(children, + "UICollection of UIDrawable children such as speech bubbles, effects, and range " + "indicators anchored to grid content (UICollection, read-only)." + MCRF_NOTE( + "Grid children are positioned in the grid's pixel-world coordinates -- the same " + "origin as Entity positions -- NOT in the grid widget's screen-space pixels. They " + "pan and zoom with the grid camera (center, zoom), so a child placed near an " + "entity stays near that entity as the camera moves. This differs from " + "Frame.children, which are frame-local: since a Frame cannot pan its content, " + "Frame children are effectively already in screen coordinates. If you want UI " + "that floats over the grid regardless of camera position (e.g. a HUD), do not use " + "Grid.children -- add a sibling Frame with the same pos/size as the Grid instead." + ) + MCRF_NOTE( + "Children belong to the VIEW, not to the shared grid data: they are overlays drawn " + "through this camera, so two views over one grid have independent children (a " + "minimap does not inherit the main view's speech bubbles) while sharing every " + "entity. Entities are the world contents; children are annotations over them." + ) + MCRF_LINK("docs/grid-coordinate-spaces.md", "Grid Coordinate Spaces & Overlay Pattern") + ), NULL}, {"center", (getter)UIGridView::get_center, (setter)UIGridView::set_center, MCRF_PROPERTY(center, "Camera center point in pixel coordinates (Vector)."), NULL}, {"zoom", (getter)UIGridView::get_zoom, (setter)UIGridView::set_zoom, diff --git a/src/UIGridView.h b/src/UIGridView.h index 61be536..bbf9ed6 100644 --- a/src/UIGridView.h +++ b/src/UIGridView.h @@ -54,6 +54,20 @@ public: // is a different object/control block than the view's own PyObject. PyObject* cached_grid_wrapper = nullptr; + // ===================================================================== + // #364 - Overlay children (speech bubbles, markers, range indicators). + // Owned by the VIEW, not GridData: a child is an annotation drawn over the + // map through THIS camera, not world content. Two views over one GridData + // therefore have independent children (a minimap does not want the main + // view's speech bubbles) while sharing every entity. + // + // Positions are in GRID-WORLD PIXEL coordinates (#360) -- not view-local, + // not screen -- so panning the camera does not move a child's logical + // position. The view's camera maps them to screen at render/hit-test time. + // ===================================================================== + std::shared_ptr>> children; + bool children_need_sort = true; + // Rendering state (independent per view) std::shared_ptr ptex; sf::RectangleShape box; @@ -169,6 +183,9 @@ public: static PyObject* get_float_member_gv(PyUIGridViewObject* self, void* closure); static int set_float_member_gv(PyUIGridViewObject* self, PyObject* value, void* closure); + // #364 - overlay children (moved from GridData) + static PyObject* get_children(PyUIGridViewObject* self, void* closure); + // #355 - cell callback properties (moved from UIGrid) static PyObject* get_on_cell_enter(PyUIGridViewObject* self, void* closure); static int set_on_cell_enter(PyUIGridViewObject* self, PyObject* value, void* closure); diff --git a/tests/regression/issue_364_grid_children_on_view_test.py b/tests/regression/issue_364_grid_children_on_view_test.py new file mode 100644 index 0000000..2d4e1cc --- /dev/null +++ b/tests/regression/issue_364_grid_children_on_view_test.py @@ -0,0 +1,169 @@ +"""Regression test for #364 - grid children belong to the GridView, not the GridData. + +Children (speech bubbles, markers, range indicators) are OVERLAYS painted on top of +a grid through one camera. They are not world contents -- entities are. So they live +on the view, not on the shared data: + + * a child's parent is the Grid (i.e. the UIGridView), a real scene-graph drawable, + so its dirty push reaches the view and every caching ancestor above it (#364); + * two views over one GridData have independent children, and shared entities; + * the GridData is not a drawable container at all, so it cannot be a parent. + +The load-bearing case is the last one: a grid inside a Frame(cache_subtree=True). +Before this change a child's parent was the internal _GridData, which is in no scene, +so markCompositeDirty() dead-ended there and the Frame re-blitted a STALE composite. +That is invisible in a bare scene (the view re-renders itself) and only shows up under +a caching ancestor -- which is exactly what case 5 builds. +""" +import mcrfpy +from mcrfpy import automation +import sys, os, tempfile + +TMPDIR = tempfile.mkdtemp(prefix="mcrf364_") +_counter = 0 +_results = [] + + +def check(label, ok): + _results.append((label, bool(ok))) + print(" [%s] %s" % ("PASS" if ok else "FAIL", label)) + + +def shot(): + """Render a frame to PNG and return its bytes (identical pixels -> identical + bytes with the deterministic PNG encoder). Headless screenshots are synchronous + (#153): render-then-capture, so no Timer dance is required.""" + global _counter + path = os.path.join(TMPDIR, "s%d.png" % _counter) + _counter += 1 + automation.screenshot(path) + with open(path, "rb") as f: + return f.read() + + +def case_child_parent_is_the_view(): + """The child's parent is the Grid (UIGridView), not the internal _GridData. + + Identity (`child.parent is grid`) is NOT asserted: `.parent` allocates a fresh + wrapper on every read, so `is` fails for Frames too -- even `kid.parent is + kid.parent` is False. That is a pre-existing engine-wide gap, not this bug, and + it is filed separately. Here we assert the parent's TYPE and identify the view by + name, which is what #364 actually turns on. + """ + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(200, 200), name="the_view") + bubble = mcrfpy.Frame(pos=(32, 32), size=(20, 20)) + grid.children.append(bubble) + + check("1a: child.parent is the grid view", bubble.parent.name == "the_view") + check("1b: child.parent is a Grid, not a _GridData", + type(bubble.parent).__name__ == "Grid") + + +def case_children_are_per_view_entities_are_shared(): + """Two views over one GridData: children are per-view, entities are shared.""" + v1 = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(200, 200), name="v1") + v2 = mcrfpy.Grid(grid=v1.grid_data, pos=(220, 0), size=(200, 200), name="v2") + + check("2a: both views share one GridData", v1.grid_data is v2.grid_data) + + marker = mcrfpy.Frame(pos=(32, 32), size=(20, 20)) + v1.children.append(marker) + check("2b: child appended to v1 is in v1.children", len(v1.children) == 1) + check("2c: child appended to v1 is NOT in v2.children", len(v2.children) == 0) + check("2d: the child's parent is v1, not v2", marker.parent.name == "v1") + + v2.children.append(mcrfpy.Frame(pos=(64, 64), size=(20, 20))) + check("2e: v2 keeps its own children", len(v2.children) == 1 and len(v1.children) == 1) + + # Entities are world contents: both cameras must see the same ones. + mcrfpy.Entity((3, 3), grid=v1) + check("2f: entity added through v1 is visible through v2", + len(v1.entities) == 1 and len(v2.entities) == 1) + + +def case_griddata_is_not_a_parent(): + """GridData holds no drawables, so it cannot be assigned as a parent.""" + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(200, 200)) + orphan = mcrfpy.Frame(pos=(0, 0), size=(10, 10)) + try: + orphan.parent = grid.grid_data + check("3a: assigning a _GridData as parent raises TypeError", False) + except TypeError: + check("3a: assigning a _GridData as parent raises TypeError", True) + + check("3b: _GridData exposes no children collection", + not hasattr(grid.grid_data, "children")) + + +def case_parent_none_removes_from_the_view(): + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(200, 200)) + child = mcrfpy.Frame(pos=(32, 32), size=(20, 20)) + grid.children.append(child) + check("4a: appended", len(grid.children) == 1) + + child.parent = None + check("4b: parent=None removes the child from the view", len(grid.children) == 0) + check("4c: the detached child has no parent", child.parent is None) + + +def case_child_mutation_invalidates_a_caching_ancestor(): + """#364 proper: a grid child's dirty push must reach a Frame(cache_subtree=True). + + Pre-fix the child's parent was the internal _GridData -- in no scene, with no + parent of its own -- so markCompositeDirty() stopped there, the Frame stayed + clean, and it re-blitted its cached (stale) composite. The screenshots below + would come back byte-identical even though the child had moved. + """ + scene = mcrfpy.Scene("t364") + scene.activate() + + cache = mcrfpy.Frame(pos=(10, 10), size=(300, 300), + fill_color=mcrfpy.Color(20, 20, 20), + cache_subtree=True) + scene.children.append(cache) + + grid = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(280, 280)) + cache.children.append(grid) + + bubble = mcrfpy.Frame(pos=(32, 32), size=(48, 48), + fill_color=mcrfpy.Color(255, 0, 0)) + grid.children.append(bubble) + + a = shot() + + bubble.x = 128.0 + b = shot() + check("5a: moving a grid child re-composites the caching ancestor", a != b) + + bubble.fill_color = mcrfpy.Color(0, 255, 0) + c = shot() + check("5b: recoloring a grid child re-composites the caching ancestor", b != c) + + grid.children.remove(bubble) + d = shot() + check("5c: removing a grid child re-composites the caching ancestor", c != d) + + # And the skip path itself stays honest: no mutation -> byte-identical frames. + e = shot() + check("5d: idle frames are stable", d == e) + + +def run_tests(): + case_child_parent_is_the_view() + case_children_are_per_view_entities_are_shared() + case_griddata_is_not_a_parent() + case_parent_none_removes_from_the_view() + case_child_mutation_invalidates_a_caching_ancestor() + return all(ok for _, ok in _results) + + +if __name__ == "__main__": + try: + ok = run_tests() + print("PASS" if ok else "FAIL") + sys.exit(0 if ok else 1) + except Exception: + import traceback + traceback.print_exc() + print("FAIL") + sys.exit(1) diff --git a/tests/snapshots/api_surface.golden.txt b/tests/snapshots/api_surface.golden.txt index 1c4988f..0070786 100644 --- a/tests/snapshots/api_surface.golden.txt +++ b/tests/snapshots/api_surface.golden.txt @@ -540,6 +540,7 @@ submodule automation prop center: Vector (rw) prop center_x: float (rw) prop center_y: float (rw) + prop children: UICollection (ro) prop fill_color: Color (rw) prop global_bounds: tuple (ro) prop global_position: Any (ro) @@ -586,6 +587,7 @@ submodule automation prop center: Vector (rw) prop center_x: float (rw) prop center_y: float (rw) + prop children: UICollection (ro) prop fill_color: Color (rw) prop global_bounds: tuple (ro) prop global_position: Any (ro) @@ -1125,7 +1127,6 @@ submodule automation prop center: Vector (rw) prop center_x: float (rw) prop center_y: float (rw) - prop children: UICollection (ro) prop entities: EntityCollection (ro) prop fill_color: Color (rw) prop fov: Any (rw) @@ -1234,7 +1235,7 @@ func tripleClick :: tripleClick(pos: tuple | list | Vector | None = None) -> Non func typewrite :: typewrite(message: str, interval: float = 0.0) -> None === DELEGATION INTEGRITY (Grid instance -> _GridData) === - delegated-resolved: 62/62 + delegated-resolved: 61/61 === WRITABILITY PROBES (#313-touched properties) === Entity.grid: writable From c696b4ef41a70808987931ee48e97c152f4d4aee Mon Sep 17 00:00:00 2001 From: John McCardle Date: Mon, 13 Jul 2026 07:14:43 -0400 Subject: [PATCH 10/11] refactor(grid): GridData is a map, not a widget -- delete UIGrid's drawable half closes #361 closes #370 closes #371 UIGrid inherited both UIDrawable and GridData, so every map carried a second camera and RenderTexture that nothing on screen corresponded to. Appending a _GridData to a scene drew the whole map again through that ghost, frozen at construction values. GridData is now pure data -- no position, no size, no render() -- and UIGridView is the only widget. UIGrid is deleted rather than demoted: shedding UIDrawable left an empty subclass whose only job was to be what an aliasing shared_ptr pointed into. GridData absorbs the texture (it defines the cell size, which every tile<->pixel conversion depends on) and its own PythonObjectCache serial; the binding layer becomes struct PyGridData. PyObjectsEnum::UIGRID and its 14 case arms go with it. * mcrfpy.GridData is public and standalone-constructible. A map with no view at all -- an offscreen level, still steppable and pathable -- was previously undefined behavior: GridData::markDirty did static_cast(this). * UIGridView::init constructs the GridData directly instead of building a throwaway Python _GridData, stealing its base subobject, and copying ~15 fields of rendering state out of the discarded wrapper. One init() serves both modes, so a second view is no longer a crippled kwarg subset (Grid(grid=other, z_index=5) used to raise TypeError). * entity.grid returns the GridData. Accepted break: an entity may be on a map with no view or with several, so "the grid an entity is in" is not a camera. Migrate player.grid.center_camera(p) -> view.center_camera(p). * tp_name is mcrfpy.GridView; mcrfpy.Grid is an alias to the same type object. Two latent bugs surfaced and are fixed here: #370 Grid.center_camera() and Grid.size = ... were SILENT NO-OPS -- neither was defined on the view, so both delegated to the ghost camera. On master, center_camera((5,5)) leaves center_x at 50.0. #371 The shader uniform binder strcmp'd tp_name == "mcrfpy.Grid" (the VIEW's name) then cast to PyUIGridObject. UB that only worked because both wrappers had identical layout and both classes put UIDrawable at offset 0. Suite 327/327. Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- src/Animation.cpp | 13 +- src/EntityBehavior.cpp | 24 +- src/EntityBehavior.h | 4 +- src/GridData.cpp | 30 +- src/GridData.h | 55 +- src/GridLayers.cpp | 38 +- src/GridLayers.h | 8 +- src/ImGuiSceneExplorer.cpp | 3 +- src/ImGuiSceneExplorer.h | 2 +- src/McRFPy_API.cpp | 29 +- src/PathProvider.cpp | 10 +- src/PathProvider.h | 10 +- src/PyAnimation.cpp | 12 +- src/PyGridData.cpp | 263 +++++ src/PyGridData.h | 169 +++ ...ridPyMethods.cpp => PyGridDataMethods.cpp} | 304 +---- src/PyGridDataProperties.cpp | 214 ++++ src/PyScene.cpp | 2 +- src/PyUniformBinding.cpp | 13 +- src/UI.h | 2 +- src/UIArc.cpp | 2 +- src/UIBase.h | 8 +- src/UICaption.cpp | 2 +- src/UICircle.cpp | 2 +- src/UICollection.cpp | 18 +- src/UIDrawable.cpp | 75 +- src/UIDrawable.h | 11 +- src/UIEntity.cpp | 121 +- src/UIEntity.h | 2 +- src/UIEntityCollection.cpp | 2 +- src/UIEntityCollection.h | 4 +- src/UIFrame.cpp | 6 +- src/UIGrid.cpp | 1044 ----------------- src/UIGrid.h | 275 ----- src/UIGridPathfinding.cpp | 12 +- src/UIGridPathfinding.h | 12 +- src/UIGridPoint.cpp | 2 +- src/UIGridPoint.h | 2 +- src/UIGridPyProperties.cpp | 423 ------- src/UIGridView.cpp | 498 ++++---- src/UIGridView.h | 15 +- src/UILine.cpp | 2 +- src/UISprite.cpp | 2 +- src/UITestScene.cpp | 19 +- .../issue_313_entity_grid_data_test.py | 30 +- .../issue_359_shared_griddata_test.py | 29 +- ...issue_361_griddata_is_not_a_widget_test.py | 228 ++++ .../issue_364_grid_children_on_view_test.py | 12 +- tests/snapshots/api_surface.golden.txt | 78 +- tests/unit/api_surface_snapshot_test.py | 10 +- 51 files changed, 1520 insertions(+), 2633 deletions(-) create mode 100644 src/PyGridData.cpp create mode 100644 src/PyGridData.h rename src/{UIGridPyMethods.cpp => PyGridDataMethods.cpp} (69%) create mode 100644 src/PyGridDataProperties.cpp delete mode 100644 src/UIGrid.cpp delete mode 100644 src/UIGrid.h delete mode 100644 src/UIGridPyProperties.cpp create mode 100644 tests/regression/issue_361_griddata_is_not_a_widget_test.py diff --git a/api/manifest.json b/api/manifest.json index fb2b9c6..22cab36 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"4bb1966","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"3e18c1f","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_camera":{"doc_sha":"00d37ccdedcd3a2e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"center_camera(pos: tuple = None) -> None"},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"cfff2bccd482c2ef","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridData":{"doc_sha":"793d86e4e51839f6","kind":"class","lifecycle":{"since":"0.2.8-dev"},"members":{"add_layer":{"doc_sha":"ad48373d656e6a88","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"add_layer(layer: ColorLayer | TileLayer) -> ColorLayer | TileLayer"},"apply_ranges":{"doc_sha":"f74ca906e65a4bec","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> GridData"},"apply_threshold":{"doc_sha":"823c3779c6610389","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"apply_threshold(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None) -> GridData"},"at":{"doc_sha":"0f12b1f70eaec14b","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"at(x: int, y: int) -> GridPoint"},"clear_dijkstra_maps":{"doc_sha":"d470811b59885b93","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"clear_dijkstra_maps() -> None"},"compute_fov":{"doc_sha":"2522197d48d43d98","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"compute_fov(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC) -> None"},"entities":{"doc_sha":"5c361e2150645749","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"entities_in_radius":{"doc_sha":"820857d7995c8fe6","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"entities_in_radius(pos: tuple | Vector, radius: float) -> list"},"find_path":{"doc_sha":"3de3f1a19ba24df8","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"find_path(start, end, diagonal_cost: float = 1.41, collide: str = None, heuristic = None, weight: float = 1.0) -> AStarPath | None"},"fov":{"doc_sha":"bb929647d575d246","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fov_radius":{"doc_sha":"bf76a3199e6d7f0b","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"get_dijkstra_map":{"doc_sha":"af44def04f5c942e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"get_dijkstra_map(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None) -> DijkstraMap"},"grid_h":{"doc_sha":"f96615d57a28b090","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"grid_size":{"doc_sha":"f1aff956f432c1fe","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"grid_w":{"doc_sha":"e2f7f55bad731ce6","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"is_in_fov":{"doc_sha":"3f871a007bbff04c","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"is_in_fov(x: int, y: int) -> bool"},"layer":{"doc_sha":"38d9c25b2b0b172b","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"layer(name: str) -> ColorLayer | TileLayer | None"},"layers":{"doc_sha":"9d6207bfc4909360","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"remove_layer":{"doc_sha":"7876426544d2ec0d","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"remove_layer(name_or_layer: str | ColorLayer | TileLayer) -> None"},"step":{"doc_sha":"38146d2fc84d70f3","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"step(n: int = 1, turn_order: int = None) -> None"},"texture":{"doc_sha":"a2911dd21b916bc0","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_camera":{"doc_sha":"00d37ccdedcd3a2e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"center_camera(pos: tuple = None) -> None"},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"cfff2bccd482c2ef","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/Animation.cpp b/src/Animation.cpp index 1730368..4202ea7 100644 --- a/src/Animation.cpp +++ b/src/Animation.cpp @@ -10,7 +10,7 @@ #include "UIFrame.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" #include "UILine.h" #include "UICircle.h" @@ -574,17 +574,6 @@ static PyObject* convertDrawableToPython(std::shared_ptr drawable) { obj = (PyObject*)pyObj; break; } - case PyObjectsEnum::UIGRID: - { - type = &mcrfpydef::PyUIGridType; - auto pyObj = (PyUIGridObject*)type->tp_alloc(type, 0); - if (pyObj) { - pyObj->data = std::static_pointer_cast(drawable); - pyObj->weakreflist = NULL; - } - obj = (PyObject*)pyObj; - break; - } case PyObjectsEnum::UIGRIDVIEW: { type = &mcrfpydef::PyUIGridViewType; diff --git a/src/EntityBehavior.cpp b/src/EntityBehavior.cpp index e4c41a6..2007799 100644 --- a/src/EntityBehavior.cpp +++ b/src/EntityBehavior.cpp @@ -1,6 +1,6 @@ #include "EntityBehavior.h" #include "UIEntity.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridPathfinding.h" #include "PathProvider.h" #include @@ -25,21 +25,21 @@ static thread_local std::mt19937 rng{std::random_device{}()}; // Per-behavior execution functions // ============================================================================= -static BehaviorOutput executeIdle(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executeIdle(UIEntity& entity, GridData& grid) { return {BehaviorResult::NO_ACTION, {}}; } -static BehaviorOutput executeCustom(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executeCustom(UIEntity& entity, GridData& grid) { // CUSTOM does nothing built-in — step callback handles everything return {BehaviorResult::NO_ACTION, {}}; } -static bool isCellWalkable(UIGrid& grid, int x, int y) { +static bool isCellWalkable(GridData& grid, int x, int y) { if (x < 0 || x >= grid.grid_w || y < 0 || y >= grid.grid_h) return false; return grid.isWalkable(x, y); // #332 } -static BehaviorOutput executeNoise(UIEntity& entity, UIGrid& grid, bool include_diagonals) { +static BehaviorOutput executeNoise(UIEntity& entity, GridData& grid, bool include_diagonals) { int cx = entity.cell_position.x; int cy = entity.cell_position.y; @@ -70,7 +70,7 @@ static BehaviorOutput executeNoise(UIEntity& entity, UIGrid& grid, bool include_ return {BehaviorResult::MOVED, target}; } -static BehaviorOutput executePath(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executePath(UIEntity& entity, GridData& grid) { auto& behavior = entity.behavior; if (behavior.path_step_index >= static_cast(behavior.current_path.size())) { @@ -87,7 +87,7 @@ static BehaviorOutput executePath(UIEntity& entity, UIGrid& grid) { return {BehaviorResult::MOVED, target}; } -static BehaviorOutput executeWaypoint(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executeWaypoint(UIEntity& entity, GridData& grid) { auto& behavior = entity.behavior; if (behavior.waypoints.empty()) { @@ -136,7 +136,7 @@ static BehaviorOutput executeWaypoint(UIEntity& entity, UIGrid& grid) { return {BehaviorResult::MOVED, target}; } -static BehaviorOutput executePatrol(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executePatrol(UIEntity& entity, GridData& grid) { auto& behavior = entity.behavior; if (behavior.waypoints.empty()) { @@ -184,7 +184,7 @@ static BehaviorOutput executePatrol(UIEntity& entity, UIGrid& grid) { return {BehaviorResult::MOVED, target}; } -static BehaviorOutput executeLoop(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executeLoop(UIEntity& entity, GridData& grid) { auto& behavior = entity.behavior; if (behavior.waypoints.empty()) { @@ -227,7 +227,7 @@ static BehaviorOutput executeLoop(UIEntity& entity, UIGrid& grid) { return {BehaviorResult::MOVED, target}; } -static BehaviorOutput executeSleep(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executeSleep(UIEntity& entity, GridData& grid) { auto& behavior = entity.behavior; if (behavior.sleep_turns_remaining > 0) { @@ -243,7 +243,7 @@ static BehaviorOutput executeSleep(UIEntity& entity, UIGrid& grid) { // PathProvider. FLEE differs only in which map is stored in the provider - // DijkstraProvider over an inverted DijkstraMap descends away from the threat, // which matches the old max-distance-neighbor behavior. -static BehaviorOutput executeProviderStep(UIEntity& entity, UIGrid& grid) { +static BehaviorOutput executeProviderStep(UIEntity& entity, GridData& grid) { auto& behavior = entity.behavior; if (!behavior.path_provider) { return {BehaviorResult::NO_ACTION, {}}; @@ -266,7 +266,7 @@ static BehaviorOutput executeProviderStep(UIEntity& entity, UIGrid& grid) { // ============================================================================= // Main dispatch // ============================================================================= -BehaviorOutput executeBehavior(UIEntity& entity, UIGrid& grid) { +BehaviorOutput executeBehavior(UIEntity& entity, GridData& grid) { switch (entity.behavior.type) { case BehaviorType::IDLE: return executeIdle(entity, grid); case BehaviorType::CUSTOM: return executeCustom(entity, grid); diff --git a/src/EntityBehavior.h b/src/EntityBehavior.h index 5cf219a..706bdea 100644 --- a/src/EntityBehavior.h +++ b/src/EntityBehavior.h @@ -6,7 +6,7 @@ // Forward declarations class UIEntity; -class UIGrid; +class GridData; class DijkstraMap; class PathProvider; @@ -71,4 +71,4 @@ struct EntityBehavior { // ============================================================================= // Behavior execution - does NOT modify entity position, just returns intent // ============================================================================= -BehaviorOutput executeBehavior(UIEntity& entity, UIGrid& grid); +BehaviorOutput executeBehavior(UIEntity& entity, GridData& grid); diff --git a/src/GridData.cpp b/src/GridData.cpp index 518cd53..af04a05 100644 --- a/src/GridData.cpp +++ b/src/GridData.cpp @@ -2,16 +2,15 @@ #include "GridData.h" #include "UIEntity.h" #include "PyTexture.h" -#include "UIGrid.h" // #313 - markDirty forwards to the UIGrid subobject -#include "UIGridView.h" // #313/#359 - and notifies registered views +#include "UIGridView.h" // #313/#359 - markDirty notifies registered views +#include "PythonObjectCache.h" // #361 - GridData owns its own cache serial #include -// #313 - Render invalidation from the data layer (see GridData.h). -// GridData is never independently heap-allocated (always a UIGrid base -// subobject), so the downcast is valid; remove once #252 allows pure GridData. +// #313/#361 - Render invalidation from the data layer (see GridData.h). +// Notifies every registered view; there is no longer a drawable half of `this` +// to notify. void GridData::markDirty() { content_generation++; // #351 - content changed; invalidate view early-out - static_cast(this)->UIDrawable::markDirty(); for (auto& weak_view : views) { if (auto view = weak_view.lock()) view->markDirty(); } @@ -19,7 +18,6 @@ void GridData::markDirty() { void GridData::markCompositeDirty() { content_generation++; // #351 - content changed; invalidate view early-out - static_cast(this)->UIDrawable::markCompositeDirty(); for (auto& weak_view : views) { if (auto view = weak_view.lock()) view->markCompositeDirty(); } @@ -58,8 +56,26 @@ GridData::GridData() // #364: children live on UIGridView, not here -- see GridData.h. } +// #361 - The real constructor. Cell size comes from the texture and is mirrored +// into the plane dimensions; a GridData with no texture falls back to 16x16 so +// tile<->pixel math stays defined for a map that is never drawn. +GridData::GridData(int gx, int gy, std::shared_ptr texture) +: ptex(texture) +{ + entities = std::make_shared>>(); // #329 + cell_width_px = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; + cell_height_px = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; + initStorage(gx, gy, this); +} + GridData::~GridData() { + // #361: GridData carries its own PythonObjectCache serial now that it is + // not a UIDrawable (which used to do this in ~UIDrawable). + if (serial_number != 0) { + PythonObjectCache::getInstance().remove(serial_number); + } + // #270: Null out parent_grid in all layers so surviving shared_ptrs // (held by Python wrappers) don't dangle after grid destruction for (auto& layer : layers) { diff --git a/src/GridData.h b/src/GridData.h index 4cc38b4..f32f9a4 100644 --- a/src/GridData.h +++ b/src/GridData.h @@ -28,9 +28,14 @@ class UIDrawable; class UIGridView; class PyTexture; +// GridData is a MAP, not a widget (#361). It has no position, no size, no +// camera, and no render(). Only UIGridView -- which holds a camera and points +// at a GridData -- is a UIDrawable. `mcrfpy.Grid` is a GridView that creates +// its own GridData; N views may share one GridData (split-screen, minimap). class GridData { public: GridData(); + GridData(int gx, int gy, std::shared_ptr texture); virtual ~GridData(); // ========================================================================= @@ -38,9 +43,25 @@ public: // ========================================================================= int grid_w = 0, grid_h = 0; - // #313 - Cell pixel dimensions, mirrored from the owning UIGrid's texture - // at construction (UIGrid::ptex is write-once, ctor only). Lets the data - // layer do tile<->pixel math without reaching into rendering state. + // #361 - The tile atlas. This is DATA, not rendering state: it is what + // defines the cell size in pixels, which every tile<->pixel conversion in + // the engine (entity positions, layer geometry, a view's camera math) + // depends on. Views copy it to draw with; they do not own it. Write-once + // at construction, so cell_width_px/cell_height_px never go stale. + std::shared_ptr ptex; + std::shared_ptr getTexture() const { return ptex; } + + static constexpr int DEFAULT_CELL_WIDTH = 16; + static constexpr int DEFAULT_CELL_HEIGHT = 16; + + // #361 - PythonObjectCache identity. GridData used to inherit this from + // UIDrawable; now that it is not a drawable it carries its own, so that + // `entity.grid`, `view.grid_data` and the GridPoint/layer back-references + // all resolve to ONE Python wrapper instead of a fresh one per access. + uint64_t serial_number = 0; + + // #313 - Cell pixel dimensions, mirrored from ptex at construction. Lets + // the data layer do tile<->pixel math without reaching into a view. int cell_width_px = 16; int cell_height_px = 16; int cell_width() const { return cell_width_px; } @@ -170,19 +191,21 @@ public: // #313/#359 - Render invalidation from the data layer. Entities hold // shared_ptr but still need to invalidate rendering when their - // visual state changes. These set the dirty flags on the UIGrid subobject - // (GridData is never independently heap-allocated -- always a UIGrid base) - // AND notify every registered view (see `views` above), covering both - // render paths (a bare _GridData rendered directly, and every GridView - // sharing this data) and every view's own ancestor chain (e.g. a - // Frame(use_render_texture=True) wrapping ANY of the N views needs its - // own cache invalidated, not just the creator's). Note the #351 render - // early-out itself does NOT depend on this notification -- it polls - // content_generation directly in UIGridView::render() -- this push is only - // for propagating markContentDirty/markCompositeDirty up a view's parent - // chain, which is a bottom-up push, not something pollable from a - // top-down render traversal. Within UIGrid itself the UIDrawable versions - // win via using-declarations (see UIGrid.h). + // visual state changes, so the data notifies every registered view (see + // `views` above) -- and each view then pushes up its OWN ancestor chain, + // since a Frame(cache_subtree=True) wrapping ANY of the N views needs its + // cache invalidated, not just the creator's. + // + // #361: these used to ALSO downcast `this` to UIGrid and set the dirty + // flags on its UIDrawable half, feeding a second, stale render path (a + // bare _GridData appended to a scene drew the map through a frozen camera). + // That path is gone: GridData is not a drawable, so there is nothing to + // notify but the views. + // + // Note the #351 render early-out does NOT depend on this push -- it polls + // content_generation directly in UIGridView::render(). This is only for + // bottom-up propagation through a view's parent chain, which a top-down + // render traversal cannot poll for. void markDirty(); void markCompositeDirty(); diff --git a/src/GridLayers.cpp b/src/GridLayers.cpp index 9660e25..716fc74 100644 --- a/src/GridLayers.cpp +++ b/src/GridLayers.cpp @@ -1,6 +1,6 @@ #include "GridLayers.h" #include "McRFPy_Doc.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" #include "UIEntity.h" #include "PyColor.h" @@ -941,7 +941,7 @@ int PyGridLayerAPI::ColorLayer_init(PyColorLayerObject* self, PyObject* args, Py // Validate grid kwarg type up-front (before allocating data). if (grid_obj && grid_obj != Py_None && - !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridType) && + !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyGridDataType) && !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridViewType)) { PyErr_SetString(PyExc_TypeError, "grid must be a mcrfpy.Grid instance"); return -1; @@ -1773,8 +1773,8 @@ PyObject* PyGridLayerAPI::ColorLayer_get_grid(PyColorLayerObject* self, void* cl } // No cached wrapper — allocate a new one - auto* grid_type = &mcrfpydef::PyUIGridType; - PyUIGridObject* py_grid = (PyUIGridObject*)grid_type->tp_alloc(grid_type, 0); + auto* grid_type = &mcrfpydef::PyGridDataType; + PyGridDataObject* py_grid = (PyGridDataObject*)grid_type->tp_alloc(grid_type, 0); if (!py_grid) return NULL; py_grid->data = self->grid; @@ -1810,21 +1810,21 @@ int PyGridLayerAPI::ColorLayer_set_grid(PyColorLayerObject* self, PyObject* valu // Validate it's a Grid (GridView) or internal _GridData if (!PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType) && - !PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { + !PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyGridDataType)) { PyErr_SetString(PyExc_TypeError, "grid must be a Grid object or None"); return -1; } // Extract UIGrid shared_ptr from Grid (UIGridView) or _GridData (UIGrid) - std::shared_ptr target_grid; + std::shared_ptr target_grid; if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType)) { auto* pyview = (PyUIGridViewObject*)value; if (pyview->data->grid_data) { // GridView's grid_data is aliased from a UIGrid, cast back - target_grid = std::static_pointer_cast(pyview->data->grid_data); + target_grid = std::static_pointer_cast(pyview->data->grid_data); } - } else if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { - target_grid = ((PyUIGridObject*)value)->data; + } else if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyGridDataType)) { + target_grid = ((PyGridDataObject*)value)->data; } if (!target_grid) { PyErr_SetString(PyExc_RuntimeError, "Grid has no data"); @@ -1843,7 +1843,7 @@ int PyGridLayerAPI::ColorLayer_set_grid(PyColorLayerObject* self, PyObject* valu } // Check for protected names - if (!self->data->name.empty() && UIGrid::isProtectedLayerName(self->data->name)) { + if (!self->data->name.empty() && GridData::isProtectedLayerName(self->data->name)) { PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", self->data->name.c_str()); self->grid.reset(); return -1; @@ -2005,7 +2005,7 @@ int PyGridLayerAPI::TileLayer_init(PyTileLayerObject* self, PyObject* args, PyOb // Validate grid kwarg type up-front (before allocating data). if (grid_obj && grid_obj != Py_None && - !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridType) && + !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyGridDataType) && !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridViewType)) { PyErr_SetString(PyExc_TypeError, "grid must be a mcrfpy.Grid instance"); return -1; @@ -2497,8 +2497,8 @@ PyObject* PyGridLayerAPI::TileLayer_get_grid(PyTileLayerObject* self, void* clos } // No cached wrapper — allocate a new one - auto* grid_type = &mcrfpydef::PyUIGridType; - PyUIGridObject* py_grid = (PyUIGridObject*)grid_type->tp_alloc(grid_type, 0); + auto* grid_type = &mcrfpydef::PyGridDataType; + PyGridDataObject* py_grid = (PyGridDataObject*)grid_type->tp_alloc(grid_type, 0); if (!py_grid) return NULL; py_grid->data = self->grid; @@ -2534,20 +2534,20 @@ int PyGridLayerAPI::TileLayer_set_grid(PyTileLayerObject* self, PyObject* value, // Validate it's a Grid (GridView) or internal _GridData if (!PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType) && - !PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { + !PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyGridDataType)) { PyErr_SetString(PyExc_TypeError, "grid must be a Grid object or None"); return -1; } // Extract UIGrid shared_ptr from Grid (UIGridView) or _GridData (UIGrid) - std::shared_ptr target_grid; + std::shared_ptr target_grid; if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType)) { auto* pyview = (PyUIGridViewObject*)value; if (pyview->data->grid_data) { - target_grid = std::static_pointer_cast(pyview->data->grid_data); + target_grid = std::static_pointer_cast(pyview->data->grid_data); } - } else if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { - target_grid = ((PyUIGridObject*)value)->data; + } else if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyGridDataType)) { + target_grid = ((PyGridDataObject*)value)->data; } if (!target_grid) { PyErr_SetString(PyExc_RuntimeError, "Grid has no data"); @@ -2566,7 +2566,7 @@ int PyGridLayerAPI::TileLayer_set_grid(PyTileLayerObject* self, PyObject* value, } // Check for protected names - if (!self->data->name.empty() && UIGrid::isProtectedLayerName(self->data->name)) { + if (!self->data->name.empty() && GridData::isProtectedLayerName(self->data->name)) { PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", self->data->name.c_str()); self->grid.reset(); return -1; diff --git a/src/GridLayers.h b/src/GridLayers.h index 822be68..6176ef3 100644 --- a/src/GridLayers.h +++ b/src/GridLayers.h @@ -8,7 +8,7 @@ #include // Forward declarations -class UIGrid; +class GridData; class GridData; class PyTexture; class UIEntity; @@ -178,19 +178,19 @@ public: typedef struct { PyObject_HEAD std::shared_ptr data; - std::shared_ptr grid; // Parent grid reference + std::shared_ptr grid; // Parent grid reference } PyGridLayerObject; typedef struct { PyObject_HEAD std::shared_ptr data; - std::shared_ptr grid; + std::shared_ptr grid; } PyColorLayerObject; typedef struct { PyObject_HEAD std::shared_ptr data; - std::shared_ptr grid; + std::shared_ptr grid; } PyTileLayerObject; // #335 - context manager returned by ColorLayer.edit()/TileLayer.edit(). diff --git a/src/ImGuiSceneExplorer.cpp b/src/ImGuiSceneExplorer.cpp index 866890e..66c1814 100644 --- a/src/ImGuiSceneExplorer.cpp +++ b/src/ImGuiSceneExplorer.cpp @@ -294,8 +294,7 @@ const char* ImGuiSceneExplorer::getTypeName(UIDrawable* drawable) { case PyObjectsEnum::UIFRAME: return "Frame"; case PyObjectsEnum::UICAPTION: return "Caption"; case PyObjectsEnum::UISPRITE: return "Sprite"; - case PyObjectsEnum::UIGRID: return "Grid"; - case PyObjectsEnum::UIGRIDVIEW: return "GridView"; + case PyObjectsEnum::UIGRIDVIEW: return "Grid"; case PyObjectsEnum::UILINE: return "Line"; case PyObjectsEnum::UICIRCLE: return "Circle"; case PyObjectsEnum::UIARC: return "Arc"; diff --git a/src/ImGuiSceneExplorer.h b/src/ImGuiSceneExplorer.h index 76ef22e..d6f2656 100644 --- a/src/ImGuiSceneExplorer.h +++ b/src/ImGuiSceneExplorer.h @@ -10,7 +10,7 @@ class GameEngine; class UIDrawable; class UIEntity; class UIFrame; -class UIGrid; +class GridData; /** * @brief ImGui-based scene tree explorer for debugging diff --git a/src/McRFPy_API.cpp b/src/McRFPy_API.cpp index e58468f..649cbb4 100644 --- a/src/McRFPy_API.cpp +++ b/src/McRFPy_API.cpp @@ -472,7 +472,7 @@ PyObject* PyInit_mcrfpy() // #184: Set the metaclass for UI types that support callback methods // This must be done BEFORE PyType_Ready is called on these types PyTypeObject* ui_types_with_callbacks[] = { - &PyUIFrameType, &PyUICaptionType, &PyUISpriteType, &PyUIGridType, + &PyUIFrameType, &PyUICaptionType, &PyUISpriteType, &PyGridDataType, &PyUILineType, &PyUICircleType, &PyUIArcType, &PyViewport3DType, &mcrfpydef::PyUIGridViewType, nullptr @@ -492,7 +492,8 @@ PyObject* PyInit_mcrfpy() /*UI widgets*/ &PyUICaptionType, &PyUISpriteType, &PyUIFrameType, &PyUIEntityType, &PyUILineType, &PyUICircleType, &PyUIArcType, &PyViewport3DType, - &mcrfpydef::PyUIGridViewType, // #252: GridView IS the primary "Grid" type + &mcrfpydef::PyUIGridViewType, // #252/#361: the widget. "Grid" is an alias. + &PyGridDataType, // #361: the map. Public, and NOT a drawable. /*3D entities*/ &mcrfpydef::PyEntity3DType, &mcrfpydef::PyEntityCollection3DType, @@ -552,9 +553,6 @@ PyObject* PyInit_mcrfpy() // Types that are used internally but NOT exported to module namespace (#189) // These still need PyType_Ready() but are not added to module PyTypeObject* internal_types[] = { - /*#252: internal grid data type - UIGrid is now internal, GridView is "Grid"*/ - &PyUIGridType, - /*game map data - returned by Grid.at() but not directly instantiable*/ &PyUIGridPointType, @@ -652,7 +650,7 @@ PyObject* PyInit_mcrfpy() PyUIFrameType.tp_weaklistoffset = offsetof(PyUIFrameObject, weakreflist); PyUICaptionType.tp_weaklistoffset = offsetof(PyUICaptionObject, weakreflist); PyUISpriteType.tp_weaklistoffset = offsetof(PyUISpriteObject, weakreflist); - PyUIGridType.tp_weaklistoffset = offsetof(PyUIGridObject, weakreflist); + PyGridDataType.tp_weaklistoffset = offsetof(PyGridDataObject, weakreflist); mcrfpydef::PyUIGridViewType.tp_weaklistoffset = offsetof(PyUIGridViewObject, weakreflist); PyUIEntityType.tp_weaklistoffset = offsetof(PyUIEntityObject, weakreflist); PyUILineType.tp_weaklistoffset = offsetof(PyUILineObject, weakreflist); @@ -697,10 +695,13 @@ PyObject* PyInit_mcrfpy() t = internal_types[i]; } - // #252: Add "GridView" as an alias for the Grid type (which is PyUIGridViewType) - // This allows both mcrfpy.Grid(...) and mcrfpy.GridView(...) to work + // #361: "Grid" is an alias for GridView -- the SAME type object, not a subclass, + // so isinstance() works in both directions and there is no MRO to explain. + // It is NOT deprecated: now that GridData is a separate public type, + // Grid(grid_size=...) is simply "a GridView that creates its own GridData" -- + // a constructor overload, not legacy behavior. Py_INCREF(&mcrfpydef::PyUIGridViewType); - PyModule_AddObject(m, "GridView", (PyObject*)&mcrfpydef::PyUIGridViewType); + PyModule_AddObject(m, "Grid", (PyObject*)&mcrfpydef::PyUIGridViewType); // Add default_font and default_texture to module McRFPy_API::default_font = std::make_shared("assets/JetbrainsMono.ttf"); @@ -1642,16 +1643,6 @@ static void find_in_collection(std::vector>* collect } break; } - case PyObjectsEnum::UIGRID: { - auto grid = std::static_pointer_cast(drawable); - auto type = &mcrfpydef::PyUIGridType; - auto o = (PyUIGridObject*)type->tp_alloc(type, 0); - if (o) { - o->data = grid; - py_obj = (PyObject*)o; - } - break; - } case PyObjectsEnum::UIGRIDVIEW: { auto gridview = std::static_pointer_cast(drawable); auto type = &mcrfpydef::PyUIGridViewType; diff --git a/src/PathProvider.cpp b/src/PathProvider.cpp index 50999aa..a4d7361 100644 --- a/src/PathProvider.cpp +++ b/src/PathProvider.cpp @@ -1,9 +1,9 @@ #include "PathProvider.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridPathfinding.h" #include "UIGridPoint.h" -static bool cellWalkable(UIGrid& grid, int x, int y) { +static bool cellWalkable(GridData& grid, int x, int y) { if (x < 0 || x >= grid.grid_w || y < 0 || y >= grid.grid_h) return false; return grid.isWalkable(x, y); // #332 } @@ -14,7 +14,7 @@ static bool cellWalkable(UIGrid& grid, int x, int y) { DijkstraProvider::DijkstraProvider(std::shared_ptr map) : map_(std::move(map)) {} -sf::Vector2i DijkstraProvider::nextStep(sf::Vector2i from, UIGrid& /*grid*/, bool* ok) { +sf::Vector2i DijkstraProvider::nextStep(sf::Vector2i from, GridData& /*grid*/, bool* ok) { if (!map_) { if (ok) *ok = false; return {-1, -1}; @@ -31,7 +31,7 @@ sf::Vector2i DijkstraProvider::nextStep(sf::Vector2i from, UIGrid& /*grid*/, boo AStarProvider::AStarProvider(std::vector path) : path_(std::move(path)) {} -sf::Vector2i AStarProvider::nextStep(sf::Vector2i /*from*/, UIGrid& /*grid*/, bool* ok) { +sf::Vector2i AStarProvider::nextStep(sf::Vector2i /*from*/, GridData& /*grid*/, bool* ok) { if (index_ >= path_.size()) { if (ok) *ok = false; return {-1, -1}; @@ -46,7 +46,7 @@ sf::Vector2i AStarProvider::nextStep(sf::Vector2i /*from*/, UIGrid& /*grid*/, bo TargetProvider::TargetProvider(sf::Vector2i target) : target_(target) {} -sf::Vector2i TargetProvider::nextStep(sf::Vector2i from, UIGrid& grid, bool* ok) { +sf::Vector2i TargetProvider::nextStep(sf::Vector2i from, GridData& grid, bool* ok) { int dx = target_.x - from.x; int dy = target_.y - from.y; if (dx == 0 && dy == 0) { diff --git a/src/PathProvider.h b/src/PathProvider.h index 9ccc5c9..d1afda5 100644 --- a/src/PathProvider.h +++ b/src/PathProvider.h @@ -3,7 +3,7 @@ #include #include -class UIGrid; +class GridData; class DijkstraMap; // ============================================================================= @@ -22,7 +22,7 @@ public: // DijkstraProvider relies on the TCOD map used at compute time, // TargetProvider re-queries the live grid, AStarProvider trusts the // pre-computed path. - virtual sf::Vector2i nextStep(sf::Vector2i from, UIGrid& grid, bool* ok) = 0; + virtual sf::Vector2i nextStep(sf::Vector2i from, GridData& grid, bool* ok) = 0; // Hint for providers that hold iteration state (currently only A*). virtual void reset() {} @@ -33,7 +33,7 @@ public: class DijkstraProvider : public PathProvider { public: explicit DijkstraProvider(std::shared_ptr map); - sf::Vector2i nextStep(sf::Vector2i from, UIGrid& grid, bool* ok) override; + sf::Vector2i nextStep(sf::Vector2i from, GridData& grid, bool* ok) override; private: std::shared_ptr map_; @@ -43,7 +43,7 @@ private: class AStarProvider : public PathProvider { public: explicit AStarProvider(std::vector path); - sf::Vector2i nextStep(sf::Vector2i from, UIGrid& grid, bool* ok) override; + sf::Vector2i nextStep(sf::Vector2i from, GridData& grid, bool* ok) override; void reset() override { index_ = 0; } private: @@ -57,7 +57,7 @@ private: class TargetProvider : public PathProvider { public: explicit TargetProvider(sf::Vector2i target); - sf::Vector2i nextStep(sf::Vector2i from, UIGrid& grid, bool* ok) override; + sf::Vector2i nextStep(sf::Vector2i from, GridData& grid, bool* ok) override; private: sf::Vector2i target_; diff --git a/src/PyAnimation.cpp b/src/PyAnimation.cpp index a8bbd72..41c6063 100644 --- a/src/PyAnimation.cpp +++ b/src/PyAnimation.cpp @@ -6,7 +6,7 @@ #include "UIFrame.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIEntity.h" #include "UI.h" // For the PyTypeObject definitions #include // For strcmp in parseConflictMode @@ -253,14 +253,8 @@ PyObject* PyAnimation::start(PyAnimationObject* self, PyObject* args, PyObject* handled = true; } } - else if (PyObject_IsInstance(target_obj, (PyObject*)&mcrfpydef::PyUIGridType)) { - PyUIGridObject* grid = (PyUIGridObject*)target_obj; - if (grid->data) { - self->data->start(grid->data); - AnimationManager::getInstance().addAnimation(self->data, conflict_mode); - handled = true; - } - } + // #361: a GridData is NOT an animation target -- it has no position, size, + // color or camera to tween. Animate the Grid (GridView) that displays it. else if (PyObject_IsInstance(target_obj, (PyObject*)&mcrfpydef::PyUIEntityType)) { // Special handling for Entity since it doesn't inherit from UIDrawable PyUIEntityObject* entity = (PyUIEntityObject*)target_obj; diff --git a/src/PyGridData.cpp b/src/PyGridData.cpp new file mode 100644 index 0000000..494b4ce --- /dev/null +++ b/src/PyGridData.cpp @@ -0,0 +1,263 @@ +// PyGridData.cpp - Python bindings for GridData (mcrfpy.GridData). +// +// #361: this file used to define `class UIGrid : public UIDrawable, public +// GridData` -- a map that was also a widget, carrying a second camera and +// RenderTexture that no user ever saw. GridData is now pure data (GridData.cpp) +// and UIGridView is the only widget. What remains here is the binding layer: +// construction, properties, and the shared helpers the Grid() factory path in +// UIGridView needs. +#include "PyGridData.h" +#include "UIGridView.h" +#include "UIGridPathfinding.h" +#include "GameEngine.h" +#include "McRFPy_API.h" +#include "PythonObjectCache.h" +#include "UIEntity.h" +#include "PyFOV.h" +#include "PyVector.h" +#include +#include +#include +#include + +// ========================================================================= +// Shared construction helpers (used by GridData() and by Grid()/GridView) +// ========================================================================= + +int PyGridData::parse_grid_shape(PyObject* grid_size_obj, PyObject* texture_obj, + int& grid_w, int& grid_h, + std::shared_ptr& texture_out) +{ + if (grid_size_obj) { + if (!PyTuple_Check(grid_size_obj) || PyTuple_Size(grid_size_obj) != 2) { + PyErr_SetString(PyExc_TypeError, "grid_size must be a tuple (grid_w, grid_h)"); + return -1; + } + PyObject* gx_val = PyTuple_GetItem(grid_size_obj, 0); + PyObject* gy_val = PyTuple_GetItem(grid_size_obj, 1); + if (!PyLong_Check(gx_val) || !PyLong_Check(gy_val)) { + PyErr_SetString(PyExc_TypeError, "grid_size tuple must contain integers"); + return -1; + } + grid_w = PyLong_AsLong(gx_val); + grid_h = PyLong_AsLong(gy_val); + } + + if (grid_w <= 0 || grid_h <= 0) { + PyErr_SetString(PyExc_ValueError, "Grid dimensions must be positive integers"); + return -1; + } + if (grid_w > GRID_MAX || grid_h > GRID_MAX) { // #212 + PyErr_Format(PyExc_ValueError, + "Grid dimensions cannot exceed %d (got %dx%d)", GRID_MAX, grid_w, grid_h); + return -1; + } + + if (texture_obj && texture_obj != Py_None) { + if (!PyObject_IsInstance(texture_obj, (PyObject*)&mcrfpydef::PyTextureType)) { + PyErr_SetString(PyExc_TypeError, "texture must be a mcrfpy.Texture instance or None"); + return -1; + } + texture_out = reinterpret_cast(texture_obj)->data; + } else { + texture_out = McRFPy_API::default_texture; + } + return 0; +} + +// Attach one layer object (already type-checked) to `grid`. Returns -1 with an +// exception set on failure. +static int attach_layer(const std::shared_ptr& grid, + const std::shared_ptr& layer) +{ + if (!layer->name.empty() && GridData::isProtectedLayerName(layer->name)) { + PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", layer->name.c_str()); + return -1; + } + if (!layer->name.empty()) { + auto existing = grid->getLayerByName(layer->name); + if (existing) { + existing->parent_grid = nullptr; + grid->removeLayer(existing); + } + } + // Lazy allocation: a layer left at (0,0) adopts the grid's dimensions. + if (layer->grid_x == 0 && layer->grid_y == 0) { + layer->resize(grid->grid_w, grid->grid_h); + } else if (layer->grid_x != grid->grid_w || layer->grid_y != grid->grid_h) { + PyErr_Format(PyExc_ValueError, + "Layer size (%d, %d) does not match Grid size (%d, %d)", + layer->grid_x, layer->grid_y, grid->grid_w, grid->grid_h); + return -1; + } + layer->parent_grid = grid.get(); + grid->layers.push_back(layer); + return 0; +} + +int PyGridData::apply_layers_arg(const std::shared_ptr& grid, + PyObject* layers_obj, + std::shared_ptr default_texture) +{ + // Omitted -> one default TileLayer named "tilesprite" (z_index -1, below entities). + if (layers_obj == nullptr) { + grid->addTileLayer(-1, default_texture, "tilesprite"); + return 0; + } + // Explicit None -> no rendering layers (entity storage + pathfinding only). + if (layers_obj == Py_None) return 0; + + PyObject* iterator = PyObject_GetIter(layers_obj); + if (!iterator) { + PyErr_SetString(PyExc_TypeError, + "layers must be an iterable of ColorLayer or TileLayer objects"); + return -1; + } + + auto* color_layer_type = (PyObject*)&mcrfpydef::PyColorLayerType; + auto* tile_layer_type = (PyObject*)&mcrfpydef::PyTileLayerType; + + PyObject* item; + while ((item = PyIter_Next(iterator)) != NULL) { + bool is_color = PyObject_IsInstance(item, color_layer_type); + bool is_tile = PyObject_IsInstance(item, tile_layer_type); + if (!is_color && !is_tile) { + Py_DECREF(item); + Py_DECREF(iterator); + PyErr_SetString(PyExc_TypeError, + "layers must contain only ColorLayer or TileLayer objects"); + return -1; + } + + // Both wrapper types share the same {data, grid} prefix layout, but read + // them through their own types rather than punning. + std::shared_ptr layer; + bool already_attached = false; + if (is_color) { + auto* py_layer = (PyColorLayerObject*)item; + if (!py_layer->data) { + Py_DECREF(item); Py_DECREF(iterator); + PyErr_SetString(PyExc_RuntimeError, "Layer has no data"); + return -1; + } + already_attached = (bool)py_layer->grid; + layer = py_layer->data; + } else { + auto* py_layer = (PyTileLayerObject*)item; + if (!py_layer->data) { + Py_DECREF(item); Py_DECREF(iterator); + PyErr_SetString(PyExc_RuntimeError, "Layer has no data"); + return -1; + } + already_attached = (bool)py_layer->grid; + layer = py_layer->data; + } + + if (already_attached) { + Py_DECREF(item); Py_DECREF(iterator); + PyErr_SetString(PyExc_ValueError, "Layer is already attached to another Grid"); + return -1; + } + + if (attach_layer(grid, layer) < 0) { + Py_DECREF(item); Py_DECREF(iterator); + return -1; + } + + if (is_color) { + ((PyColorLayerObject*)item)->grid = grid; + } else { + auto* py_layer = (PyTileLayerObject*)item; + py_layer->grid = grid; + // #254 - a TileLayer with no texture of its own inherits the grid's. + auto tile_layer_ptr = std::static_pointer_cast(layer); + if (!tile_layer_ptr->texture) { + tile_layer_ptr->texture = grid->getTexture(); + } + } + + Py_DECREF(item); + } + + Py_DECREF(iterator); + if (PyErr_Occurred()) return -1; + + grid->layers_need_sort = true; + return 0; +} + +// #348/#361 - One Python wrapper per GridData. `entity.grid`, `view.grid_data` +// and the layer/GridPoint back-references must all hand back the SAME object, +// so identity (`a.grid is b.grid`) holds and repeated attribute access does not +// churn allocations. +PyObject* PyGridData::pyobject_for(const std::shared_ptr& grid) +{ + if (!grid) Py_RETURN_NONE; + + if (grid->serial_number != 0) { + PyObject* cached = PythonObjectCache::getInstance().lookup(grid->serial_number); + if (cached) return cached; // new strong ref + } + + auto* type = &mcrfpydef::PyGridDataType; + auto* obj = (PyGridDataObject*)type->tp_alloc(type, 0); + if (!obj) return nullptr; + obj->data = grid; + obj->weakreflist = NULL; + + if (grid->serial_number == 0) { + grid->serial_number = PythonObjectCache::getInstance().assignSerial(); + } + PyObject* weakref = PyWeakref_NewRef((PyObject*)obj, NULL); + if (weakref) { + PythonObjectCache::getInstance().registerObject(grid->serial_number, weakref); + Py_DECREF(weakref); + } + return (PyObject*)obj; +} + +// ========================================================================= +// GridData(grid_size=..., texture=..., layers=...) +// ========================================================================= + +int PyGridData::init(PyGridDataObject* self, PyObject* args, PyObject* kwds) +{ + PyObject* grid_size_obj = nullptr; + PyObject* texture_obj = nullptr; + PyObject* layers_obj = nullptr; + int grid_w = 2, grid_h = 2; + + static const char* kwlist[] = { + "grid_size", "texture", "layers", "grid_w", "grid_h", nullptr + }; + + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|OOOii", const_cast(kwlist), + &grid_size_obj, &texture_obj, &layers_obj, + &grid_w, &grid_h)) { + return -1; + } + + std::shared_ptr texture; + if (parse_grid_shape(grid_size_obj, texture_obj, grid_w, grid_h, texture) < 0) { + return -1; + } + + self->data = std::make_shared(grid_w, grid_h, texture); + + if (apply_layers_arg(self->data, layers_obj, texture) < 0) { + return -1; + } + + self->weakreflist = NULL; + + if (self->data->serial_number == 0) { + self->data->serial_number = PythonObjectCache::getInstance().assignSerial(); + PyObject* weakref = PyWeakref_NewRef((PyObject*)self, NULL); + if (weakref) { + PythonObjectCache::getInstance().registerObject(self->data->serial_number, weakref); + Py_DECREF(weakref); + } + } + + return 0; +} diff --git a/src/PyGridData.h b/src/PyGridData.h new file mode 100644 index 0000000..7a44eda --- /dev/null +++ b/src/PyGridData.h @@ -0,0 +1,169 @@ +#pragma once +#include "Common.h" +#include "Python.h" +#include "structmember.h" +#include "IndexTexture.h" +#include "Resources.h" +#include +#include +#include +#include +#include +#include + +#include "PyCallable.h" +#include "PyTexture.h" +#include "PyDrawable.h" +#include "PyColor.h" +#include "PyVector.h" +#include "PyFont.h" + +#include "UIGridPoint.h" +#include "UIEntity.h" +#include "UIDrawable.h" +#include "UIBase.h" +#include "GridLayers.h" +#include "SpatialHash.h" +#include "UIEntityCollection.h" // EntityCollection types (extracted from UIGrid) +#include "GridData.h" // #252 - Data layer base class +#include "UIGridView.h" // #252 - GridView shim + +// Forward declaration for pathfinding +class DijkstraMap; + +// PyGridData - the Python binding layer for GridData (mcrfpy.GridData). +// +// #361: there is no longer a C++ `UIGrid` class. It used to inherit BOTH +// UIDrawable and GridData, which meant every map dragged a second, redundant +// camera and RenderTexture around, and appending one to a scene drew the map a +// second time through that frozen camera. GridData is a MAP -- no position, no +// size, no render() -- and UIGridView is the only widget. This struct holds +// nothing but the static binding functions; it is never instantiated. +struct PyGridData +{ + // Shared by GridData::init and UIGridView::init (the Grid() factory path): + // attaches an iterable of ColorLayer/TileLayer objects to a fresh GridData, + // lazily sizing any layer left at (0,0). Returns -1 with a Python exception + // set on failure. layers_obj == nullptr means "default tilesprite layer"; + // Py_None means "no layers at all" (entity storage + pathfinding only). + static int apply_layers_arg(const std::shared_ptr& grid, + PyObject* layers_obj, + std::shared_ptr default_texture); + + // Parses grid_size/grid_w/grid_h/texture into a validated (w, h, texture) + // triple. Returns -1 with an exception set on failure. + static int parse_grid_shape(PyObject* grid_size_obj, PyObject* texture_obj, + int& grid_w, int& grid_h, + std::shared_ptr& texture_out); + + // Builds (or reuses) the one Python wrapper for a GridData (#348 identity). + static PyObject* pyobject_for(const std::shared_ptr& grid); + + static int init(PyGridDataObject* self, PyObject* args, PyObject* kwds); + static PyObject* get_grid_size(PyGridDataObject* self, void* closure); + static PyObject* get_grid_w(PyGridDataObject* self, void* closure); + static PyObject* get_grid_h(PyGridDataObject* self, void* closure); + static PyObject* get_texture(PyGridDataObject* self, void* closure); + static PyObject* get_fov(PyGridDataObject* self, void* closure); + static int set_fov(PyGridDataObject* self, PyObject* value, void* closure); + static PyObject* get_fov_radius(PyGridDataObject* self, void* closure); + static int set_fov_radius(PyGridDataObject* self, PyObject* value, void* closure); + static PyObject* py_at(PyGridDataObject* self, PyObject* args, PyObject* kwds); + static PyObject* py_compute_fov(PyGridDataObject* self, PyObject* args, PyObject* kwds); + static PyObject* py_is_in_fov(PyGridDataObject* self, PyObject* args, PyObject* kwds); + static PyObject* py_entities_in_radius(PyGridDataObject* self, PyObject* args, PyObject* kwds); + static PyObject* py_apply_threshold(PyGridDataObject* self, PyObject* args, PyObject* kwds); + static PyObject* py_apply_ranges(PyGridDataObject* self, PyObject* args); + static PyObject* py_step(PyGridDataObject* self, PyObject* args, PyObject* kwds); + + static PyGetSetDef getsetters[]; + static PyMappingMethods mpmethods; + static PyObject* subscript(PyGridDataObject* self, PyObject* key); + static PyObject* get_entities(PyGridDataObject* self, void* closure); + // #364: get_children lives on UIGridView -- overlay children belong to the view. + static PyObject* repr(PyGridDataObject* self); + + static PyObject* py_add_layer(PyGridDataObject* self, PyObject* args); + static PyObject* py_remove_layer(PyGridDataObject* self, PyObject* args); + static PyObject* get_layers(PyGridDataObject* self, void* closure); + static PyObject* py_layer(PyGridDataObject* self, PyObject* args); +}; + +// UIEntityCollection types are now in UIEntityCollection.h + +// Forward declaration of methods array +extern PyMethodDef PyGridData_all_methods[]; + +namespace mcrfpydef { + inline PyTypeObject PyGridDataType = { + .ob_base = {.ob_base = {.ob_refcnt = 1, .ob_type = NULL}, .ob_size = 0}, + // #361: public, and NOT a Drawable subclass -- tp_base is left null + // (i.e. `object`). Appending one to scene.children raises TypeError. + .tp_name = "mcrfpy.GridData", + .tp_basicsize = sizeof(PyGridDataObject), + .tp_itemsize = 0, + .tp_dealloc = (destructor)[](PyObject* self) + { + PyGridDataObject* obj = (PyGridDataObject*)self; + PyObject_GC_UnTrack(self); + if (obj->weakreflist != NULL) { + PyObject_ClearWeakRefs(self); + } + // #361: no click/hover callbacks to unregister -- a map is not a + // widget and receives no input. Cell callbacks live on UIGridView + // (#355), overlay children on UIGridView (#364). + obj->data.reset(); + Py_TYPE(self)->tp_free(self); + }, + .tp_repr = (reprfunc)PyGridData::repr, + .tp_as_mapping = &PyGridData::mpmethods, + .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC, + .tp_doc = PyDoc_STR("GridData(grid_size=None, texture=None, layers=None)\n\n" + "A tile map: cells, entities, layers, FOV and pathfinding state.\n\n" + "GridData is DATA, not a widget -- it has no position, no size, no\n" + "camera, and is never drawn. Appending one to a scene raises TypeError.\n" + "To display it, point one or more Grid (GridView) cameras at it:\n\n" + " data = mcrfpy.GridData(grid_size=(80, 40))\n" + " main = mcrfpy.Grid(grid=data, pos=(0, 0), size=(800, 400))\n" + " mini = mcrfpy.Grid(grid=data, pos=(820, 0), size=(160, 80))\n\n" + "Both views show the same map and the same entities, each through its\n" + "own camera. A map with no view at all is perfectly valid (an offscreen\n" + "level, still steppable and queryable).\n\n" + "mcrfpy.Grid(grid_size=...) is sugar for a GridView that creates its own\n" + "GridData; reach it with `grid.grid_data`.\n\n" + "Args:\n" + " grid_size (tuple): Grid dimensions as (grid_w, grid_h). Default: (2, 2)\n" + " texture (Texture): Tile atlas; defines the cell size in pixels.\n" + " layers (list): ColorLayer/TileLayer objects. Omit for a default\n" + " 'tilesprite' TileLayer; pass None for no layers at all.\n\n" + "Attributes:\n" + " grid_size (Vector, read-only): Dimensions in tiles\n" + " grid_w, grid_h (int, read-only): Dimensions in tiles\n" + " texture (Texture, read-only): Tile atlas\n" + " entities (EntityCollection): Entities on this map\n" + " layers (tuple, read-only): Layers sorted by z_index\n" + " fov (FOV): Default field-of-view algorithm\n" + " fov_radius (int): Default field-of-view radius"), + .tp_traverse = [](PyObject* self, visitproc visit, void* arg) -> int { + // #361: a GridData holds no Python callbacks -- nothing to visit. + (void)self; (void)visit; (void)arg; + return 0; + }, + .tp_clear = [](PyObject* self) -> int { + (void)self; + return 0; + }, + .tp_methods = PyGridData_all_methods, + .tp_getset = PyGridData::getsetters, + .tp_init = (initproc)PyGridData::init, + .tp_new = [](PyTypeObject* type, PyObject* args, PyObject* kwds) -> PyObject* + { + PyGridDataObject* self = (PyGridDataObject*)type->tp_alloc(type, 0); + if (self) { + self->data = std::make_shared(); + self->weakreflist = nullptr; + } + return (PyObject*)self; + } + }; +} diff --git a/src/UIGridPyMethods.cpp b/src/PyGridDataMethods.cpp similarity index 69% rename from src/UIGridPyMethods.cpp rename to src/PyGridDataMethods.cpp index b77ec2f..e49f4e1 100644 --- a/src/UIGridPyMethods.cpp +++ b/src/PyGridDataMethods.cpp @@ -1,8 +1,9 @@ -// UIGridPyMethods.cpp — Python method implementations for UIGrid -// Extracted from UIGrid.cpp (#149) for maintainability. +// PyGridDataMethods.cpp - Python method implementations for GridData. +// #361: center_camera() moved to UIGridView (a map has no camera), and the +// UIDrawable method set is gone (a map is not a widget). // Contains: FOV, layer management, spatial queries, camera, heightmap ops, // step/behavior system, py_at/subscript, and method table arrays. -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" #include "UIGridPathfinding.h" #include "McRFPy_API.h" @@ -21,7 +22,7 @@ // Cell access: py_at, subscript, mpmethods // ========================================================================= -PyObject* UIGrid::py_at(PyUIGridObject* self, PyObject* args, PyObject* kwds) +PyObject* PyGridData::py_at(PyGridDataObject* self, PyObject* args, PyObject* kwds) { int x, y; @@ -46,7 +47,7 @@ PyObject* UIGrid::py_at(PyUIGridObject* self, PyObject* args, PyObject* kwds) return (PyObject*)obj; } -PyObject* UIGrid::subscript(PyUIGridObject* self, PyObject* key) +PyObject* PyGridData::subscript(PyGridDataObject* self, PyObject* key) { if (!PyTuple_Check(key) || PyTuple_Size(key) != 2) { PyErr_SetString(PyExc_TypeError, "Grid indices must be a tuple of (x, y)"); @@ -84,7 +85,7 @@ PyObject* UIGrid::subscript(PyUIGridObject* self, PyObject* key) } // Setitem on _GridData / Grid: GridPoints are views, not assignable. -static int UIGrid_subscript_assign(PyUIGridObject* self, PyObject* key, PyObject* value) +static int UIGrid_subscript_assign(PyGridDataObject* self, PyObject* key, PyObject* value) { (void)self; (void)key; (void)value; PyErr_SetString(PyExc_TypeError, @@ -92,9 +93,9 @@ static int UIGrid_subscript_assign(PyUIGridObject* self, PyObject* key, PyObject return -1; } -PyMappingMethods UIGrid::mpmethods = { +PyMappingMethods PyGridData::mpmethods = { .mp_length = NULL, - .mp_subscript = (binaryfunc)UIGrid::subscript, + .mp_subscript = (binaryfunc)PyGridData::subscript, .mp_ass_subscript = (objobjargproc)UIGrid_subscript_assign, }; @@ -102,7 +103,7 @@ PyMappingMethods UIGrid::mpmethods = { // FOV methods // ========================================================================= -PyObject* UIGrid::py_compute_fov(PyUIGridObject* self, PyObject* args, PyObject* kwds) +PyObject* PyGridData::py_compute_fov(PyGridDataObject* self, PyObject* args, PyObject* kwds) { static const char* kwlist[] = {"pos", "radius", "light_walls", "algorithm", NULL}; PyObject* pos_obj = NULL; @@ -135,7 +136,7 @@ PyObject* UIGrid::py_compute_fov(PyUIGridObject* self, PyObject* args, PyObject* Py_RETURN_NONE; } -PyObject* UIGrid::py_is_in_fov(PyUIGridObject* self, PyObject* args, PyObject* kwds) +PyObject* PyGridData::py_is_in_fov(PyGridDataObject* self, PyObject* args, PyObject* kwds) { int x, y; if (!PyPosition_ParseInt(args, kwds, &x, &y)) { @@ -150,7 +151,7 @@ PyObject* UIGrid::py_is_in_fov(PyUIGridObject* self, PyObject* args, PyObject* k // Layer management // ========================================================================= -PyObject* UIGrid::py_add_layer(PyUIGridObject* self, PyObject* args) { +PyObject* PyGridData::py_add_layer(PyGridDataObject* self, PyObject* args) { PyObject* layer_obj; if (!PyArg_ParseTuple(args, "O", &layer_obj)) { return NULL; @@ -177,7 +178,7 @@ PyObject* UIGrid::py_add_layer(PyUIGridObject* self, PyObject* args) { layer = py_layer->data; py_layer_ref = layer_obj; - if (!layer->name.empty() && UIGrid::isProtectedLayerName(layer->name)) { + if (!layer->name.empty() && GridData::isProtectedLayerName(layer->name)) { PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", layer->name.c_str()); return NULL; } @@ -219,7 +220,7 @@ PyObject* UIGrid::py_add_layer(PyUIGridObject* self, PyObject* args) { layer = py_layer->data; py_layer_ref = layer_obj; - if (!layer->name.empty() && UIGrid::isProtectedLayerName(layer->name)) { + if (!layer->name.empty() && GridData::isProtectedLayerName(layer->name)) { PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", layer->name.c_str()); return NULL; } @@ -260,7 +261,7 @@ PyObject* UIGrid::py_add_layer(PyUIGridObject* self, PyObject* args) { return py_layer_ref; } -PyObject* UIGrid::py_remove_layer(PyUIGridObject* self, PyObject* args) { +PyObject* PyGridData::py_remove_layer(PyGridDataObject* self, PyObject* args) { PyObject* layer_obj; if (!PyArg_ParseTuple(args, "O", &layer_obj)) { return NULL; @@ -305,7 +306,7 @@ PyObject* UIGrid::py_remove_layer(PyUIGridObject* self, PyObject* args) { return NULL; } -PyObject* UIGrid::py_layer(PyUIGridObject* self, PyObject* args) { +PyObject* PyGridData::py_layer(PyGridDataObject* self, PyObject* args) { const char* name_str; if (!PyArg_ParseTuple(args, "s", &name_str)) { return NULL; @@ -339,7 +340,7 @@ PyObject* UIGrid::py_layer(PyUIGridObject* self, PyObject* args) { // Spatial queries // ========================================================================= -PyObject* UIGrid::py_entities_in_radius(PyUIGridObject* self, PyObject* args, PyObject* kwds) +PyObject* PyGridData::py_entities_in_radius(PyGridDataObject* self, PyObject* args, PyObject* kwds) { static const char* kwlist[] = {"pos", "radius", NULL}; PyObject* pos_obj; @@ -390,74 +391,11 @@ PyObject* UIGrid::py_entities_in_radius(PyUIGridObject* self, PyObject* args, Py return result; } -// ========================================================================= -// Camera positioning -// ========================================================================= - -void UIGrid::center_camera() { - int cell_width = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; - int cell_height = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; - center_x = (grid_w / 2.0f) * cell_width; - center_y = (grid_h / 2.0f) * cell_height; - markDirty(); -} - -void UIGrid::center_camera(float tile_x, float tile_y) { - int cell_width = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; - int cell_height = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; - float half_viewport_x = box.getSize().x / zoom / 2.0f; - float half_viewport_y = box.getSize().y / zoom / 2.0f; - center_x = tile_x * cell_width + half_viewport_x; - center_y = tile_y * cell_height + half_viewport_y; - markDirty(); -} - -PyObject* UIGrid::py_center_camera(PyUIGridObject* self, PyObject* args) { - PyObject* pos_arg = nullptr; - - if (!PyArg_ParseTuple(args, "|O", &pos_arg)) { - return nullptr; - } - - if (pos_arg == nullptr || pos_arg == Py_None) { - self->data->center_camera(); - } else if (PyTuple_Check(pos_arg) && PyTuple_Size(pos_arg) == 2) { - PyObject* x_obj = PyTuple_GetItem(pos_arg, 0); - PyObject* y_obj = PyTuple_GetItem(pos_arg, 1); - - float tile_x, tile_y; - if (PyFloat_Check(x_obj)) { - tile_x = PyFloat_AsDouble(x_obj); - } else if (PyLong_Check(x_obj)) { - tile_x = (float)PyLong_AsLong(x_obj); - } else { - PyErr_SetString(PyExc_TypeError, "tile coordinates must be numeric"); - return nullptr; - } - - if (PyFloat_Check(y_obj)) { - tile_y = PyFloat_AsDouble(y_obj); - } else if (PyLong_Check(y_obj)) { - tile_y = (float)PyLong_AsLong(y_obj); - } else { - PyErr_SetString(PyExc_TypeError, "tile coordinates must be numeric"); - return nullptr; - } - - self->data->center_camera(tile_x, tile_y); - } else { - PyErr_SetString(PyExc_TypeError, "center_camera() takes an optional tuple (tile_x, tile_y)"); - return nullptr; - } - - Py_RETURN_NONE; -} - // ========================================================================= // HeightMap application methods // ========================================================================= -PyObject* UIGrid::py_apply_threshold(PyUIGridObject* self, PyObject* args, PyObject* kwds) { +PyObject* PyGridData::py_apply_threshold(PyGridDataObject* self, PyObject* args, PyObject* kwds) { static const char* keywords[] = {"source", "range", "walkable", "transparent", nullptr}; PyObject* source_obj = nullptr; PyObject* range_obj = nullptr; @@ -533,7 +471,7 @@ PyObject* UIGrid::py_apply_threshold(PyUIGridObject* self, PyObject* args, PyObj return (PyObject*)self; } -PyObject* UIGrid::py_apply_ranges(PyUIGridObject* self, PyObject* args) { +PyObject* PyGridData::py_apply_ranges(PyGridDataObject* self, PyObject* args) { PyObject* source_obj = nullptr; PyObject* ranges_obj = nullptr; @@ -696,7 +634,7 @@ static void fireStepCallback(std::shared_ptr& entity, int trigger_int, Py_DECREF(trigger_obj); } -PyObject* UIGrid::py_step(PyUIGridObject* self, PyObject* args, PyObject* kwds) { +PyObject* PyGridData::py_step(PyGridDataObject* self, PyObject* args, PyObject* kwds) { static const char* kwlist[] = {"n", "turn_order", nullptr}; int n = 1; PyObject* turn_order_filter = nullptr; @@ -827,10 +765,7 @@ PyObject* UIGrid::py_step(PyUIGridObject* self, PyObject* args, PyObject* kwds) } // #351 - invalidate the view's render early-out once if anything moved. - // Must call the GridData override explicitly: UIGrid's `using - // UIDrawable::markCompositeDirty` would otherwise shadow it and skip the - // content_generation bump + registered-views notification. - if (content_changed) grid->GridData::markCompositeDirty(); + if (content_changed) grid->markCompositeDirty(); Py_RETURN_NONE; } @@ -839,9 +774,11 @@ PyObject* UIGrid::py_step(PyUIGridObject* self, PyObject* args, PyObject* kwds) // Method tables // ========================================================================= -PyMethodDef UIGrid::methods[] = { - {"at", (PyCFunction)UIGrid::py_at, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, at, +typedef PyGridDataObject PyObjectType; + +PyMethodDef PyGridData_all_methods[] = { + {"at", (PyCFunction)PyGridData::py_at, METH_VARARGS | METH_KEYWORDS, + MCRF_METHOD(GridData, at, MCRF_SIG("(x: int, y: int)", "GridPoint"), MCRF_DESC("Return the GridPoint cell at grid coordinates (x, y)."), MCRF_ARGS_START @@ -851,8 +788,8 @@ PyMethodDef UIGrid::methods[] = { MCRF_RAISES("IndexError", "If x or y is out of range") MCRF_NOTE("Also accepts a single positional tuple/list/Vector: at((x, y)) or at(vec), or keyword form: at(pos=(x, y)).") )}, - {"compute_fov", (PyCFunction)UIGrid::py_compute_fov, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, compute_fov, + {"compute_fov", (PyCFunction)PyGridData::py_compute_fov, METH_VARARGS | METH_KEYWORDS, + MCRF_METHOD(GridData, compute_fov, MCRF_SIG("(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC)", "None"), MCRF_DESC("Compute field of view from a position. Updates the internal FOV state; use is_in_fov() to query visibility."), MCRF_ARGS_START @@ -862,8 +799,8 @@ PyMethodDef UIGrid::methods[] = { MCRF_ARG("algorithm", "FOV algorithm to use (FOV.BASIC, FOV.DIAMOND, FOV.SHADOW, FOV.PERMISSIVE_0-8)") MCRF_RETURNS("None") )}, - {"is_in_fov", (PyCFunction)UIGrid::py_is_in_fov, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, is_in_fov, + {"is_in_fov", (PyCFunction)PyGridData::py_is_in_fov, METH_VARARGS | METH_KEYWORDS, + MCRF_METHOD(GridData, is_in_fov, MCRF_SIG("(x: int, y: int)", "bool"), MCRF_DESC("Check if a cell is in the field of view. Must call compute_fov() first to calculate visibility."), MCRF_ARGS_START @@ -873,7 +810,7 @@ PyMethodDef UIGrid::methods[] = { MCRF_NOTE("Also accepts a single positional tuple/list/Vector: is_in_fov((x, y)) or is_in_fov(vec), or keyword form: is_in_fov(pos=(x, y)).") )}, {"find_path", (PyCFunction)UIGridPathfinding::Grid_find_path, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, find_path, + MCRF_METHOD(GridData, find_path, MCRF_SIG("(start, end, diagonal_cost: float = 1.41, collide: str = None, heuristic = None, weight: float = 1.0)", "AStarPath | None"), MCRF_DESC("Compute A* path between two points. The returned AStarPath can be iterated or walked step-by-step."), MCRF_ARGS_START @@ -886,7 +823,7 @@ PyMethodDef UIGrid::methods[] = { MCRF_RETURNS("AStarPath object if path exists, None otherwise") )}, {"get_dijkstra_map", (PyCFunction)UIGridPathfinding::Grid_get_dijkstra_map, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, get_dijkstra_map, + MCRF_METHOD(GridData, get_dijkstra_map, MCRF_SIG("(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None)", "DijkstraMap"), MCRF_DESC("Get or create a cached Dijkstra distance map for a root position. Call clear_dijkstra_maps() after changing grid walkability to invalidate."), MCRF_ARGS_START @@ -897,12 +834,12 @@ PyMethodDef UIGrid::methods[] = { MCRF_RETURNS("DijkstraMap object for querying distances and paths") )}, {"clear_dijkstra_maps", (PyCFunction)UIGridPathfinding::Grid_clear_dijkstra_maps, METH_NOARGS, - MCRF_METHOD(Grid, clear_dijkstra_maps, + MCRF_METHOD(GridData, clear_dijkstra_maps, MCRF_SIG("()", "None"), MCRF_DESC("Clear all cached Dijkstra maps. Call this after modifying grid cell walkability to ensure pathfinding uses updated walkability data.") )}, - {"add_layer", (PyCFunction)UIGrid::py_add_layer, METH_VARARGS, - MCRF_METHOD(Grid, add_layer, + {"add_layer", (PyCFunction)PyGridData::py_add_layer, METH_VARARGS, + MCRF_METHOD(GridData, add_layer, MCRF_SIG("(layer: ColorLayer | TileLayer)", "ColorLayer | TileLayer"), MCRF_DESC("Add a layer to the grid. Layers with size (0, 0) are automatically resized to match the grid."), MCRF_ARGS_START @@ -911,8 +848,8 @@ PyMethodDef UIGrid::methods[] = { MCRF_RAISES("ValueError", "If layer is already attached to another grid, or if layer size doesn't match grid (and isn't (0,0))") MCRF_RAISES("TypeError", "If argument is not a ColorLayer or TileLayer") )}, - {"remove_layer", (PyCFunction)UIGrid::py_remove_layer, METH_VARARGS, - MCRF_METHOD(Grid, remove_layer, + {"remove_layer", (PyCFunction)PyGridData::py_remove_layer, METH_VARARGS, + MCRF_METHOD(GridData, remove_layer, MCRF_SIG("(name_or_layer: str | ColorLayer | TileLayer)", "None"), MCRF_DESC("Remove a layer from the grid by name or by object reference."), MCRF_ARGS_START @@ -920,16 +857,16 @@ PyMethodDef UIGrid::methods[] = { MCRF_RAISES("KeyError", "If name is provided but no layer with that name exists") MCRF_RAISES("TypeError", "If argument is not a string, ColorLayer, or TileLayer") )}, - {"layer", (PyCFunction)UIGrid::py_layer, METH_VARARGS, - MCRF_METHOD(Grid, layer, + {"layer", (PyCFunction)PyGridData::py_layer, METH_VARARGS, + MCRF_METHOD(GridData, layer, MCRF_SIG("(name: str)", "ColorLayer | TileLayer | None"), MCRF_DESC("Get a layer by its name."), MCRF_ARGS_START MCRF_ARG("name", "The name of the layer to find") MCRF_RETURNS("The layer with the specified name, or None if not found") )}, - {"entities_in_radius", (PyCFunction)UIGrid::py_entities_in_radius, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, entities_in_radius, + {"entities_in_radius", (PyCFunction)PyGridData::py_entities_in_radius, METH_VARARGS | METH_KEYWORDS, + MCRF_METHOD(GridData, entities_in_radius, MCRF_SIG("(pos: tuple | Vector, radius: float)", "list"), MCRF_DESC("Query entities within radius using spatial hash (O(k) where k = nearby entities)."), MCRF_ARGS_START @@ -937,168 +874,29 @@ PyMethodDef UIGrid::methods[] = { MCRF_ARG("radius", "Search radius") MCRF_RETURNS("List of Entity objects within the radius") )}, - {"center_camera", (PyCFunction)UIGrid::py_center_camera, METH_VARARGS, - MCRF_METHOD(Grid, center_camera, - MCRF_SIG("(pos: tuple = None)", "None"), - MCRF_DESC("Center the camera on a tile coordinate. If pos is None, centers on the grid's middle tile."), - MCRF_ARGS_START - MCRF_ARG("pos", "Optional (tile_x, tile_y) tuple. If None, centers on grid's middle tile.") - )}, - {"apply_threshold", (PyCFunction)UIGrid::py_apply_threshold, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, apply_threshold, - MCRF_SIG("(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None)", "Grid"), + {"apply_threshold", (PyCFunction)PyGridData::py_apply_threshold, METH_VARARGS | METH_KEYWORDS, + MCRF_METHOD(GridData, apply_threshold, + MCRF_SIG("(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None)", "GridData"), MCRF_DESC("Apply walkable/transparent properties to cells where heightmap values fall within range."), MCRF_ARGS_START MCRF_ARG("source", "HeightMap with values to check. Must match grid size.") MCRF_ARG("range", "Tuple of (min, max) - cells with values in this range are affected") MCRF_ARG("walkable", "If not None, set walkable to this value for cells in range") MCRF_ARG("transparent", "If not None, set transparent to this value for cells in range") - MCRF_RETURNS("Grid: self, for method chaining") + MCRF_RETURNS("GridData: self, for method chaining") MCRF_RAISES("ValueError", "If HeightMap size doesn't match grid size") )}, - {"apply_ranges", (PyCFunction)UIGrid::py_apply_ranges, METH_VARARGS, - MCRF_METHOD(Grid, apply_ranges, - MCRF_SIG("(source: HeightMap, ranges: list)", "Grid"), + {"apply_ranges", (PyCFunction)PyGridData::py_apply_ranges, METH_VARARGS, + MCRF_METHOD(GridData, apply_ranges, + MCRF_SIG("(source: HeightMap, ranges: list)", "GridData"), MCRF_DESC("Apply multiple walkability thresholds to the grid in a single pass."), MCRF_ARGS_START MCRF_ARG("source", "HeightMap with values to check. Must match grid size.") MCRF_ARG("ranges", "List of (range_tuple, properties_dict) tuples where range_tuple=(min,max) and properties_dict has 'walkable'/'transparent' keys") - MCRF_RETURNS("Grid: self, for method chaining") + MCRF_RETURNS("GridData: self, for method chaining") )}, - {NULL, NULL, 0, NULL} -}; - -typedef PyUIGridObject PyObjectType; - -PyMethodDef UIGrid_all_methods[] = { - UIDRAWABLE_METHODS, - {"at", (PyCFunction)UIGrid::py_at, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, at, - MCRF_SIG("(x: int, y: int)", "GridPoint"), - MCRF_DESC("Return the GridPoint cell at grid coordinates (x, y)."), - MCRF_ARGS_START - MCRF_ARG("x", "Column index (0-based)") - MCRF_ARG("y", "Row index (0-based)") - MCRF_RETURNS("GridPoint: the cell at the given position") - MCRF_RAISES("IndexError", "If x or y is out of range") - MCRF_NOTE("Also accepts a single positional tuple/list/Vector: at((x, y)) or at(vec), or keyword form: at(pos=(x, y)).") - )}, - {"compute_fov", (PyCFunction)UIGrid::py_compute_fov, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, compute_fov, - MCRF_SIG("(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC)", "None"), - MCRF_DESC("Compute field of view from a position. Updates the internal FOV state; use is_in_fov() to query visibility."), - MCRF_ARGS_START - MCRF_ARG("pos", "Position as (x, y) tuple, list, or Vector") - MCRF_ARG("radius", "Maximum view distance (0 = unlimited)") - MCRF_ARG("light_walls", "Whether walls are lit when visible") - MCRF_ARG("algorithm", "FOV algorithm to use (FOV.BASIC, FOV.DIAMOND, FOV.SHADOW, FOV.PERMISSIVE_0-8)") - MCRF_RETURNS("None") - )}, - {"is_in_fov", (PyCFunction)UIGrid::py_is_in_fov, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, is_in_fov, - MCRF_SIG("(x: int, y: int)", "bool"), - MCRF_DESC("Check if a cell is in the field of view. Must call compute_fov() first to calculate visibility."), - MCRF_ARGS_START - MCRF_ARG("x", "Column index (0-based)") - MCRF_ARG("y", "Row index (0-based)") - MCRF_RETURNS("True if the cell is visible, False otherwise") - MCRF_NOTE("Also accepts a single positional tuple/list/Vector: is_in_fov((x, y)) or is_in_fov(vec), or keyword form: is_in_fov(pos=(x, y)).") - )}, - {"find_path", (PyCFunction)UIGridPathfinding::Grid_find_path, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, find_path, - MCRF_SIG("(start, end, diagonal_cost: float = 1.41, collide: str = None, heuristic = None, weight: float = 1.0)", "AStarPath | None"), - MCRF_DESC("Compute A* path between two points. The returned AStarPath can be iterated or walked step-by-step."), - MCRF_ARGS_START - MCRF_ARG("start", "Starting position as Vector, Entity, or (x, y) tuple") - MCRF_ARG("end", "Target position as Vector, Entity, or (x, y) tuple") - MCRF_ARG("diagonal_cost", "Cost of diagonal movement (default: 1.41)") - MCRF_ARG("collide", "Label string. Entities with this label block pathfinding.") - MCRF_ARG("heuristic", "Heuristic enum member, string name, or int (EUCLIDEAN=0, MANHATTAN=1, CHEBYSHEV=2). None uses default (Euclidean).") - MCRF_ARG("weight", "Heuristic weight multiplier. Values > 1.0 trade optimality for speed (weighted A*).") - MCRF_RETURNS("AStarPath object if path exists, None otherwise") - )}, - {"get_dijkstra_map", (PyCFunction)UIGridPathfinding::Grid_get_dijkstra_map, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, get_dijkstra_map, - MCRF_SIG("(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None)", "DijkstraMap"), - MCRF_DESC("Get or create a cached Dijkstra distance map for a root position. Call clear_dijkstra_maps() after changing grid walkability to invalidate."), - MCRF_ARGS_START - MCRF_ARG("root", "Root position as Vector, Entity, or (x, y) tuple. Use 'root' for single-source maps (cached by position).") - MCRF_ARG("diagonal_cost", "Cost of diagonal movement (default: 1.41)") - MCRF_ARG("collide", "Label string. Entities with this label block pathfinding.") - MCRF_ARG("roots", "Sequence of root positions or a DiscreteMap mask for multi-source Dijkstra. Pass 'roots' instead of 'root' for multi-source maps (not cached).") - MCRF_RETURNS("DijkstraMap object for querying distances and paths") - )}, - {"clear_dijkstra_maps", (PyCFunction)UIGridPathfinding::Grid_clear_dijkstra_maps, METH_NOARGS, - MCRF_METHOD(Grid, clear_dijkstra_maps, - MCRF_SIG("()", "None"), - MCRF_DESC("Clear all cached Dijkstra maps. Call this after modifying grid cell walkability to ensure pathfinding uses updated walkability data.") - )}, - {"add_layer", (PyCFunction)UIGrid::py_add_layer, METH_VARARGS, - MCRF_METHOD(Grid, add_layer, - MCRF_SIG("(layer: ColorLayer | TileLayer)", "ColorLayer | TileLayer"), - MCRF_DESC("Add a layer to the grid. Layers with size (0, 0) are automatically resized to match the grid."), - MCRF_ARGS_START - MCRF_ARG("layer", "A ColorLayer or TileLayer object. Named layers replace any existing layer with the same name.") - MCRF_RETURNS("The added layer object") - MCRF_RAISES("ValueError", "If layer is already attached to another grid, or if layer size doesn't match grid (and isn't (0,0))") - MCRF_RAISES("TypeError", "If argument is not a ColorLayer or TileLayer") - )}, - {"remove_layer", (PyCFunction)UIGrid::py_remove_layer, METH_VARARGS, - MCRF_METHOD(Grid, remove_layer, - MCRF_SIG("(name_or_layer: str | ColorLayer | TileLayer)", "None"), - MCRF_DESC("Remove a layer from the grid by name or by object reference."), - MCRF_ARGS_START - MCRF_ARG("name_or_layer", "Either a layer name (str) or the layer object itself") - MCRF_RAISES("KeyError", "If name is provided but no layer with that name exists") - MCRF_RAISES("TypeError", "If argument is not a string, ColorLayer, or TileLayer") - )}, - {"layer", (PyCFunction)UIGrid::py_layer, METH_VARARGS, - MCRF_METHOD(Grid, layer, - MCRF_SIG("(name: str)", "ColorLayer | TileLayer | None"), - MCRF_DESC("Get a layer by its name."), - MCRF_ARGS_START - MCRF_ARG("name", "The name of the layer to find") - MCRF_RETURNS("The layer with the specified name, or None if not found") - )}, - {"entities_in_radius", (PyCFunction)UIGrid::py_entities_in_radius, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, entities_in_radius, - MCRF_SIG("(pos: tuple | Vector, radius: float)", "list"), - MCRF_DESC("Query entities within radius using spatial hash (O(k) where k = nearby entities)."), - MCRF_ARGS_START - MCRF_ARG("pos", "Center position as (x, y) tuple, Vector, or other 2-element sequence") - MCRF_ARG("radius", "Search radius") - MCRF_RETURNS("List of Entity objects within the radius") - )}, - {"center_camera", (PyCFunction)UIGrid::py_center_camera, METH_VARARGS, - MCRF_METHOD(Grid, center_camera, - MCRF_SIG("(pos: tuple = None)", "None"), - MCRF_DESC("Center the camera on a tile coordinate. If pos is None, centers on the grid's middle tile."), - MCRF_ARGS_START - MCRF_ARG("pos", "Optional (tile_x, tile_y) tuple. If None, centers on grid's middle tile.") - )}, - {"apply_threshold", (PyCFunction)UIGrid::py_apply_threshold, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, apply_threshold, - MCRF_SIG("(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None)", "Grid"), - MCRF_DESC("Apply walkable/transparent properties to cells where heightmap values fall within range."), - MCRF_ARGS_START - MCRF_ARG("source", "HeightMap with values to check. Must match grid size.") - MCRF_ARG("range", "Tuple of (min, max) - cells with values in this range are affected") - MCRF_ARG("walkable", "If not None, set walkable to this value for cells in range") - MCRF_ARG("transparent", "If not None, set transparent to this value for cells in range") - MCRF_RETURNS("Grid: self, for method chaining") - MCRF_RAISES("ValueError", "If HeightMap size doesn't match grid size") - )}, - {"apply_ranges", (PyCFunction)UIGrid::py_apply_ranges, METH_VARARGS, - MCRF_METHOD(Grid, apply_ranges, - MCRF_SIG("(source: HeightMap, ranges: list)", "Grid"), - MCRF_DESC("Apply multiple walkability thresholds to the grid in a single pass."), - MCRF_ARGS_START - MCRF_ARG("source", "HeightMap with values to check. Must match grid size.") - MCRF_ARG("ranges", "List of (range_tuple, properties_dict) tuples where range_tuple=(min,max) and properties_dict has 'walkable'/'transparent' keys") - MCRF_RETURNS("Grid: self, for method chaining") - )}, - {"step", (PyCFunction)UIGrid::py_step, METH_VARARGS | METH_KEYWORDS, - MCRF_METHOD(Grid, step, + {"step", (PyCFunction)PyGridData::py_step, METH_VARARGS | METH_KEYWORDS, + MCRF_METHOD(GridData, step, MCRF_SIG("(n: int = 1, turn_order: int = None)", "None"), MCRF_DESC("Execute n rounds of turn-based entity behavior. Each round: entities grouped by turn_order (ascending), behaviors executed, triggers fired (TARGET, DONE, BLOCKED), movement animated."), MCRF_ARGS_START diff --git a/src/PyGridDataProperties.cpp b/src/PyGridDataProperties.cpp new file mode 100644 index 0000000..ebd109b --- /dev/null +++ b/src/PyGridDataProperties.cpp @@ -0,0 +1,214 @@ +// PyGridDataProperties.cpp - Python getter/setter implementations for GridData. +// #361: the widget properties (pos/size/center/zoom/camera_rotation/fill_color/ +// x/y/w/h/on_click/z_index/name/visible/opacity/align/rotation/shader) are gone -- +// a map has no position and is never drawn. They live on UIGridView, which is the +// only widget. What is left is what a MAP actually has. +#include "PyGridData.h" +#include "UIGridView.h" +#include "McRFPy_API.h" +#include "PythonObjectCache.h" +#include "PyColor.h" +#include "PyVector.h" +#include "PyFOV.h" +#include "UIBase.h" +#include "UICollection.h" +#include "McRFPy_Doc.h" + +// ========================================================================= +// Grid dimension properties +// ========================================================================= + +PyObject* PyGridData::get_grid_size(PyGridDataObject* self, void* closure) { + return PyVector(sf::Vector2f(static_cast(self->data->grid_w), + static_cast(self->data->grid_h))).pyObject(); +} + +PyObject* PyGridData::get_grid_w(PyGridDataObject* self, void* closure) { + return PyLong_FromLong(self->data->grid_w); +} + +PyObject* PyGridData::get_grid_h(PyGridDataObject* self, void* closure) { + return PyLong_FromLong(self->data->grid_h); +} + +// ========================================================================= +// Texture property +// ========================================================================= + +PyObject* PyGridData::get_texture(PyGridDataObject* self, void* closure) { + auto texture = self->data->getTexture(); + if (!texture) { + Py_RETURN_NONE; + } + + auto type = &mcrfpydef::PyTextureType; + auto obj = (PyTextureObject*)type->tp_alloc(type, 0); + obj->data = texture; + return (PyObject*)obj; +} + +PyObject* PyGridData::get_fov(PyGridDataObject* self, void* closure) +{ + if (PyFOV::fov_enum_class) { + PyObject* value = PyLong_FromLong(self->data->fov_algorithm); + if (!value) return NULL; + + PyObject* args = PyTuple_Pack(1, value); + Py_DECREF(value); + if (!args) return NULL; + + PyObject* result = PyObject_Call(PyFOV::fov_enum_class, args, NULL); + Py_DECREF(args); + return result; + } + return PyLong_FromLong(self->data->fov_algorithm); +} + +int PyGridData::set_fov(PyGridDataObject* self, PyObject* value, void* closure) +{ + TCOD_fov_algorithm_t algo; + if (!PyFOV::from_arg(value, &algo, nullptr)) { + return -1; + } + self->data->fov_algorithm = algo; + self->data->markDirty(); + return 0; +} + +PyObject* PyGridData::get_fov_radius(PyGridDataObject* self, void* closure) +{ + return PyLong_FromLong(self->data->fov_radius); +} + +int PyGridData::set_fov_radius(PyGridDataObject* self, PyObject* value, void* closure) +{ + if (!PyLong_Check(value)) { + PyErr_SetString(PyExc_TypeError, "fov_radius must be an integer"); + return -1; + } + long radius = PyLong_AsLong(value); + if (radius == -1 && PyErr_Occurred()) { + return -1; + } + if (radius < 0) { + PyErr_SetString(PyExc_ValueError, "fov_radius must be non-negative"); + return -1; + } + self->data->fov_radius = (int)radius; + self->data->markDirty(); + return 0; +} + +// ========================================================================= +// Collection getters +// ========================================================================= + +PyObject* PyGridData::get_entities(PyGridDataObject* self, void* closure) +{ + PyTypeObject* type = &mcrfpydef::PyUIEntityCollectionType; + auto o = (PyUIEntityCollectionObject*)type->tp_alloc(type, 0); + if (o) { + o->data = self->data->entities; + o->grid = self->data; + } + return (PyObject*)o; +} + +// #364: get_children moved to UIGridView. GridData holds no drawables, so the +// internal _GridData no longer exposes a children collection at all. + +PyObject* PyGridData::get_layers(PyGridDataObject* self, void* closure) { + self->data->sortLayers(); + + PyObject* tuple = PyTuple_New(self->data->layers.size()); + if (!tuple) return NULL; + + auto* color_layer_type = &mcrfpydef::PyColorLayerType; + auto* tile_layer_type = &mcrfpydef::PyTileLayerType; + + for (size_t i = 0; i < self->data->layers.size(); ++i) { + auto& layer = self->data->layers[i]; + PyObject* py_layer = nullptr; + + if (layer->type == GridLayerType::Color) { + PyColorLayerObject* obj = (PyColorLayerObject*)color_layer_type->tp_alloc(color_layer_type, 0); + if (obj) { + obj->data = std::static_pointer_cast(layer); + obj->grid = self->data; + py_layer = (PyObject*)obj; + } + } else { + PyTileLayerObject* obj = (PyTileLayerObject*)tile_layer_type->tp_alloc(tile_layer_type, 0); + if (obj) { + obj->data = std::static_pointer_cast(layer); + obj->grid = self->data; + py_layer = (PyObject*)obj; + } + } + + if (!py_layer) { + Py_DECREF(tuple); + return NULL; + } + + PyTuple_SET_ITEM(tuple, i, py_layer); + } + + return tuple; +} + +// ========================================================================= +// repr +// ========================================================================= + +PyObject* PyGridData::repr(PyGridDataObject* self) +{ + std::ostringstream ss; + if (!self->data) ss << ""; + else { + auto grid = self->data; + ss << "grid_w << "x" << grid->grid_h << ", " + << grid->entities->size() << " entities, " + << grid->layers.size() << " layers)>"; + } + std::string repr_str = ss.str(); + return PyUnicode_DecodeUTF8(repr_str.c_str(), repr_str.size(), "replace"); +} + +// #355 - cell callback properties moved to UIGridView (src/UIGridView.cpp) + +// ========================================================================= +// getsetters[] table +// +// #361: a map has no pos/size/center/zoom/camera_rotation/fill_color/x/y/w/h/ +// on_click/z_index/name/visible/opacity/align/rotation/shader. Every one of those +// was a widget property that happened to hang off the data because UIGrid was +// both. They are on UIGridView now. What a GridData exposes is its shape, its +// contents, and its FOV defaults. +// ========================================================================= + +PyGetSetDef PyGridData::getsetters[] = { + + {"grid_size", (getter)PyGridData::get_grid_size, NULL, + MCRF_PROPERTY(grid_size, "Grid dimensions as (grid_w, grid_h) (Vector, read-only)."), NULL}, + {"grid_w", (getter)PyGridData::get_grid_w, NULL, + MCRF_PROPERTY(grid_w, "Grid width in cells (int, read-only)."), NULL}, + {"grid_h", (getter)PyGridData::get_grid_h, NULL, + MCRF_PROPERTY(grid_h, "Grid height in cells (int, read-only)."), NULL}, + + {"entities", (getter)PyGridData::get_entities, NULL, + MCRF_PROPERTY(entities, "EntityCollection of entities on this map (EntityCollection, read-only). Shared by every view of this data."), NULL}, + {"layers", (getter)PyGridData::get_layers, NULL, + MCRF_PROPERTY(layers, "Tuple of grid layers sorted by z_index (tuple, read-only). Contains ColorLayer and TileLayer objects."), NULL}, + + {"texture", (getter)PyGridData::get_texture, NULL, + MCRF_PROPERTY(texture, "Tile atlas for this map (Texture | None, read-only). Defines the cell size in pixels."), NULL}, + {"fov", (getter)PyGridData::get_fov, (setter)PyGridData::set_fov, + MCRF_PROPERTY(fov, + "FOV algorithm for this map (FOV enum). " + "Used by entity.updateVisibility() and layer methods when fov=None." + ), NULL}, + {"fov_radius", (getter)PyGridData::get_fov_radius, (setter)PyGridData::set_fov_radius, + MCRF_PROPERTY(fov_radius, "Default FOV radius for this map (int). Used when radius is not specified."), NULL}, + {NULL} +}; diff --git a/src/PyScene.cpp b/src/PyScene.cpp index 723d17e..4ffb2aa 100644 --- a/src/PyScene.cpp +++ b/src/PyScene.cpp @@ -3,7 +3,7 @@ #include "Resources.h" #include "PyCallable.h" #include "UIFrame.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" #include "McRFPy_Automation.h" // #111 - For simulated mouse position #include "PythonObjectCache.h" // #184 - For subclass callback support diff --git a/src/PyUniformBinding.cpp b/src/PyUniformBinding.cpp index 27afbcd..675c894 100644 --- a/src/PyUniformBinding.cpp +++ b/src/PyUniformBinding.cpp @@ -3,7 +3,7 @@ #include "UIFrame.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UILine.h" #include "UICircle.h" #include "UIArc.h" @@ -162,8 +162,15 @@ int PyPropertyBindingType::init(PyPropertyBindingObject* self, PyObject* args, P target_ptr = ((PyUICaptionObject*)target_obj)->data; } else if (strcmp(type_name, "mcrfpy.Sprite") == 0) { target_ptr = ((PyUISpriteObject*)target_obj)->data; - } else if (strcmp(type_name, "mcrfpy.Grid") == 0) { - target_ptr = ((PyUIGridObject*)target_obj)->data; + } else if (strcmp(type_name, "mcrfpy.Grid") == 0 || + strcmp(type_name, "mcrfpy.GridView") == 0) { + // #361: mcrfpy.Grid IS the GridView. This arm used to cast the object to + // PyUIGridObject (the _GridData wrapper) and read its shared_ptr + // out of a PyUIGridViewObject -- type confusion that only "worked" because + // both wrappers had identical layout and both C++ classes happened to put + // UIDrawable at offset 0. Now that GridData is not a drawable the compiler + // rejects it, which is how it surfaced. + target_ptr = ((PyUIGridViewObject*)target_obj)->data; } else if (strcmp(type_name, "mcrfpy.Line") == 0) { target_ptr = ((PyUILineObject*)target_obj)->data; } else if (strcmp(type_name, "mcrfpy.Circle") == 0) { diff --git a/src/UI.h b/src/UI.h index 61e4576..95d2117 100644 --- a/src/UI.h +++ b/src/UI.h @@ -19,5 +19,5 @@ #include "UISprite.h" #include "UIGridPoint.h" #include "UIEntity.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UICollection.h" diff --git a/src/UIArc.cpp b/src/UIArc.cpp index fd85fce..30beb60 100644 --- a/src/UIArc.cpp +++ b/src/UIArc.cpp @@ -5,7 +5,7 @@ #include "PyAlignment.h" #include "UIFrame.h" // parent= kwarg: Frame parent type #include "UICaption.h" // parent= kwarg: needed for ATTACH macro instantiation -#include "UIGrid.h" // parent= kwarg: Grid/GridView parent type +#include "PyGridData.h" // parent= kwarg: Grid/GridView parent type #include "PySceneObject.h" // parent= kwarg: Scene parent type #include #include diff --git a/src/UIBase.h b/src/UIBase.h index 3c63eca..3186f78 100644 --- a/src/UIBase.h +++ b/src/UIBase.h @@ -26,13 +26,13 @@ typedef struct { PyObject* weakreflist; // Weak reference support } PyUICaptionObject; -class UIGrid; +class GridData; class UIGridView; typedef struct { PyObject_HEAD - std::shared_ptr data; + std::shared_ptr data; PyObject* weakreflist; // Weak reference support -} PyUIGridObject; +} PyGridDataObject; class UISprite; typedef struct { @@ -166,7 +166,7 @@ static PyObject* UIDrawable_animate(T* self, PyObject* args, PyObject* kwds) if ((parent_obj) && (parent_obj) != Py_None) { \ if (!PyObject_IsInstance((parent_obj), (PyObject*)&mcrfpydef::PyUIFrameType) && \ !PyObject_IsInstance((parent_obj), (PyObject*)&mcrfpydef::PySceneType) && \ - !PyObject_IsInstance((parent_obj), (PyObject*)&mcrfpydef::PyUIGridType) && \ + !PyObject_IsInstance((parent_obj), (PyObject*)&mcrfpydef::PyGridDataType) && \ !PyObject_IsInstance((parent_obj), (PyObject*)&mcrfpydef::PyUIGridViewType)) { \ PyErr_SetString(PyExc_TypeError, "parent must be a Frame, Scene, or Grid"); \ return -1; \ diff --git a/src/UICaption.cpp b/src/UICaption.cpp index c1a260e..f16f0ee 100644 --- a/src/UICaption.cpp +++ b/src/UICaption.cpp @@ -8,7 +8,7 @@ #include "PyShader.h" // #106: Shader support #include "PyUniformCollection.h" // #106: Uniform collection support #include "UIFrame.h" // parent= kwarg: Frame parent type -#include "UIGrid.h" // parent= kwarg: Grid/GridView parent type +#include "PyGridData.h" // parent= kwarg: Grid/GridView parent type #include "PySceneObject.h" // parent= kwarg: Scene parent type // UIDrawable methods now in UIBase.h #include "McRFPy_Doc.h" diff --git a/src/UICircle.cpp b/src/UICircle.cpp index b9f2ab0..dd1a5b3 100644 --- a/src/UICircle.cpp +++ b/src/UICircle.cpp @@ -8,7 +8,7 @@ #include "PyAlignment.h" #include "UIFrame.h" // parent= kwarg: Frame parent type #include "UICaption.h" // parent= kwarg: needed for ATTACH macro instantiation -#include "UIGrid.h" // parent= kwarg: Grid/GridView parent type +#include "PyGridData.h" // parent= kwarg: Grid/GridView parent type #include "PySceneObject.h" // parent= kwarg: Scene parent type #include diff --git a/src/UICollection.cpp b/src/UICollection.cpp index fd52082..59d51a9 100644 --- a/src/UICollection.cpp +++ b/src/UICollection.cpp @@ -4,7 +4,7 @@ #include "UIFrame.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" #include "UILine.h" #include "UICircle.h" @@ -69,17 +69,6 @@ static PyObject* convertDrawableToPython(std::shared_ptr drawable) { obj = (PyObject*)pyObj; break; } - case PyObjectsEnum::UIGRID: - { - type = &PyUIGridType; - auto pyObj = (PyUIGridObject*)type->tp_alloc(type, 0); - if (pyObj) { - pyObj->data = std::static_pointer_cast(drawable); - pyObj->weakreflist = NULL; - } - obj = (PyObject*)pyObj; - break; - } case PyObjectsEnum::UIGRIDVIEW: { type = &PyUIGridViewType; @@ -163,8 +152,9 @@ static std::shared_ptr extractDrawable(PyObject* o) { return ((PyUICaptionObject*)o)->data; if (PyObject_IsInstance(o, (PyObject*)&PyUISpriteType)) return ((PyUISpriteObject*)o)->data; - if (PyObject_IsInstance(o, (PyObject*)&PyUIGridType)) - return ((PyUIGridObject*)o)->data; + // #361: a GridData is NOT a drawable and cannot be appended to a collection. + // It falls through to the caller's TypeError -- appending a map to a scene used + // to draw the whole grid a second time through a frozen, invisible camera. if (PyObject_IsInstance(o, (PyObject*)&PyUIGridViewType)) return ((PyUIGridViewObject*)o)->data; if (PyObject_IsInstance(o, (PyObject*)&PyUILineType)) diff --git a/src/UIDrawable.cpp b/src/UIDrawable.cpp index c494956..f491d0c 100644 --- a/src/UIDrawable.cpp +++ b/src/UIDrawable.cpp @@ -3,7 +3,7 @@ #include "UIFrame.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" #include "UILine.h" #include "UICircle.h" @@ -28,8 +28,6 @@ static UIDrawable* extractDrawable(PyObject* self, PyObjectsEnum objtype) { return ((PyUICaptionObject*)self)->data.get(); case PyObjectsEnum::UISPRITE: return ((PyUISpriteObject*)self)->data.get(); - case PyObjectsEnum::UIGRID: - return ((PyUIGridObject*)self)->data.get(); case PyObjectsEnum::UILINE: return ((PyUILineObject*)self)->data.get(); case PyObjectsEnum::UICIRCLE: @@ -53,8 +51,6 @@ static std::shared_ptr extractDrawableShared(PyObject* self, PyObjec return ((PyUICaptionObject*)self)->data; case PyObjectsEnum::UISPRITE: return ((PyUISpriteObject*)self)->data; - case PyObjectsEnum::UIGRID: - return ((PyUIGridObject*)self)->data; case PyObjectsEnum::UILINE: return ((PyUILineObject*)self)->data; case PyObjectsEnum::UICIRCLE: @@ -259,12 +255,6 @@ PyObject* UIDrawable::get_click(PyObject* self, void* closure) { else ptr = NULL; break; - case PyObjectsEnum::UIGRID: - if (((PyUIGridObject*)self)->data->click_callable) - ptr = ((PyUIGridObject*)self)->data->click_callable->borrow(); - else - ptr = NULL; - break; case PyObjectsEnum::UILINE: if (((PyUILineObject*)self)->data->click_callable) ptr = ((PyUILineObject*)self)->data->click_callable->borrow(); @@ -314,9 +304,6 @@ int UIDrawable::set_click(PyObject* self, PyObject* value, void* closure) { case PyObjectsEnum::UISPRITE: target = (((PyUISpriteObject*)self)->data.get()); break; - case PyObjectsEnum::UIGRID: - target = (((PyUIGridObject*)self)->data.get()); - break; case PyObjectsEnum::UILINE: target = (((PyUILineObject*)self)->data.get()); break; @@ -727,20 +714,21 @@ int UIDrawable::set_rotate_with_camera(PyObject* self, PyObject* value, void* cl return 0; } -// #221 - Grid coordinate properties (only valid when parent is UIGrid) +// #221 - Grid coordinate properties (only valid when the parent is a Grid, i.e. a UIGridView) PyObject* UIDrawable::get_grid_pos(PyObject* self, void* closure) { PyObjectsEnum objtype = static_cast(reinterpret_cast(closure)); UIDrawable* drawable = extractDrawable(self, objtype); if (!drawable) return NULL; - // Check if parent is a UIGrid + // Check if parent is a Grid (UIGridView) -- #361: GridData is not a drawable + // and can never be a parent. auto parent_ptr = drawable->getParent(); if (!parent_ptr) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a child of a Grid"); return NULL; } - UIGrid* grid = dynamic_cast(parent_ptr.get()); + UIGridView* grid = dynamic_cast(parent_ptr.get()); if (!grid) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a direct child of a Grid"); return NULL; @@ -766,14 +754,15 @@ int UIDrawable::set_grid_pos(PyObject* self, PyObject* value, void* closure) { UIDrawable* drawable = extractDrawable(self, objtype); if (!drawable) return -1; - // Check if parent is a UIGrid + // Check if parent is a Grid (UIGridView) -- #361: GridData is not a drawable + // and can never be a parent. auto parent_ptr = drawable->getParent(); if (!parent_ptr) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a child of a Grid"); return -1; } - UIGrid* grid = dynamic_cast(parent_ptr.get()); + UIGridView* grid = dynamic_cast(parent_ptr.get()); if (!grid) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a direct child of a Grid"); return -1; @@ -843,14 +832,15 @@ PyObject* UIDrawable::get_grid_size(PyObject* self, void* closure) { UIDrawable* drawable = extractDrawable(self, objtype); if (!drawable) return NULL; - // Check if parent is a UIGrid + // Check if parent is a Grid (UIGridView) -- #361: GridData is not a drawable + // and can never be a parent. auto parent_ptr = drawable->getParent(); if (!parent_ptr) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a child of a Grid"); return NULL; } - UIGrid* grid = dynamic_cast(parent_ptr.get()); + UIGridView* grid = dynamic_cast(parent_ptr.get()); if (!grid) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a direct child of a Grid"); return NULL; @@ -877,14 +867,15 @@ int UIDrawable::set_grid_size(PyObject* self, PyObject* value, void* closure) { UIDrawable* drawable = extractDrawable(self, objtype); if (!drawable) return -1; - // Check if parent is a UIGrid + // Check if parent is a Grid (UIGridView) -- #361: GridData is not a drawable + // and can never be a parent. auto parent_ptr = drawable->getParent(); if (!parent_ptr) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a child of a Grid"); return -1; } - UIGrid* grid = dynamic_cast(parent_ptr.get()); + UIGridView* grid = dynamic_cast(parent_ptr.get()); if (!grid) { PyErr_SetString(PyExc_RuntimeError, "drawable is not a direct child of a Grid"); return -1; @@ -1336,17 +1327,6 @@ PyObject* UIDrawable::get_parent(PyObject* self, void* closure) { obj = (PyObject*)pyObj; break; } - case PyObjectsEnum::UIGRID: - { - type = &mcrfpydef::PyUIGridType; - auto pyObj = (PyUIGridObject*)type->tp_alloc(type, 0); - if (pyObj) { - pyObj->data = std::static_pointer_cast(parent_ptr); - pyObj->weakreflist = NULL; - } - obj = (PyObject*)pyObj; - break; - } case PyObjectsEnum::UIGRIDVIEW: { type = &mcrfpydef::PyUIGridViewType; @@ -1381,9 +1361,6 @@ int UIDrawable::set_parent(PyObject* self, PyObject* value, void* closure) { case PyObjectsEnum::UISPRITE: drawable = ((PyUISpriteObject*)self)->data; break; - case PyObjectsEnum::UIGRID: - drawable = ((PyUIGridObject*)self)->data; - break; case PyObjectsEnum::UILINE: drawable = ((PyUILineObject*)self)->data; break; @@ -1408,7 +1385,7 @@ int UIDrawable::set_parent(PyObject* self, PyObject* value, void* closure) { } // Value must be a Frame, Grid, or Scene (things with children collections). - // #364: the internal _GridData (PyUIGridType) is NOT among them -- it holds + // #364: the internal _GridData (PyGridDataType) is NOT among them -- it holds // entities and cells, never drawables -- so it falls through to the TypeError. bool is_frame = PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIFrameType); bool is_gridview = PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType); @@ -1577,10 +1554,6 @@ PyObject* UIDrawable::get_on_enter(PyObject* self, void* closure) { if (((PyUISpriteObject*)self)->data->on_enter_callable) ptr = ((PyUISpriteObject*)self)->data->on_enter_callable->borrow(); break; - case PyObjectsEnum::UIGRID: - if (((PyUIGridObject*)self)->data->on_enter_callable) - ptr = ((PyUIGridObject*)self)->data->on_enter_callable->borrow(); - break; case PyObjectsEnum::UILINE: if (((PyUILineObject*)self)->data->on_enter_callable) ptr = ((PyUILineObject*)self)->data->on_enter_callable->borrow(); @@ -1622,9 +1595,6 @@ int UIDrawable::set_on_enter(PyObject* self, PyObject* value, void* closure) { case PyObjectsEnum::UISPRITE: target = ((PyUISpriteObject*)self)->data.get(); break; - case PyObjectsEnum::UIGRID: - target = ((PyUIGridObject*)self)->data.get(); - break; case PyObjectsEnum::UILINE: target = ((PyUILineObject*)self)->data.get(); break; @@ -1668,10 +1638,6 @@ PyObject* UIDrawable::get_on_exit(PyObject* self, void* closure) { if (((PyUISpriteObject*)self)->data->on_exit_callable) ptr = ((PyUISpriteObject*)self)->data->on_exit_callable->borrow(); break; - case PyObjectsEnum::UIGRID: - if (((PyUIGridObject*)self)->data->on_exit_callable) - ptr = ((PyUIGridObject*)self)->data->on_exit_callable->borrow(); - break; case PyObjectsEnum::UILINE: if (((PyUILineObject*)self)->data->on_exit_callable) ptr = ((PyUILineObject*)self)->data->on_exit_callable->borrow(); @@ -1713,9 +1679,6 @@ int UIDrawable::set_on_exit(PyObject* self, PyObject* value, void* closure) { case PyObjectsEnum::UISPRITE: target = ((PyUISpriteObject*)self)->data.get(); break; - case PyObjectsEnum::UIGRID: - target = ((PyUIGridObject*)self)->data.get(); - break; case PyObjectsEnum::UILINE: target = ((PyUILineObject*)self)->data.get(); break; @@ -1768,10 +1731,6 @@ PyObject* UIDrawable::get_on_move(PyObject* self, void* closure) { if (((PyUISpriteObject*)self)->data->on_move_callable) ptr = ((PyUISpriteObject*)self)->data->on_move_callable->borrow(); break; - case PyObjectsEnum::UIGRID: - if (((PyUIGridObject*)self)->data->on_move_callable) - ptr = ((PyUIGridObject*)self)->data->on_move_callable->borrow(); - break; case PyObjectsEnum::UILINE: if (((PyUILineObject*)self)->data->on_move_callable) ptr = ((PyUILineObject*)self)->data->on_move_callable->borrow(); @@ -1813,9 +1772,6 @@ int UIDrawable::set_on_move(PyObject* self, PyObject* value, void* closure) { case PyObjectsEnum::UISPRITE: target = ((PyUISpriteObject*)self)->data.get(); break; - case PyObjectsEnum::UIGRID: - target = ((PyUIGridObject*)self)->data.get(); - break; case PyObjectsEnum::UILINE: target = ((PyUILineObject*)self)->data.get(); break; @@ -2180,7 +2136,6 @@ PyObject* UIDrawable::py_realign(PyObject* self, PyObject* args) { else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUICaptionType)) objtype = PyObjectsEnum::UICAPTION; else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUISpriteType)) objtype = PyObjectsEnum::UISPRITE; else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUIGridViewType)) objtype = PyObjectsEnum::UIGRIDVIEW; - else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUIGridType)) objtype = PyObjectsEnum::UIGRID; else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUILineType)) objtype = PyObjectsEnum::UILINE; else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUICircleType)) objtype = PyObjectsEnum::UICIRCLE; else if (PyObject_IsInstance(self, (PyObject*)&mcrfpydef::PyUIArcType)) objtype = PyObjectsEnum::UIARC; diff --git a/src/UIDrawable.h b/src/UIDrawable.h index 46c024f..b236bb5 100644 --- a/src/UIDrawable.h +++ b/src/UIDrawable.h @@ -22,14 +22,15 @@ class UniformCollection; // PyShaderObject is a typedef, forward declare as a struct with explicit typedef typedef struct PyShaderObjectStruct PyShaderObject; -class UIFrame; class UICaption; class UISprite; class UIEntity; class UIGrid; class GridData; +class UIFrame; class UICaption; class UISprite; class UIEntity; class GridData; enum PyObjectsEnum : int { UIFRAME = 1, UICAPTION, UISPRITE, - UIGRID, + // #361: no UIGRID. GridData is not a UIDrawable, so it has no derived_type() + // and can never appear in a scene graph. Every grid node IS a UIGRIDVIEW. UILINE, UICIRCLE, UIARC, @@ -130,7 +131,7 @@ public: static PyObject* get_rotate_with_camera(PyObject* self, void* closure); static int set_rotate_with_camera(PyObject* self, PyObject* value, void* closure); - // #221 - Grid coordinate properties (only valid when parent is UIGrid) + // #221 - Grid coordinate properties (only valid when the parent is a Grid/UIGridView) static PyObject* get_grid_pos(PyObject* self, void* closure); static int set_grid_pos(PyObject* self, PyObject* value, void* closure); static PyObject* get_grid_size(PyObject* self, void* closure); @@ -380,7 +381,7 @@ static PyObject* PyUIDrawable_get_click(PyObject* self, void* closure) { ptr = ((PyUISpriteObject*)self)->data->click_callable->borrow(); break; case PyObjectsEnum::UIGRID: - ptr = ((PyUIGridObject*)self)->data->click_callable->borrow(); + ptr = ((PyGridDataObject*)self)->data->click_callable->borrow(); break; default: PyErr_SetString(PyExc_TypeError, "no idea how you did that; invalid UIDrawable derived instance for _get_click"); @@ -409,7 +410,7 @@ static int PyUIDrawable_set_click(PyObject* self, PyObject* value, void* closure target = (((PyUISpriteObject*)self)->data.get()); break; case PyObjectsEnum::UIGRID: - target = (((PyUIGridObject*)self)->data.get()); + target = (((PyGridDataObject*)self)->data.get()); break; default: PyErr_SetString(PyExc_TypeError, "no idea how you did that; invalid UIDrawable derived instance for _set_click"); diff --git a/src/UIEntity.cpp b/src/UIEntity.cpp index 1a7f15f..6085c4c 100644 --- a/src/UIEntity.cpp +++ b/src/UIEntity.cpp @@ -1,5 +1,5 @@ #include "UIEntity.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridView.h" // #252: Entity.grid accepts GridView #include "UIGridPathfinding.h" #include "PathProvider.h" @@ -23,19 +23,10 @@ #include "McRFPy_Doc.h" #include -// #313: UIEntity::grid holds the GridData base, but some Python wrappers -// (PyUIGridObject, PyUIGridPointObject) and pathfinding helpers still take the -// full UIGrid. GridData is never independently heap-allocated -- it is always -// a UIGrid base subobject (see GridData.h) -- so this aliasing downcast is -// valid and shares the original control block (never mints a new one, which -// would double-free and break the #251 use_count dealloc gate). -// TODO(#252): remove once those wrappers accept pure GridData. -static std::shared_ptr grid_as_uigrid(const std::shared_ptr& grid) -{ - if (!grid) return nullptr; - assert(dynamic_cast(grid.get()) != nullptr); - return std::shared_ptr(grid, static_cast(grid.get())); -} +// #361: grid_as_uigrid() is gone. It existed to recover the "full UIGrid" that +// every GridData was secretly a base subobject of, so that Python wrappers and +// pathfinding helpers could get at the drawable half. There is no drawable half +// any more -- GridData is the whole object, and every wrapper takes it directly. UIEntity::UIEntity() : grid(nullptr), position(0.0f, 0.0f), sprite_offset(0.0f, 0.0f) @@ -195,7 +186,7 @@ PyObject* UIEntity::at(PyUIEntityObject* self, PyObject* args, PyObject* kwds) { auto type = &mcrfpydef::PyUIGridPointType; auto obj = (PyUIGridPointObject*)type->tp_alloc(type, 0); if (!obj) return NULL; - obj->grid = grid_as_uigrid(entity->grid); // #313: wrapper still holds UIGrid + obj->grid = entity->grid; obj->x = x; obj->y = y; return (PyObject*)obj; @@ -290,7 +281,7 @@ int UIEntity::init(PyUIEntityObject* self, PyObject* args, PyObject* kwds) { } // Handle grid argument - accept both internal _GridData and GridView (unified Grid) - if (grid_obj && !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridType) && + if (grid_obj && !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyGridDataType) && !PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridViewType)) { PyErr_SetString(PyExc_TypeError, "grid must be a mcrfpy.Grid instance"); return -1; @@ -379,7 +370,7 @@ int UIEntity::init(PyUIEntityObject* self, PyObject* args, PyObject* kwds) { grid_ptr = pyview->data->grid_data; } else { // Internal _GridData type - PyUIGridObject* pygrid = (PyUIGridObject*)grid_obj; + PyGridDataObject* pygrid = (PyGridDataObject*)grid_obj; grid_ptr = pygrid->data; } if (grid_ptr) { @@ -819,69 +810,20 @@ PyObject* UIEntity::get_grid(PyUIEntityObject* self, void* closure) Py_RETURN_NONE; } - auto& grid = self->data->grid; - - // #252/#359: If the grid has a registered GridView, return that instead. - // This preserves the unified Grid API where entity.grid returns the same - // object the user created via mcrfpy.Grid(...). primaryView() is - // deterministic even with multiple views sharing this GridData: it's - // views.front(), the view that actually created the data (a fresh - // GridData is only ever produced by the Grid() factory path), or the - // first still-alive secondary view if that original view has since died. - auto owning_view = grid->primaryView(); - if (owning_view) { - // Check cache for the GridView - if (owning_view->serial_number != 0) { - PyObject* cached = PythonObjectCache::getInstance().lookup(owning_view->serial_number); - if (cached) return cached; - } - - auto view_type = &mcrfpydef::PyUIGridViewType; - auto pyView = (PyUIGridViewObject*)view_type->tp_alloc(view_type, 0); - if (pyView) { - pyView->data = owning_view; - pyView->weakreflist = NULL; - - if (owning_view->serial_number == 0) { - owning_view->serial_number = PythonObjectCache::getInstance().assignSerial(); - } - PyObject* weakref = PyWeakref_NewRef((PyObject*)pyView, NULL); - if (weakref) { - PythonObjectCache::getInstance().registerObject(owning_view->serial_number, weakref); - Py_DECREF(weakref); - } - } - return (PyObject*)pyView; - } - - // Fallback: return internal _GridData wrapper (no owning view) - // #313: serial_number lives on the UIDrawable side; recover the full - // UIGrid via the aliasing helper (same control block, no new ownership). - auto uigrid = grid_as_uigrid(grid); - if (uigrid->serial_number != 0) { - PyObject* cached = PythonObjectCache::getInstance().lookup(uigrid->serial_number); - if (cached) { - return cached; - } - } - - auto grid_type = &mcrfpydef::PyUIGridType; - auto pyGrid = (PyUIGridObject*)grid_type->tp_alloc(grid_type, 0); - - if (pyGrid) { - pyGrid->data = uigrid; - pyGrid->weakreflist = NULL; - - if (uigrid->serial_number == 0) { - uigrid->serial_number = PythonObjectCache::getInstance().assignSerial(); - } - PyObject* weakref = PyWeakref_NewRef((PyObject*)pyGrid, NULL); - if (weakref) { - PythonObjectCache::getInstance().registerObject(uigrid->serial_number, weakref); - Py_DECREF(weakref); - } - } - return (PyObject*)pyGrid; + // #361 - Returns the GridData (the MAP), not a view. + // + // This is a deliberate, user-visible break. It used to return primaryView() -- + // the Grid whose constructor happened to create this data -- falling back to a + // bare _GridData wrapper when no view existed. But "the grid an entity is in" + // is not a camera: an entity may live on a map with NO view (an offscreen + // level, still steppable and queryable) or with SEVERAL, and picking + // views.front() was an arbitrary answer dressed up as a deterministic one. + // + // Migration: `player.grid.center_camera(player.pos)` becomes + // `view.center_camera(player.pos)` on the view you are actually rendering. + // Everything that is genuinely about the map -- at(), entities, layers, + // compute_fov(), find_path(), step() -- is unchanged. + return PyGridData::pyobject_for(self->data->grid); } int UIEntity::set_grid(PyUIEntityObject* self, PyObject* value, void* closure) @@ -924,8 +866,8 @@ int UIEntity::set_grid(PyUIEntityObject* self, PyObject* value, void* closure) PyErr_SetString(PyExc_ValueError, "Grid has no data"); return -1; } - } else if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { - new_grid = ((PyUIGridObject*)value)->data; + } else if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyGridDataType)) { + new_grid = ((PyGridDataObject*)value)->data; } else { PyErr_SetString(PyExc_TypeError, "grid must be a Grid or None"); return -1; @@ -1263,12 +1205,9 @@ PyObject* UIEntity::find_path(PyUIEntityObject* self, PyObject* args, PyObject* auto grid = self->data->grid; - // Extract target position - // #313: ExtractPosition still takes UIGrid*; the downcast is valid because - // GridData is always a UIGrid base subobject (see grid_as_uigrid). int target_x, target_y; if (!UIGridPathfinding::ExtractPosition(target_obj, &target_x, &target_y, - static_cast(grid.get()), "target")) { + grid.get(), "target")) { return NULL; } @@ -1282,13 +1221,9 @@ PyObject* UIEntity::find_path(PyUIEntityObject* self, PyObject* args, PyObject* return NULL; } - // Build args to delegate to Grid.find_path - // Create a temporary PyUIGridObject wrapper for the grid (internal _GridData type) - // #313: wrapper holds shared_ptr; alias-cast from the data ptr. - auto* grid_type = &mcrfpydef::PyUIGridType; - auto pyGrid = (PyUIGridObject*)grid_type->tp_alloc(grid_type, 0); + // Delegate to GridData.find_path on the map's one Python wrapper (#361). + PyObject* pyGrid = PyGridData::pyobject_for(grid); if (!pyGrid) return NULL; - new (&pyGrid->data) std::shared_ptr(grid_as_uigrid(grid)); // Build keyword args for Grid.find_path PyObject* start_tuple = Py_BuildValue("(ii)", start_x, start_y); @@ -1307,7 +1242,7 @@ PyObject* UIEntity::find_path(PyUIEntityObject* self, PyObject* args, PyObject* Py_DECREF(py_collide); } - PyObject* result = UIGridPathfinding::Grid_find_path(pyGrid, fwd_args, fwd_kwds); + PyObject* result = UIGridPathfinding::Grid_find_path((PyGridDataObject*)pyGrid, fwd_args, fwd_kwds); Py_DECREF(fwd_args); Py_DECREF(fwd_kwds); diff --git a/src/UIEntity.h b/src/UIEntity.h index 62ec14b..83bb131 100644 --- a/src/UIEntity.h +++ b/src/UIEntity.h @@ -22,7 +22,7 @@ #include "DiscreteMap.h" #include -class UIGrid; +class GridData; class GridData; // UIEntity diff --git a/src/UIEntityCollection.cpp b/src/UIEntityCollection.cpp index 2f955e5..ad402aa 100644 --- a/src/UIEntityCollection.cpp +++ b/src/UIEntityCollection.cpp @@ -5,7 +5,7 @@ #include "UIEntityCollection.h" #include "UIEntity.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "McRFPy_API.h" #include "McRFPy_Doc.h" #include "PythonObjectCache.h" diff --git a/src/UIEntityCollection.h b/src/UIEntityCollection.h index f919777..f144dd9 100644 --- a/src/UIEntityCollection.h +++ b/src/UIEntityCollection.h @@ -18,13 +18,13 @@ // Forward declarations class UIEntity; -class UIGrid; +class GridData; // Python object for EntityCollection typedef struct { PyObject_HEAD std::shared_ptr>> data; - std::shared_ptr grid; + std::shared_ptr grid; } PyUIEntityCollectionObject; // Python object for EntityCollection iterator diff --git a/src/UIFrame.cpp b/src/UIFrame.cpp index 43b95f5..20bc3d3 100644 --- a/src/UIFrame.cpp +++ b/src/UIFrame.cpp @@ -4,7 +4,7 @@ #include "PyVector.h" #include "UICaption.h" #include "UISprite.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "PySceneObject.h" // parent= kwarg: Scene parent type #include "McRFPy_API.h" #include "PythonObjectCache.h" @@ -789,7 +789,6 @@ int UIFrame::init(PyUIFrameObject* self, PyObject* args, PyObject* kwds) if (!PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUIFrameType) && !PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUICaptionType) && !PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUISpriteType) && - !PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUIGridType) && !PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUIGridViewType)) { Py_DECREF(child); PyErr_SetString(PyExc_TypeError, "children must contain only Frame, Caption, Sprite, or Grid objects"); @@ -806,9 +805,8 @@ int UIFrame::init(PyUIFrameObject* self, PyObject* args, PyObject* kwds) drawable = ((PyUISpriteObject*)child)->data; } else if (PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUIGridViewType)) { drawable = ((PyUIGridViewObject*)child)->data; - } else if (PyObject_IsInstance(child, (PyObject*)&mcrfpydef::PyUIGridType)) { - drawable = ((PyUIGridObject*)child)->data; } + // #361: a GridData is not a drawable -- it is rejected above. if (drawable) { drawable->setParent(self->data); // Set parent before adding (enables alignment) diff --git a/src/UIGrid.cpp b/src/UIGrid.cpp deleted file mode 100644 index ae32ffb..0000000 --- a/src/UIGrid.cpp +++ /dev/null @@ -1,1044 +0,0 @@ -#include "UIGrid.h" -#include "UIGridView.h" // #252: GridView shim -#include "UIGridPathfinding.h" // New pathfinding API -#include "GameEngine.h" -#include "McRFPy_API.h" -#include "PythonObjectCache.h" -#include "PyAlignment.h" -#include "UIEntity.h" -#include "Profiler.h" -#include "PyFOV.h" -#include "PyPositionHelper.h" // For standardized position argument parsing -#include "PyVector.h" // #179, #181 - For Vector return types -// PyHeightMap.h moved to UIGridPyMethods.cpp -#include "PyShader.h" // #106: Shader support -#include "PyUniformCollection.h" // #106: Uniform collection support -#include "PyMouseButton.h" // For MouseButton enum -#include "PyInputState.h" // For InputState enum -#include -#include // #142 - for std::floor, std::isnan -#include // #150 - for strcmp -#include // #169 - for std::numeric_limits -// UIDrawable methods now in UIBase.h -// UIEntityCollection code moved to UIEntityCollection.cpp - -UIGrid::UIGrid() -: GridData(), // Initialize data layer (entities, children, FOV defaults) - zoom(1.0f), center_x(0.0f), center_y(0.0f), ptex(nullptr), - fill_color(8, 8, 8, 255) -{ - // Initialize box with safe defaults - box.setSize(sf::Vector2f(0, 0)); - position = sf::Vector2f(0, 0); // Set base class position - box.setPosition(position); // Sync box position - box.setFillColor(sf::Color(0, 0, 0, 0)); - - // #228 - Initialize render texture to game resolution (small default until game init) - renderTexture.create(1, 1); - renderTextureSize = {1, 1}; - - // Initialize output sprite - output.setTextureRect(sf::IntRect(0, 0, 0, 0)); - output.setPosition(0, 0); - output.setTexture(renderTexture.getTexture()); - - // Points vector starts empty (grid_w * grid_h = 0) - // TCOD map will be created when grid is resized -} - -UIGrid::UIGrid(int gx, int gy, std::shared_ptr _ptex, sf::Vector2f _xy, sf::Vector2f _wh) -: GridData(), // Initialize data layer - zoom(1.0f), - ptex(_ptex), - fill_color(8, 8, 8, 255) -{ - // Use texture dimensions if available, otherwise use defaults - int cell_width = _ptex ? _ptex->sprite_width : DEFAULT_CELL_WIDTH; - int cell_height = _ptex ? _ptex->sprite_height : DEFAULT_CELL_HEIGHT; - - // #313: mirror into the GridData base so the data layer (and entities - // holding shared_ptr) can do tile<->pixel math. ptex is - // write-once (ctor only), so this never goes stale. - cell_width_px = cell_width; - cell_height_px = cell_height; - - center_x = (gx/2) * cell_width; - center_y = (gy/2) * cell_height; - - box.setSize(_wh); - position = _xy; // Set base class position - box.setPosition(position); // Sync box position - - box.setFillColor(sf::Color(0,0,0,0)); - // #228 - create renderTexture sized to game resolution (dynamically resized as needed) - ensureRenderTextureSize(); - - // Only initialize sprite if texture is available - if (ptex) { - sprite = ptex->sprite(0); - } - - output.setTextureRect( - sf::IntRect(0, 0, - box.getSize().x, box.getSize().y)); - output.setPosition(box.getPosition()); - // textures are upside-down inside renderTexture - output.setTexture(renderTexture.getTexture()); - - // Initialize grid storage, TCOD map, and sync (#252: delegated to GridData) - initStorage(gx, gy, static_cast(this)); -} - -void UIGrid::update() {} - - -void UIGrid::render(sf::Vector2f offset, sf::RenderTarget& target) -{ - // Profile total grid rendering time - ScopedTimer gridTimer(Resources::game->metrics.gridRenderTime); - - // Check visibility - if (!visible) return; - - // #228 - Ensure renderTexture matches current game resolution - ensureRenderTextureSize(); - - if (!render_dirty && !composite_dirty) { - if (shader && shader->shader) { - sf::Vector2f resolution(box.getSize().x, box.getSize().y); - PyShader::applyEngineUniforms(*shader->shader, resolution); - - // Apply user uniforms - if (uniforms) { - uniforms->applyTo(*shader->shader); - } - - target.draw(output, shader->shader.get()); - } - else - { - output.setPosition(box.getPosition() + offset); - target.draw(output); - return; - } - } - - // TODO: Apply opacity to output sprite - - // Get cell dimensions - use texture if available, otherwise defaults - int cell_width = ptex ? ptex->sprite_width : DEFAULT_CELL_WIDTH; - int cell_height = ptex ? ptex->sprite_height : DEFAULT_CELL_HEIGHT; - - // Determine if we need camera rotation handling - bool has_camera_rotation = (camera_rotation != 0.0f); - float grid_w_px = box.getSize().x; - float grid_h_px = box.getSize().y; - - // Calculate AABB for rotated view (if camera rotation is active) - float rad = camera_rotation * (M_PI / 180.0f); - float cos_r = std::cos(rad); - float sin_r = std::sin(rad); - float abs_cos = std::abs(cos_r); - float abs_sin = std::abs(sin_r); - - // AABB dimensions of the rotated viewport - float aabb_w = grid_w_px * abs_cos + grid_h_px * abs_sin; - float aabb_h = grid_w_px * abs_sin + grid_h_px * abs_cos; - - // Choose which texture to render to - sf::RenderTexture* activeTexture = &renderTexture; - - if (has_camera_rotation) { - // Ensure rotation texture is large enough - unsigned int needed_size = static_cast(std::max(aabb_w, aabb_h) + 1); - if (!rotationTexture) rotationTexture = std::make_unique(); // #338 - if (rotationTextureSize < needed_size) { - rotationTexture->create(needed_size, needed_size); - rotationTextureSize = needed_size; - } - activeTexture = rotationTexture.get(); - activeTexture->clear(fill_color); - } else { - output.setPosition(box.getPosition() + offset); - output.setTextureRect(sf::IntRect(0, 0, grid_w_px, grid_h_px)); - renderTexture.clear(fill_color); - } - - // Calculate visible tile range - // For camera rotation, use AABB dimensions; otherwise use grid dimensions - float render_w = has_camera_rotation ? aabb_w : grid_w_px; - float render_h = has_camera_rotation ? aabb_h : grid_h_px; - - float center_x_sq = center_x / cell_width; - float center_y_sq = center_y / cell_height; - - float width_sq = render_w / (cell_width * zoom); - float height_sq = render_h / (cell_height * zoom); - float left_edge = center_x_sq - (width_sq / 2.0); - float top_edge = center_y_sq - (height_sq / 2.0); - - int left_spritepixels = center_x - (render_w / 2.0 / zoom); - int top_spritepixels = center_y - (render_h / 2.0 / zoom); - - int x_limit = left_edge + width_sq + 2; - if (x_limit > grid_w) x_limit = grid_w; - - int y_limit = top_edge + height_sq + 2; - if (y_limit > grid_h) y_limit = grid_h; - - // #150 - Layers are now the sole source of grid rendering (base layer removed) - // Render layers with z_index <= 0 (below entities) - sortLayers(); - for (auto& layer : layers) { - if (layer->z_index > 0) break; // Stop at layers that go above entities (#257) - layer->render(*activeTexture, left_spritepixels, top_spritepixels, - left_edge, top_edge, x_limit, y_limit, zoom, cell_width, cell_height); - } - - // middle layer - entities - // disabling entity rendering until I can render their UISprite inside the rendertexture (not directly to window) - { - ScopedTimer entityTimer(Resources::game->metrics.entityRenderTime); - int entitiesRendered = 0; - int totalEntities = entities->size(); - - for (auto e : *entities) { - // #236: Account for multi-tile entity size in frustum culling - int margin = 2; - if (e->position.x + e->tile_width < left_edge - margin || - e->position.x >= left_edge + width_sq + margin || - e->position.y + e->tile_height < top_edge - margin || - e->position.y >= top_edge + height_sq + margin) { - continue; // Skip this entity as it's not visible - } - - auto pixel_pos = sf::Vector2f( - (e->position.x*cell_width - left_spritepixels + e->sprite_offset.x) * zoom, - (e->position.y*cell_height - top_spritepixels + e->sprite_offset.y) * zoom ); - - // #237: Composite sprite grid - render per-tile sprites - if (!e->sprite_grid.empty() && e->sprite.getTexture()) { - auto tex = e->sprite.getTexture(); - for (int dy = 0; dy < e->tile_height; dy++) { - for (int dx = 0; dx < e->tile_width; dx++) { - int idx = e->sprite_grid[dy * e->tile_width + dx]; - if (idx < 0) continue; - auto tile_pos = sf::Vector2f( - pixel_pos.x + dx * cell_width * zoom, - pixel_pos.y + dy * cell_height * zoom); - auto spr = tex->sprite(idx, tile_pos, sf::Vector2f(zoom, zoom)); - activeTexture->draw(spr); - } - } - } else { - // Single sprite path - auto& drawent = e->sprite; - drawent.setScale(sf::Vector2f(zoom, zoom)); - drawent.render(pixel_pos, *activeTexture); - } - - entitiesRendered++; - } - - // Record entity rendering stats - Resources::game->metrics.entitiesRendered += entitiesRendered; - Resources::game->metrics.totalEntities += totalEntities; - } - - // #147 - Render dynamic layers with z_index > 0 (above entities) - for (auto& layer : layers) { - if (layer->z_index <= 0) continue; // Skip layers at or below entities (#257) - layer->render(*activeTexture, left_spritepixels, top_spritepixels, - left_edge, top_edge, x_limit, y_limit, zoom, cell_width, cell_height); - } - - // #364: overlay children are drawn by UIGridView, which owns them. This legacy - // render path (a bare _GridData drawn directly -- the ghost view #361 deletes) - // has no children to draw. - - // #355: the perspective/FOV overlay is drawn by UIGridView::render, which owns - // the perspective state. UIGrid (the internal _GridData) no longer duplicates it. - - // grid lines for testing & validation - /* - sf::Vertex line[] = - { - sf::Vertex(sf::Vector2f(0, 0), sf::Color::Red), - sf::Vertex(box.getSize(), sf::Color::Red), - - }; - - renderTexture.draw(line, 2, sf::Lines); - sf::Vertex lineb[] = - { - sf::Vertex(sf::Vector2f(0, box.getSize().y), sf::Color::Blue), - sf::Vertex(sf::Vector2f(box.getSize().x, 0), sf::Color::Blue), - - }; - - renderTexture.draw(lineb, 2, sf::Lines); - */ - - // Finalize the active texture - activeTexture->display(); - - // If camera rotation was used, rotate and blit to the grid's renderTexture - if (has_camera_rotation) { - // Clear the final renderTexture with fill color - renderTexture.clear(fill_color); - - // Create sprite from the larger rotated texture - sf::Sprite rotatedSprite(rotationTexture->getTexture()); - - // Set origin to center of the rendered content - float tex_center_x = aabb_w / 2.0f; - float tex_center_y = aabb_h / 2.0f; - rotatedSprite.setOrigin(tex_center_x, tex_center_y); - - // Apply rotation - rotatedSprite.setRotation(camera_rotation); - - // Position so the rotated center lands at the viewport center - rotatedSprite.setPosition(grid_w_px / 2.0f, grid_h_px / 2.0f); - - // Set texture rect to only use the AABB portion (texture may be larger) - rotatedSprite.setTextureRect(sf::IntRect(0, 0, static_cast(aabb_w), static_cast(aabb_h))); - - // Draw to the grid's renderTexture (which clips to grid bounds) - renderTexture.draw(rotatedSprite); - renderTexture.display(); - - // Set up output sprite - output.setPosition(box.getPosition() + offset); - output.setTextureRect(sf::IntRect(0, 0, grid_w_px, grid_h_px)); - } - - // Apply viewport rotation (UIDrawable::rotation) to the entire grid widget - if (rotation != 0.0f) { - output.setOrigin(origin); - output.setRotation(rotation); - // Adjust position to account for origin offset - output.setPosition(box.getPosition() + offset + origin); - } else { - output.setOrigin(0, 0); - output.setRotation(0); - // Position already set above - } - - // #106: Apply shader if set - if (shader && shader->shader) { - sf::Vector2f resolution(box.getSize().x, box.getSize().y); - PyShader::applyEngineUniforms(*shader->shader, resolution); - - // Apply user uniforms - if (uniforms) { - uniforms->applyTo(*shader->shader); - } - - target.draw(output, shader->shader.get()); - } else { - target.draw(output); - } -} - -// at(), syncTCODMap(), computeFOV(), isInFOV(), layer management methods -// are now in GridData.cpp (#252) - -UIGrid::~UIGrid() -{ - // GridData destructor handles TCOD map and Dijkstra cleanup -} - -void UIGrid::ensureRenderTextureSize() -{ - // Get game resolution (or use sensible defaults during early init) - sf::Vector2u resolution{1920, 1080}; - if (Resources::game) { - resolution = Resources::game->getGameResolution(); - } - - // Clamp to reasonable maximum (SFML texture size limits) - unsigned int required_w = std::min(resolution.x, 4096u); - unsigned int required_h = std::min(resolution.y, 4096u); - - // Only recreate if size changed - if (renderTextureSize.x != required_w || renderTextureSize.y != required_h) { - renderTexture.create(required_w, required_h); - renderTextureSize = {required_w, required_h}; - output.setTexture(renderTexture.getTexture()); - } -} - -PyObjectsEnum UIGrid::derived_type() -{ - return PyObjectsEnum::UIGRID; -} - -// Pathfinding methods moved to UIGridPathfinding.cpp -// - Grid.find_path() returns AStarPath objects -// - Grid.get_dijkstra_map() returns DijkstraMap objects (cached) - -// Phase 1 implementations -sf::FloatRect UIGrid::get_bounds() const -{ - auto size = box.getSize(); - return sf::FloatRect(position.x, position.y, size.x, size.y); -} - -void UIGrid::move(float dx, float dy) -{ - position.x += dx; - position.y += dy; - box.setPosition(position); // Keep box in sync - output.setPosition(position); // Keep output sprite in sync too -} - -void UIGrid::resize(float w, float h) -{ - box.setSize(sf::Vector2f(w, h)); - // Recreate render texture with new size - if (w > 0 && h > 0) { - renderTexture.create(static_cast(w), static_cast(h)); - output.setTexture(renderTexture.getTexture()); - } - - // #364: children (and therefore alignment against the widget's bounds) belong to - // UIGridView::resize -- this class no longer holds any. -} - -void UIGrid::onPositionChanged() -{ - // Sync box and output sprite positions with base class position - box.setPosition(position); - output.setPosition(position); -} - -std::shared_ptr UIGrid::getTexture() -{ - return ptex; -} - -UIDrawable* UIGrid::click_at(sf::Vector2f) -{ - // #355: a bare _GridData is never an input target -- the scene graph holds - // UIGridView, which owns the camera and all cell/child/entity hit testing. - // #361 removes UIDrawable from GridData entirely, which deletes this override. - return nullptr; -} - -int UIGrid::init(PyUIGridObject* self, PyObject* args, PyObject* kwds) { - // Define all parameters with defaults - PyObject* pos_obj = nullptr; - PyObject* size_obj = nullptr; - PyObject* grid_size_obj = nullptr; - PyObject* textureObj = nullptr; - PyObject* fill_color = nullptr; - PyObject* click_handler = nullptr; - PyObject* layers_obj = nullptr; // #150 - layers dict - // #169 - Use NaN as sentinel to detect if user provided center values - float center_x = std::numeric_limits::quiet_NaN(); - float center_y = std::numeric_limits::quiet_NaN(); - float zoom = 1.0f; - // perspective is now handled via properties, not init args - int visible = 1; - float opacity = 1.0f; - int z_index = 0; - const char* name = nullptr; - float x = 0.0f, y = 0.0f, w = 0.0f, h = 0.0f; - int grid_w = 2, grid_h = 2; // Default to 2x2 grid - PyObject* align_obj = nullptr; // Alignment enum or None - float margin = 0.0f; - float horiz_margin = -1.0f; - float vert_margin = -1.0f; - - // Keywords list matches the new spec: positional args first, then all keyword args - static const char* kwlist[] = { - "pos", "size", "grid_size", "texture", // Positional args (as per spec) - // Keyword-only args - "fill_color", "on_click", "center_x", "center_y", "zoom", - "visible", "opacity", "z_index", "name", "x", "y", "w", "h", "grid_w", "grid_h", - "layers", // #150 - layers dict parameter - "align", "margin", "horiz_margin", "vert_margin", - nullptr - }; - - // Parse arguments with | for optional positional args - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|OOOOOOfffifizffffiiOOfff", const_cast(kwlist), - &pos_obj, &size_obj, &grid_size_obj, &textureObj, // Positional - &fill_color, &click_handler, ¢er_x, ¢er_y, &zoom, - &visible, &opacity, &z_index, &name, &x, &y, &w, &h, &grid_w, &grid_h, - &layers_obj, - &align_obj, &margin, &horiz_margin, &vert_margin)) { - return -1; - } - - // Handle position argument (can be tuple, Vector, or use x/y keywords) - if (pos_obj) { - PyVectorObject* vec = PyVector::from_arg(pos_obj); - if (vec) { - x = vec->data.x; - y = vec->data.y; - Py_DECREF(vec); - } else { - PyErr_Clear(); - if (PyTuple_Check(pos_obj) && PyTuple_Size(pos_obj) == 2) { - PyObject* x_val = PyTuple_GetItem(pos_obj, 0); - PyObject* y_val = PyTuple_GetItem(pos_obj, 1); - if ((PyFloat_Check(x_val) || PyLong_Check(x_val)) && - (PyFloat_Check(y_val) || PyLong_Check(y_val))) { - x = PyFloat_Check(x_val) ? PyFloat_AsDouble(x_val) : PyLong_AsLong(x_val); - y = PyFloat_Check(y_val) ? PyFloat_AsDouble(y_val) : PyLong_AsLong(y_val); - } else { - PyErr_SetString(PyExc_TypeError, "pos tuple must contain numbers"); - return -1; - } - } else { - PyErr_SetString(PyExc_TypeError, "pos must be a tuple (x, y) or Vector"); - return -1; - } - } - } - - // Handle size argument (can be tuple or use w/h keywords) - if (size_obj) { - if (PyTuple_Check(size_obj) && PyTuple_Size(size_obj) == 2) { - PyObject* w_val = PyTuple_GetItem(size_obj, 0); - PyObject* h_val = PyTuple_GetItem(size_obj, 1); - if ((PyFloat_Check(w_val) || PyLong_Check(w_val)) && - (PyFloat_Check(h_val) || PyLong_Check(h_val))) { - w = PyFloat_Check(w_val) ? PyFloat_AsDouble(w_val) : PyLong_AsLong(w_val); - h = PyFloat_Check(h_val) ? PyFloat_AsDouble(h_val) : PyLong_AsLong(h_val); - } else { - PyErr_SetString(PyExc_TypeError, "size tuple must contain numbers"); - return -1; - } - } else { - PyErr_SetString(PyExc_TypeError, "size must be a tuple (w, h)"); - return -1; - } - } - - // Handle grid_size argument (can be tuple or use grid_w/grid_h keywords) - if (grid_size_obj) { - if (PyTuple_Check(grid_size_obj) && PyTuple_Size(grid_size_obj) == 2) { - PyObject* gx_val = PyTuple_GetItem(grid_size_obj, 0); - PyObject* gy_val = PyTuple_GetItem(grid_size_obj, 1); - if (PyLong_Check(gx_val) && PyLong_Check(gy_val)) { - grid_w = PyLong_AsLong(gx_val); - grid_h = PyLong_AsLong(gy_val); - } else { - PyErr_SetString(PyExc_TypeError, "grid_size tuple must contain integers"); - return -1; - } - } else { - PyErr_SetString(PyExc_TypeError, "grid_size must be a tuple (grid_w, grid_h)"); - return -1; - } - } - - // Validate grid dimensions - if (grid_w <= 0 || grid_h <= 0) { - PyErr_SetString(PyExc_ValueError, "Grid dimensions must be positive integers"); - return -1; - } - - // #212 - Validate against GRID_MAX - if (grid_w > GRID_MAX || grid_h > GRID_MAX) { - PyErr_Format(PyExc_ValueError, - "Grid dimensions cannot exceed %d (got %dx%d)", - GRID_MAX, grid_w, grid_h); - return -1; - } - - // Handle texture argument - std::shared_ptr texture_ptr = nullptr; - if (textureObj && textureObj != Py_None) { - if (!PyObject_IsInstance(textureObj, (PyObject*)&mcrfpydef::PyTextureType)) { - PyErr_SetString(PyExc_TypeError, "texture must be a mcrfpy.Texture instance or None"); - return -1; - } - PyTextureObject* pyTexture = reinterpret_cast(textureObj); - texture_ptr = pyTexture->data; - } else { - // Use default texture when None is provided or texture not specified - texture_ptr = McRFPy_API::default_texture; - } - - // If size wasn't specified, calculate based on grid dimensions and texture - if (!size_obj && texture_ptr) { - w = grid_w * texture_ptr->sprite_width; - h = grid_h * texture_ptr->sprite_height; - } else if (!size_obj) { - w = grid_w * 16.0f; // Default tile size - h = grid_h * 16.0f; - } - - // Create the grid - self->data = std::make_shared(grid_w, grid_h, texture_ptr, - sf::Vector2f(x, y), sf::Vector2f(w, h)); - - // Set additional properties - self->data->zoom = zoom; // Set zoom first, needed for default center calculation - - // #169 - Calculate default center if not provided by user - // Default: tile (0,0) at top-left of widget - if (std::isnan(center_x)) { - // Center = half widget size (in pixels), so tile 0,0 appears at top-left - center_x = w / (2.0f * zoom); - } - if (std::isnan(center_y)) { - center_y = h / (2.0f * zoom); - } - self->data->center_x = center_x; - self->data->center_y = center_y; - // #355: perspective lives on UIGridView (the object that renders the overlay). - self->data->visible = visible; - self->data->opacity = opacity; - self->data->z_index = z_index; - if (name) { - self->data->name = std::string(name); - } - - // Process alignment arguments - UIDRAWABLE_PROCESS_ALIGNMENT(self->data, align_obj, margin, horiz_margin, vert_margin); - - // Handle fill_color - if (fill_color && fill_color != Py_None) { - PyColorObject* color_obj = PyColor::from_arg(fill_color); - if (!color_obj) { - PyErr_SetString(PyExc_TypeError, "fill_color must be a Color or color tuple"); - return -1; - } - self->data->box.setFillColor(color_obj->data); - Py_DECREF(color_obj); - } - - // Handle click handler - if (click_handler && click_handler != Py_None) { - if (!PyCallable_Check(click_handler)) { - PyErr_SetString(PyExc_TypeError, "click must be callable"); - return -1; - } - self->data->click_register(click_handler); - } - - // #150 - Handle layers parameter - // Default: single TileLayer named "tilesprite" when layers not provided - // Empty list/None: no rendering layers (entity storage + pathfinding only) - // List of layer objects: add each layer with lazy allocation - if (layers_obj == nullptr) { - // Default layer: single TileLayer named "tilesprite" (z_index -1 = below entities) - self->data->addTileLayer(-1, texture_ptr, "tilesprite"); - } else if (layers_obj != Py_None) { - // Accept any iterable of layer objects - PyObject* iterator = PyObject_GetIter(layers_obj); - if (!iterator) { - PyErr_SetString(PyExc_TypeError, "layers must be an iterable of ColorLayer or TileLayer objects"); - return -1; - } - - auto* color_layer_type = (PyObject*)&mcrfpydef::PyColorLayerType; - auto* tile_layer_type = (PyObject*)&mcrfpydef::PyTileLayerType; - - PyObject* item; - while ((item = PyIter_Next(iterator)) != NULL) { - std::shared_ptr layer; - - if (PyObject_IsInstance(item, color_layer_type)) { - PyColorLayerObject* py_layer = (PyColorLayerObject*)item; - if (!py_layer->data) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_SetString(PyExc_RuntimeError, "Layer has no data"); - return -1; - } - - // Check if already attached to another grid - if (py_layer->grid) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_SetString(PyExc_ValueError, "Layer is already attached to another Grid"); - return -1; - } - - layer = py_layer->data; - - // Check for protected names - if (!layer->name.empty() && UIGrid::isProtectedLayerName(layer->name)) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", layer->name.c_str()); - return -1; - } - - // Handle name collision - if (!layer->name.empty()) { - auto existing = self->data->getLayerByName(layer->name); - if (existing) { - existing->parent_grid = nullptr; - self->data->removeLayer(existing); - } - } - - // Lazy allocation: resize if layer is (0,0) - if (layer->grid_x == 0 && layer->grid_y == 0) { - layer->resize(self->data->grid_w, self->data->grid_h); - } else if (layer->grid_x != self->data->grid_w || layer->grid_y != self->data->grid_h) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_Format(PyExc_ValueError, - "Layer size (%d, %d) does not match Grid size (%d, %d)", - layer->grid_x, layer->grid_y, self->data->grid_w, self->data->grid_h); - return -1; - } - - // Link to grid - layer->parent_grid = self->data.get(); - self->data->layers.push_back(layer); - py_layer->grid = self->data; - - } else if (PyObject_IsInstance(item, tile_layer_type)) { - PyTileLayerObject* py_layer = (PyTileLayerObject*)item; - if (!py_layer->data) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_SetString(PyExc_RuntimeError, "Layer has no data"); - return -1; - } - - // Check if already attached to another grid - if (py_layer->grid) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_SetString(PyExc_ValueError, "Layer is already attached to another Grid"); - return -1; - } - - layer = py_layer->data; - - // Check for protected names - if (!layer->name.empty() && UIGrid::isProtectedLayerName(layer->name)) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_Format(PyExc_ValueError, "Layer name '%s' is reserved", layer->name.c_str()); - return -1; - } - - // Handle name collision - if (!layer->name.empty()) { - auto existing = self->data->getLayerByName(layer->name); - if (existing) { - existing->parent_grid = nullptr; - self->data->removeLayer(existing); - } - } - - // Lazy allocation: resize if layer is (0,0) - if (layer->grid_x == 0 && layer->grid_y == 0) { - layer->resize(self->data->grid_w, self->data->grid_h); - } else if (layer->grid_x != self->data->grid_w || layer->grid_y != self->data->grid_h) { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_Format(PyExc_ValueError, - "Layer size (%d, %d) does not match Grid size (%d, %d)", - layer->grid_x, layer->grid_y, self->data->grid_w, self->data->grid_h); - return -1; - } - - // Link to grid - layer->parent_grid = self->data.get(); - self->data->layers.push_back(layer); - py_layer->grid = self->data; - - // Inherit grid texture if TileLayer has none (#254) - auto tile_layer_ptr = std::static_pointer_cast(layer); - if (!tile_layer_ptr->texture) { - tile_layer_ptr->texture = self->data->getTexture(); - } - - } else { - Py_DECREF(item); - Py_DECREF(iterator); - PyErr_SetString(PyExc_TypeError, "layers must contain only ColorLayer or TileLayer objects"); - return -1; - } - - Py_DECREF(item); - } - - Py_DECREF(iterator); - - if (PyErr_Occurred()) { - return -1; - } - - self->data->layers_need_sort = true; - } - // else: layers_obj is Py_None - explicit empty, no layers created - - // Initialize weak reference list - self->weakreflist = NULL; - - // Register in Python object cache - if (self->data->serial_number == 0) { - self->data->serial_number = PythonObjectCache::getInstance().assignSerial(); - PyObject* weakref = PyWeakref_NewRef((PyObject*)self, NULL); - if (weakref) { - PythonObjectCache::getInstance().registerObject(self->data->serial_number, weakref); - Py_DECREF(weakref); // Cache owns the reference now - } - } - - // #184: Check if this is a Python subclass (for callback method support) - self->data->is_python_subclass = (PyObject*)Py_TYPE(self) != (PyObject*)&mcrfpydef::PyUIGridType; - - // #359: previously constructed an extra "shim" GridView here (self->view) - // that copied rendering state and allocated its own RenderTexture, but was - // NEVER used -- UIGridView::init_with_data (the only caller of UIGrid::init, - // see UIGridView.cpp) discards this PyUIGridObject wrapper immediately after - // stealing its GridData via an aliasing shared_ptr, and builds the REAL, - // user-visible view directly on itself. The shim was dead weight (a wasted - // RenderTexture allocation on every Grid() construction) backing a field - // (PyUIGridObject::view / `_GridData.view`) nothing ever read. Removed along - // with the field itself. - - return 0; // Success -} - -// Python property getters/setters moved to UIGridPyProperties.cpp -// Python method implementations moved to UIGridPyMethods.cpp - -// #221 - Get effective cell size (texture size * zoom) -sf::Vector2f UIGrid::getEffectiveCellSize() const { - float cell_w = ptex ? static_cast(ptex->sprite_width) : static_cast(DEFAULT_CELL_WIDTH); - float cell_h = ptex ? static_cast(ptex->sprite_height) : static_cast(DEFAULT_CELL_HEIGHT); - return sf::Vector2f(cell_w * zoom, cell_h * zoom); -} - -// UIEntityCollection code has been moved to UIEntityCollection.cpp - -// Property system implementation for animations -bool UIGrid::setProperty(const std::string& name, float value) { - if (name == "x") { - position.x = value; - box.setPosition(position); - output.setPosition(position); - markCompositeDirty(); // #144 - Position change, texture still valid - return true; - } - else if (name == "y") { - position.y = value; - box.setPosition(position); - output.setPosition(position); - markCompositeDirty(); // #144 - Position change, texture still valid - return true; - } - else if (name == "w" || name == "width") { - box.setSize(sf::Vector2f(value, box.getSize().y)); - output.setTextureRect(sf::IntRect(0, 0, box.getSize().x, box.getSize().y)); - markDirty(); // #144 - Size change - return true; - } - else if (name == "h" || name == "height") { - box.setSize(sf::Vector2f(box.getSize().x, value)); - output.setTextureRect(sf::IntRect(0, 0, box.getSize().x, box.getSize().y)); - markDirty(); // #144 - Size change - return true; - } - else if (name == "center_x") { - center_x = value; - markDirty(); // #144 - View change affects content - return true; - } - else if (name == "center_y") { - center_y = value; - markDirty(); // #144 - View change affects content - return true; - } - else if (name == "zoom") { - zoom = value; - markDirty(); // #144 - View change affects content - return true; - } - else if (name == "camera_rotation") { - camera_rotation = value; - markDirty(); // View rotation affects content - return true; - } - else if (name == "rotation") { - rotation = value; - markCompositeDirty(); // Viewport rotation doesn't affect internal content - return true; - } - else if (name == "origin_x") { - origin.x = value; - markCompositeDirty(); - return true; - } - else if (name == "origin_y") { - origin.y = value; - markCompositeDirty(); - return true; - } - else if (name == "z_index") { - z_index = static_cast(value); - markDirty(); // #144 - Z-order change affects parent - return true; - } - else if (name == "fill_color.r") { - fill_color.r = static_cast(std::max(0.0f, std::min(255.0f, value))); - markDirty(); // #144 - Content change - return true; - } - else if (name == "fill_color.g") { - fill_color.g = static_cast(std::max(0.0f, std::min(255.0f, value))); - markDirty(); // #144 - Content change - return true; - } - else if (name == "fill_color.b") { - fill_color.b = static_cast(std::max(0.0f, std::min(255.0f, value))); - markDirty(); // #144 - Content change - return true; - } - else if (name == "fill_color.a") { - fill_color.a = static_cast(std::max(0.0f, std::min(255.0f, value))); - markDirty(); // #144 - Content change - return true; - } - // #106: Shader uniform properties - if (setShaderProperty(name, value)) { - return true; - } - return false; -} - -bool UIGrid::setProperty(const std::string& name, const sf::Vector2f& value) { - if (name == "size") { - box.setSize(value); - output.setTextureRect(sf::IntRect(0, 0, box.getSize().x, box.getSize().y)); - markDirty(); // #144 - Size change - return true; - } - else if (name == "center") { - center_x = value.x; - center_y = value.y; - markDirty(); // #144 - View change affects content - return true; - } - else if (name == "origin") { - origin = value; - markCompositeDirty(); - return true; - } - return false; -} - -bool UIGrid::getProperty(const std::string& name, float& value) const { - if (name == "x") { - value = position.x; - return true; - } - else if (name == "y") { - value = position.y; - return true; - } - else if (name == "w" || name == "width") { - value = box.getSize().x; - return true; - } - else if (name == "h" || name == "height") { - value = box.getSize().y; - return true; - } - else if (name == "center_x") { - value = center_x; - return true; - } - else if (name == "center_y") { - value = center_y; - return true; - } - else if (name == "zoom") { - value = zoom; - return true; - } - else if (name == "camera_rotation") { - value = camera_rotation; - return true; - } - else if (name == "rotation") { - value = rotation; - return true; - } - else if (name == "origin_x") { - value = origin.x; - return true; - } - else if (name == "origin_y") { - value = origin.y; - return true; - } - else if (name == "z_index") { - value = static_cast(z_index); - return true; - } - else if (name == "fill_color.r") { - value = static_cast(fill_color.r); - return true; - } - else if (name == "fill_color.g") { - value = static_cast(fill_color.g); - return true; - } - else if (name == "fill_color.b") { - value = static_cast(fill_color.b); - return true; - } - else if (name == "fill_color.a") { - value = static_cast(fill_color.a); - return true; - } - // #106: Shader uniform properties - if (getShaderProperty(name, value)) { - return true; - } - return false; -} - -bool UIGrid::getProperty(const std::string& name, sf::Vector2f& value) const { - if (name == "size") { - value = box.getSize(); - return true; - } - else if (name == "center") { - value = sf::Vector2f(center_x, center_y); - return true; - } - else if (name == "origin") { - value = origin; - return true; - } - return false; -} - -bool UIGrid::hasProperty(const std::string& name) const { - // Float properties - if (name == "x" || name == "y" || - name == "w" || name == "h" || name == "width" || name == "height" || - name == "center_x" || name == "center_y" || name == "zoom" || - name == "camera_rotation" || name == "rotation" || - name == "origin_x" || name == "origin_y" || name == "z_index" || - name == "fill_color.r" || name == "fill_color.g" || - name == "fill_color.b" || name == "fill_color.a") { - return true; - } - // Vector2f properties - if (name == "size" || name == "center" || name == "origin") { - return true; - } - // #106: Shader uniform properties - if (hasShaderProperty(name)) { - return true; - } - return false; -} diff --git a/src/UIGrid.h b/src/UIGrid.h deleted file mode 100644 index 93fef99..0000000 --- a/src/UIGrid.h +++ /dev/null @@ -1,275 +0,0 @@ -#pragma once -#include "Common.h" -#include "Python.h" -#include "structmember.h" -#include "IndexTexture.h" -#include "Resources.h" -#include -#include -#include -#include -#include -#include - -#include "PyCallable.h" -#include "PyTexture.h" -#include "PyDrawable.h" -#include "PyColor.h" -#include "PyVector.h" -#include "PyFont.h" - -#include "UIGridPoint.h" -#include "UIEntity.h" -#include "UIDrawable.h" -#include "UIBase.h" -#include "GridLayers.h" -#include "SpatialHash.h" -#include "UIEntityCollection.h" // EntityCollection types (extracted from UIGrid) -#include "GridData.h" // #252 - Data layer base class -#include "UIGridView.h" // #252 - GridView shim - -// Forward declaration for pathfinding -class DijkstraMap; - -// UIGrid inherits both UIDrawable (rendering) and GridData (state). -// This allows GridData to be shared with GridView for multi-view support (#252). -class UIGrid: public UIDrawable, public GridData -{ -private: - std::shared_ptr ptex; - // Default cell dimensions when no texture is provided - static constexpr int DEFAULT_CELL_WIDTH = 16; - static constexpr int DEFAULT_CELL_HEIGHT = 16; - -public: - UIGrid(); - UIGrid(int, int, std::shared_ptr, sf::Vector2f, sf::Vector2f); - ~UIGrid(); - - // #313: GridData also declares markDirty/markCompositeDirty (data-layer - // invalidation for entities holding shared_ptr). Within UIGrid, - // keep resolving unqualified calls to the UIDrawable flag-setters -- - // identical to pre-#313 behavior. - using UIDrawable::markDirty; - using UIDrawable::markCompositeDirty; - void update(); - void render(sf::Vector2f, sf::RenderTarget&) override final; - PyObjectsEnum derived_type() override final; - virtual UIDrawable* click_at(sf::Vector2f point) override final; - GridData* asGridData() override { return static_cast(this); } // #355 - - // Phase 1 virtual method implementations - sf::FloatRect get_bounds() const override; - void move(float dx, float dy) override; - void resize(float w, float h) override; - void onPositionChanged() override; - - // ========================================================================= - // Rendering-only members (NOT in GridData) - // ========================================================================= - sf::RectangleShape box; - float center_x, center_y, zoom; - float camera_rotation = 0.0f; - std::shared_ptr getTexture(); - sf::Sprite sprite, output; - sf::RenderTexture renderTexture; - sf::Vector2u renderTextureSize{0, 0}; - void ensureRenderTextureSize(); - std::unique_ptr rotationTexture; // #338 - lazy: only rotating grids allocate it - unsigned int rotationTextureSize = 0; - - // Background rendering - sf::Color fill_color; - - // #355: the perspective system (entity + enabled flag) lives on UIGridView, - // which renders the FOV overlay. Keeping a copy here was a dead duplicate. - - // #355 - cell callback firing, screenToCell and cell hover moved to UIGridView. - // getEffectiveCellSize stays: UIDrawable uses it for grid_pos <-> pixel math. - sf::Vector2f getEffectiveCellSize() const; - - // Property system for animations - bool setProperty(const std::string& name, float value) override; - bool setProperty(const std::string& name, const sf::Vector2f& value) override; - bool getProperty(const std::string& name, float& value) const override; - bool getProperty(const std::string& name, sf::Vector2f& value) const override; - bool hasProperty(const std::string& name) const override; - - // #169 - Camera positioning - void center_camera(); - void center_camera(float tile_x, float tile_y); - - // ========================================================================= - // Python API (static methods) - // ========================================================================= - static int init(PyUIGridObject* self, PyObject* args, PyObject* kwds); - static PyObject* get_grid_size(PyUIGridObject* self, void* closure); - static PyObject* get_grid_w(PyUIGridObject* self, void* closure); - static PyObject* get_grid_h(PyUIGridObject* self, void* closure); - static PyObject* get_size(PyUIGridObject* self, void* closure); - static int set_size(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_center(PyUIGridObject* self, void* closure); - static int set_center(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_float_member(PyUIGridObject* self, void* closure); - static int set_float_member(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_texture(PyUIGridObject* self, void* closure); - static PyObject* get_fill_color(PyUIGridObject* self, void* closure); - static int set_fill_color(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_fov(PyUIGridObject* self, void* closure); - static int set_fov(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* get_fov_radius(PyUIGridObject* self, void* closure); - static int set_fov_radius(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* py_at(PyUIGridObject* self, PyObject* args, PyObject* kwds); - static PyObject* py_compute_fov(PyUIGridObject* self, PyObject* args, PyObject* kwds); - static PyObject* py_is_in_fov(PyUIGridObject* self, PyObject* args, PyObject* kwds); - static PyObject* py_entities_in_radius(PyUIGridObject* self, PyObject* args, PyObject* kwds); - static PyObject* py_center_camera(PyUIGridObject* self, PyObject* args); - static PyObject* get_camera_rotation(PyUIGridObject* self, void* closure); - static int set_camera_rotation(PyUIGridObject* self, PyObject* value, void* closure); - static PyObject* py_apply_threshold(PyUIGridObject* self, PyObject* args, PyObject* kwds); - static PyObject* py_apply_ranges(PyUIGridObject* self, PyObject* args); - static PyObject* py_step(PyUIGridObject* self, PyObject* args, PyObject* kwds); - - static PyMethodDef methods[]; - static PyGetSetDef getsetters[]; - static PyMappingMethods mpmethods; - static PyObject* subscript(PyUIGridObject* self, PyObject* key); - static PyObject* get_entities(PyUIGridObject* self, void* closure); - // #364: get_children lives on UIGridView -- overlay children belong to the view. - static PyObject* repr(PyUIGridObject* self); - - static PyObject* py_add_layer(PyUIGridObject* self, PyObject* args); - static PyObject* py_remove_layer(PyUIGridObject* self, PyObject* args); - static PyObject* get_layers(PyUIGridObject* self, void* closure); - static PyObject* py_layer(PyUIGridObject* self, PyObject* args); -}; - -// UIEntityCollection types are now in UIEntityCollection.h - -// Forward declaration of methods array -extern PyMethodDef UIGrid_all_methods[]; - -namespace mcrfpydef { - inline PyTypeObject PyUIGridType = { - .ob_base = {.ob_base = {.ob_refcnt = 1, .ob_type = NULL}, .ob_size = 0}, - .tp_name = "mcrfpy._GridData", // #252: internal type, "Grid" is now GridView - .tp_basicsize = sizeof(PyUIGridObject), - .tp_itemsize = 0, - .tp_dealloc = (destructor)[](PyObject* self) - { - PyUIGridObject* obj = (PyUIGridObject*)self; - // Untrack from GC before destroying - PyObject_GC_UnTrack(self); - // Clear weak references - if (obj->weakreflist != NULL) { - PyObject_ClearWeakRefs(self); - } - // Only unregister callbacks if we're the last owner (#251) - if (obj->data && obj->data.use_count() <= 1) { - obj->data->click_unregister(); - obj->data->on_enter_unregister(); - obj->data->on_exit_unregister(); - obj->data->on_move_unregister(); - // #355: cell callbacks now live on UIGridView, not GridData. - } - obj->data.reset(); - Py_TYPE(self)->tp_free(self); - }, - .tp_repr = (reprfunc)UIGrid::repr, - .tp_as_mapping = &UIGrid::mpmethods, - .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC, - .tp_doc = PyDoc_STR("Grid(pos=None, size=None, grid_size=None, texture=None, **kwargs)\n\n" - "A grid-based UI element for tile-based rendering and entity management.\n\n" - "Args:\n" - " pos (tuple, optional): Position as (x, y) tuple. Default: (0, 0)\n" - " size (tuple, optional): Size as (width, height) tuple. Default: auto-calculated from grid_size\n" - " grid_size (tuple, optional): Grid dimensions as (grid_w, grid_h) tuple. Default: (2, 2)\n" - " texture (Texture, optional): Texture containing tile sprites. Default: default texture\n\n" - "Keyword Args:\n" - " fill_color (Color): Background fill color. Default: None\n" - " click (callable): Click event handler. Default: None\n" - " center_x (float): X coordinate of center point. Default: 0\n" - " center_y (float): Y coordinate of center point. Default: 0\n" - " zoom (float): Zoom level for rendering. Default: 1.0\n" - " visible (bool): Visibility state. Default: True\n" - " opacity (float): Opacity (0.0-1.0). Default: 1.0\n" - " z_index (int): Rendering order. Default: 0\n" - " name (str): Element name for finding. Default: None\n" - " x (float): X position override. Default: 0\n" - " y (float): Y position override. Default: 0\n" - " w (float): Width override. Default: auto-calculated\n" - " h (float): Height override. Default: auto-calculated\n" - " grid_w (int): Grid width override. Default: 2\n" - " grid_h (int): Grid height override. Default: 2\n" - " align (Alignment): Alignment relative to parent. Default: None\n" - " margin (float): Margin from parent edge when aligned. Default: 0\n" - " horiz_margin (float): Horizontal margin override. Default: 0 (use margin)\n" - " vert_margin (float): Vertical margin override. Default: 0 (use margin)\n\n" - "Attributes:\n" - " x, y (float): Position in pixels\n" - " w, h (float): Size in pixels\n" - " pos (Vector): Position as a Vector object\n" - " size (Vector): Size as (width, height) Vector\n" - " center (Vector): Center point as (x, y) Vector\n" - " center_x, center_y (float): Center point coordinates\n" - " zoom (float): Zoom level for rendering\n" - " grid_size (Vector): Grid dimensions (width, height) in tiles\n" - " grid_w, grid_h (int): Grid dimensions\n" - " texture (Texture): Tile texture atlas\n" - " fill_color (Color): Background color\n" - " entities (EntityCollection): Collection of entities in the grid\n" - " click (callable): Click event handler\n" - " visible (bool): Visibility state\n" - " opacity (float): Opacity value\n" - " z_index (int): Rendering order\n" - " name (str): Element name\n" - " align (Alignment): Alignment relative to parent (or None)\n" - " margin (float): General margin for alignment\n" - " horiz_margin (float): Horizontal margin override\n" - " vert_margin (float): Vertical margin override"), - .tp_traverse = [](PyObject* self, visitproc visit, void* arg) -> int { - PyUIGridObject* obj = (PyUIGridObject*)self; - if (obj->data) { - if (obj->data->click_callable) { - PyObject* callback = obj->data->click_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } - if (obj->data->on_enter_callable) { - PyObject* callback = obj->data->on_enter_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } - if (obj->data->on_exit_callable) { - PyObject* callback = obj->data->on_exit_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } - if (obj->data->on_move_callable) { - PyObject* callback = obj->data->on_move_callable->borrow(); - if (callback && callback != Py_None) Py_VISIT(callback); - } - } - return 0; - }, - .tp_clear = [](PyObject* self) -> int { - PyUIGridObject* obj = (PyUIGridObject*)self; - if (obj->data) { - obj->data->click_unregister(); - obj->data->on_enter_unregister(); - obj->data->on_exit_unregister(); - obj->data->on_move_unregister(); - } - return 0; - }, - .tp_methods = UIGrid_all_methods, - .tp_getset = UIGrid::getsetters, - .tp_base = &mcrfpydef::PyDrawableType, - .tp_init = (initproc)UIGrid::init, - .tp_new = [](PyTypeObject* type, PyObject* args, PyObject* kwds) -> PyObject* - { - PyUIGridObject* self = (PyUIGridObject*)type->tp_alloc(type, 0); - if (self) { - self->data = std::make_shared(); - } - return (PyObject*)self; - } - }; -} diff --git a/src/UIGridPathfinding.cpp b/src/UIGridPathfinding.cpp index 399d9a8..441b578 100644 --- a/src/UIGridPathfinding.cpp +++ b/src/UIGridPathfinding.cpp @@ -1,5 +1,5 @@ #include "UIGridPathfinding.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIEntity.h" #include "PyVector.h" #include "McRFPy_API.h" @@ -130,7 +130,7 @@ sf::Vector2i DijkstraMap::descentStep(int x, int y, bool* valid) const { //============================================================================= bool UIGridPathfinding::ExtractPosition(PyObject* obj, int* x, int* y, - UIGrid* expected_grid, + GridData* expected_grid, const char* arg_name) { // Check if it's an Entity if (PyObject_IsInstance(obj, (PyObject*)&mcrfpydef::PyUIEntityType)) { @@ -610,7 +610,7 @@ static void restoreCollisionLabel(GridData* grid, } } -PyObject* UIGridPathfinding::Grid_find_path(PyUIGridObject* self, PyObject* args, PyObject* kwds) { +PyObject* UIGridPathfinding::Grid_find_path(PyGridDataObject* self, PyObject* args, PyObject* kwds) { static const char* kwlist[] = {"start", "end", "diagonal_cost", "collide", "heuristic", "weight", NULL}; PyObject* start_obj = NULL; @@ -715,7 +715,7 @@ PyObject* UIGridPathfinding::Grid_find_path(PyUIGridObject* self, PyObject* args // - a DiscreteMap mask (non-zero cells become roots) // Returns true on success; populates `out_roots` and `out_mask_used`. // If a DiscreteMap mask is used, caller should prefer the masked C path. -static bool collectRoots(PyObject* root_obj, UIGrid* grid, +static bool collectRoots(PyObject* root_obj, GridData* grid, std::vector* out_roots, PyDiscreteMapObject** out_mask) { @@ -795,7 +795,7 @@ static bool collectRoots(PyObject* root_obj, UIGrid* grid, return false; } -PyObject* UIGridPathfinding::Grid_get_dijkstra_map(PyUIGridObject* self, PyObject* args, PyObject* kwds) { +PyObject* UIGridPathfinding::Grid_get_dijkstra_map(PyGridDataObject* self, PyObject* args, PyObject* kwds) { static const char* kwlist[] = {"root", "diagonal_cost", "collide", "roots", NULL}; PyObject* root_obj = NULL; PyObject* roots_obj = NULL; @@ -896,7 +896,7 @@ PyObject* UIGridPathfinding::Grid_get_dijkstra_map(PyUIGridObject* self, PyObjec return (PyObject*)result; } -PyObject* UIGridPathfinding::Grid_clear_dijkstra_maps(PyUIGridObject* self, PyObject* args) { +PyObject* UIGridPathfinding::Grid_clear_dijkstra_maps(PyGridDataObject* self, PyObject* args) { if (!self->data) { PyErr_SetString(PyExc_RuntimeError, "Grid is invalid"); return NULL; diff --git a/src/UIGridPathfinding.h b/src/UIGridPathfinding.h index 28e0b92..59830b5 100644 --- a/src/UIGridPathfinding.h +++ b/src/UIGridPathfinding.h @@ -1,14 +1,14 @@ #pragma once #include "Common.h" #include "Python.h" -#include "UIBase.h" // For PyUIGridObject typedef +#include "UIBase.h" // For PyGridDataObject typedef #include #include #include #include // Forward declarations -class UIGrid; +class GridData; //============================================================================= // AStarPath - A computed A* path result, consumed like an iterator @@ -91,7 +91,7 @@ namespace UIGridPathfinding { // Sets Python error and returns false on failure // If expected_grid is provided and obj is Entity, validates grid membership bool ExtractPosition(PyObject* obj, int* x, int* y, - UIGrid* expected_grid = nullptr, + GridData* expected_grid = nullptr, const char* arg_name = "position"); //========================================================================= @@ -143,13 +143,13 @@ namespace UIGridPathfinding { //========================================================================= // Grid.find_path() -> AStarPath | None - PyObject* Grid_find_path(PyUIGridObject* self, PyObject* args, PyObject* kwds); + PyObject* Grid_find_path(PyGridDataObject* self, PyObject* args, PyObject* kwds); // Grid.get_dijkstra_map() -> DijkstraMap - PyObject* Grid_get_dijkstra_map(PyUIGridObject* self, PyObject* args, PyObject* kwds); + PyObject* Grid_get_dijkstra_map(PyGridDataObject* self, PyObject* args, PyObject* kwds); // Grid.clear_dijkstra_maps() -> None - PyObject* Grid_clear_dijkstra_maps(PyUIGridObject* self, PyObject* args); + PyObject* Grid_clear_dijkstra_maps(PyGridDataObject* self, PyObject* args); } //============================================================================= diff --git a/src/UIGridPoint.cpp b/src/UIGridPoint.cpp index 8c7b4be..494acc4 100644 --- a/src/UIGridPoint.cpp +++ b/src/UIGridPoint.cpp @@ -1,5 +1,5 @@ #include "UIGridPoint.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIEntity.h" // #114 - for GridPoint.entities #include "GridLayers.h" // #150 - for GridLayerType, ColorLayer, TileLayer #include "McRFPy_Doc.h" // #177 - for MCRF_PROPERTY macro diff --git a/src/UIGridPoint.h b/src/UIGridPoint.h index 827bf2d..29e3f71 100644 --- a/src/UIGridPoint.h +++ b/src/UIGridPoint.h @@ -22,7 +22,7 @@ class UIGridPoint; typedef struct { PyObject_HEAD - std::shared_ptr grid; + std::shared_ptr grid; int x, y; // Grid coordinates - compute data pointer on access } PyUIGridPointObject; diff --git a/src/UIGridPyProperties.cpp b/src/UIGridPyProperties.cpp deleted file mode 100644 index fd9d4ec..0000000 --- a/src/UIGridPyProperties.cpp +++ /dev/null @@ -1,423 +0,0 @@ -// UIGridPyProperties.cpp — Python getter/setter implementations for UIGrid -// Extracted from UIGrid.cpp (#149) for maintainability. -// Contains: all PyGetSetDef getters/setters and the getsetters[] array. -#include "UIGrid.h" -#include "UIGridView.h" -#include "McRFPy_API.h" -#include "PythonObjectCache.h" -#include "PyColor.h" -#include "PyVector.h" -#include "PyFOV.h" -#include "UIBase.h" -#include "UICollection.h" -#include "McRFPy_Doc.h" - -// ========================================================================= -// Grid dimension properties -// ========================================================================= - -PyObject* UIGrid::get_grid_size(PyUIGridObject* self, void* closure) { - return PyVector(sf::Vector2f(static_cast(self->data->grid_w), - static_cast(self->data->grid_h))).pyObject(); -} - -PyObject* UIGrid::get_grid_w(PyUIGridObject* self, void* closure) { - return PyLong_FromLong(self->data->grid_w); -} - -PyObject* UIGrid::get_grid_h(PyUIGridObject* self, void* closure) { - return PyLong_FromLong(self->data->grid_h); -} - -PyObject* UIGrid::get_size(PyUIGridObject* self, void* closure) { - auto& box = self->data->box; - return PyVector(box.getSize()).pyObject(); -} - -int UIGrid::set_size(PyUIGridObject* self, PyObject* value, void* closure) { - float w, h; - PyVectorObject* vec = PyVector::from_arg(value); - if (vec) { - w = vec->data.x; - h = vec->data.y; - Py_DECREF(vec); - } else { - PyErr_Clear(); - if (!PyArg_ParseTuple(value, "ff", &w, &h)) { - PyErr_SetString(PyExc_TypeError, "size must be a Vector or tuple (w, h)"); - return -1; - } - } - self->data->box.setSize(sf::Vector2f(w, h)); - - unsigned int tex_width = static_cast(w * 1.5f); - unsigned int tex_height = static_cast(h * 1.5f); - - tex_width = std::min(tex_width, 4096u); - tex_height = std::min(tex_height, 4096u); - - self->data->renderTexture.create(tex_width, tex_height); - self->data->markDirty(); - - return 0; -} - -// ========================================================================= -// Camera/view properties -// ========================================================================= - -PyObject* UIGrid::get_center(PyUIGridObject* self, void* closure) { - return PyVector(sf::Vector2f(self->data->center_x, self->data->center_y)).pyObject(); -} - -int UIGrid::set_center(PyUIGridObject* self, PyObject* value, void* closure) { - float x, y; - if (!PyArg_ParseTuple(value, "ff", &x, &y)) { - PyErr_SetString(PyExc_ValueError, "Size must be a tuple of two floats"); - return -1; - } - self->data->center_x = x; - self->data->center_y = y; - self->data->markDirty(); - return 0; -} - -PyObject* UIGrid::get_float_member(PyUIGridObject* self, void* closure) -{ - auto member_ptr = reinterpret_cast(closure); - if (member_ptr == 0) - return PyFloat_FromDouble(self->data->box.getPosition().x); - else if (member_ptr == 1) - return PyFloat_FromDouble(self->data->box.getPosition().y); - else if (member_ptr == 2) - return PyFloat_FromDouble(self->data->box.getSize().x); - else if (member_ptr == 3) - return PyFloat_FromDouble(self->data->box.getSize().y); - else if (member_ptr == 4) - return PyFloat_FromDouble(self->data->center_x); - else if (member_ptr == 5) - return PyFloat_FromDouble(self->data->center_y); - else if (member_ptr == 6) - return PyFloat_FromDouble(self->data->zoom); - else if (member_ptr == 7) - return PyFloat_FromDouble(self->data->camera_rotation); - else - { - PyErr_SetString(PyExc_AttributeError, "Invalid attribute"); - return nullptr; - } -} - -int UIGrid::set_float_member(PyUIGridObject* self, PyObject* value, void* closure) -{ - float val; - auto member_ptr = reinterpret_cast(closure); - if (PyFloat_Check(value)) - { - val = PyFloat_AsDouble(value); - } - else if (PyLong_Check(value)) - { - val = PyLong_AsLong(value); - } - else - { - PyErr_SetString(PyExc_TypeError, "Value must be a number (int or float)"); - return -1; - } - if (member_ptr == 0) - self->data->box.setPosition(val, self->data->box.getPosition().y); - else if (member_ptr == 1) - self->data->box.setPosition(self->data->box.getPosition().x, val); - else if (member_ptr == 2) - { - self->data->box.setSize(sf::Vector2f(val, self->data->box.getSize().y)); - unsigned int tex_width = static_cast(val * 1.5f); - unsigned int tex_height = static_cast(self->data->box.getSize().y * 1.5f); - tex_width = std::min(tex_width, 4096u); - tex_height = std::min(tex_height, 4096u); - self->data->renderTexture.create(tex_width, tex_height); - } - else if (member_ptr == 3) - { - self->data->box.setSize(sf::Vector2f(self->data->box.getSize().x, val)); - unsigned int tex_width = static_cast(self->data->box.getSize().x * 1.5f); - unsigned int tex_height = static_cast(val * 1.5f); - tex_width = std::min(tex_width, 4096u); - tex_height = std::min(tex_height, 4096u); - self->data->renderTexture.create(tex_width, tex_height); - } - else if (member_ptr == 4) - self->data->center_x = val; - else if (member_ptr == 5) - self->data->center_y = val; - else if (member_ptr == 6) - self->data->zoom = val; - else if (member_ptr == 7) - self->data->camera_rotation = val; - - if (member_ptr == 0 || member_ptr == 1) { - self->data->markCompositeDirty(); - } else { - self->data->markDirty(); - } - - return 0; -} - -// ========================================================================= -// Texture property -// ========================================================================= - -PyObject* UIGrid::get_texture(PyUIGridObject* self, void* closure) { - auto texture = self->data->getTexture(); - if (!texture) { - Py_RETURN_NONE; - } - - auto type = &mcrfpydef::PyTextureType; - auto obj = (PyTextureObject*)type->tp_alloc(type, 0); - obj->data = texture; - return (PyObject*)obj; -} - -// ========================================================================= -// Fill color -// ========================================================================= - -PyObject* UIGrid::get_fill_color(PyUIGridObject* self, void* closure) -{ - auto& color = self->data->fill_color; - auto type = &mcrfpydef::PyColorType; - PyObject* args = Py_BuildValue("(iiii)", color.r, color.g, color.b, color.a); - PyObject* obj = PyObject_CallObject((PyObject*)type, args); - Py_DECREF(args); - return obj; -} - -int UIGrid::set_fill_color(PyUIGridObject* self, PyObject* value, void* closure) -{ - if (!PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyColorType)) { - PyErr_SetString(PyExc_TypeError, "fill_color must be a Color object"); - return -1; - } - - PyColorObject* color = (PyColorObject*)value; - self->data->fill_color = color->data; - self->data->markDirty(); - return 0; -} - -PyObject* UIGrid::get_fov(PyUIGridObject* self, void* closure) -{ - if (PyFOV::fov_enum_class) { - PyObject* value = PyLong_FromLong(self->data->fov_algorithm); - if (!value) return NULL; - - PyObject* args = PyTuple_Pack(1, value); - Py_DECREF(value); - if (!args) return NULL; - - PyObject* result = PyObject_Call(PyFOV::fov_enum_class, args, NULL); - Py_DECREF(args); - return result; - } - return PyLong_FromLong(self->data->fov_algorithm); -} - -int UIGrid::set_fov(PyUIGridObject* self, PyObject* value, void* closure) -{ - TCOD_fov_algorithm_t algo; - if (!PyFOV::from_arg(value, &algo, nullptr)) { - return -1; - } - self->data->fov_algorithm = algo; - self->data->markDirty(); - return 0; -} - -PyObject* UIGrid::get_fov_radius(PyUIGridObject* self, void* closure) -{ - return PyLong_FromLong(self->data->fov_radius); -} - -int UIGrid::set_fov_radius(PyUIGridObject* self, PyObject* value, void* closure) -{ - if (!PyLong_Check(value)) { - PyErr_SetString(PyExc_TypeError, "fov_radius must be an integer"); - return -1; - } - long radius = PyLong_AsLong(value); - if (radius == -1 && PyErr_Occurred()) { - return -1; - } - if (radius < 0) { - PyErr_SetString(PyExc_ValueError, "fov_radius must be non-negative"); - return -1; - } - self->data->fov_radius = (int)radius; - self->data->markDirty(); - return 0; -} - -// ========================================================================= -// Collection getters -// ========================================================================= - -PyObject* UIGrid::get_entities(PyUIGridObject* self, void* closure) -{ - PyTypeObject* type = &mcrfpydef::PyUIEntityCollectionType; - auto o = (PyUIEntityCollectionObject*)type->tp_alloc(type, 0); - if (o) { - o->data = self->data->entities; - o->grid = self->data; - } - return (PyObject*)o; -} - -// #364: get_children moved to UIGridView. GridData holds no drawables, so the -// internal _GridData no longer exposes a children collection at all. - -PyObject* UIGrid::get_layers(PyUIGridObject* self, void* closure) { - self->data->sortLayers(); - - PyObject* tuple = PyTuple_New(self->data->layers.size()); - if (!tuple) return NULL; - - auto* color_layer_type = &mcrfpydef::PyColorLayerType; - auto* tile_layer_type = &mcrfpydef::PyTileLayerType; - - for (size_t i = 0; i < self->data->layers.size(); ++i) { - auto& layer = self->data->layers[i]; - PyObject* py_layer = nullptr; - - if (layer->type == GridLayerType::Color) { - PyColorLayerObject* obj = (PyColorLayerObject*)color_layer_type->tp_alloc(color_layer_type, 0); - if (obj) { - obj->data = std::static_pointer_cast(layer); - obj->grid = self->data; - py_layer = (PyObject*)obj; - } - } else { - PyTileLayerObject* obj = (PyTileLayerObject*)tile_layer_type->tp_alloc(tile_layer_type, 0); - if (obj) { - obj->data = std::static_pointer_cast(layer); - obj->grid = self->data; - py_layer = (PyObject*)obj; - } - } - - if (!py_layer) { - Py_DECREF(tuple); - return NULL; - } - - PyTuple_SET_ITEM(tuple, i, py_layer); - } - - return tuple; -} - -// ========================================================================= -// repr -// ========================================================================= - -PyObject* UIGrid::repr(PyUIGridObject* self) -{ - std::ostringstream ss; - if (!self->data) ss << ""; - else { - auto grid = self->data; - auto box = grid->box; - ss << "center_x << ", " << grid->center_y << "), zoom=" << grid->zoom << - ")>"; - } - std::string repr_str = ss.str(); - return PyUnicode_DecodeUTF8(repr_str.c_str(), repr_str.size(), "replace"); -} - -// #355 - cell callback properties moved to UIGridView (src/UIGridView.cpp) - -// ========================================================================= -// getsetters[] table -// ========================================================================= - -typedef PyUIGridObject PyObjectType; - -PyGetSetDef UIGrid::getsetters[] = { - - {"grid_size", (getter)UIGrid::get_grid_size, NULL, - MCRF_PROPERTY(grid_size, "Grid dimensions as (grid_w, grid_h) (Vector, read-only)."), NULL}, - {"grid_w", (getter)UIGrid::get_grid_w, NULL, - MCRF_PROPERTY(grid_w, "Grid width in cells (int, read-only)."), NULL}, - {"grid_h", (getter)UIGrid::get_grid_h, NULL, - MCRF_PROPERTY(grid_h, "Grid height in cells (int, read-only)."), NULL}, - {"pos", (getter)UIDrawable::get_pos, (setter)UIDrawable::set_pos, - MCRF_PROPERTY(pos, "Position of the grid as Vector (Vector)."), (void*)PyObjectsEnum::UIGRID}, - {"grid_pos", (getter)UIDrawable::get_grid_pos, (setter)UIDrawable::set_grid_pos, - MCRF_PROPERTY(grid_pos, "Position in parent grid's tile coordinates (Vector). Only valid when parent is a Grid."), (void*)PyObjectsEnum::UIGRID}, - {"size", (getter)UIGrid::get_size, (setter)UIGrid::set_size, - MCRF_PROPERTY(size, "Size of the grid widget as Vector (Vector, width x height in pixels)."), NULL}, - {"center", (getter)UIGrid::get_center, (setter)UIGrid::set_center, - MCRF_PROPERTY(center, "Camera center point in pixel coordinates (Vector). Controls which part of the grid world is visible (pan)."), NULL}, - - {"entities", (getter)UIGrid::get_entities, NULL, - MCRF_PROPERTY(entities, "EntityCollection of entities on this grid (EntityCollection, read-only)."), NULL}, - // #364: `children` is a property of the VIEW (mcrfpy.Grid / GridView), not of the - // data. See UIGridView::getsetters. - {"layers", (getter)UIGrid::get_layers, NULL, - MCRF_PROPERTY(layers, "Tuple of grid layers sorted by z_index (tuple, read-only). Contains ColorLayer and TileLayer objects."), NULL}, - - {"x", (getter)UIDrawable::get_float_member, (setter)UIDrawable::set_float_member, - MCRF_PROPERTY(x, "Top-left corner X-coordinate in pixels (float)."), (void*)((intptr_t)PyObjectsEnum::UIGRID << 8 | 0)}, - {"y", (getter)UIDrawable::get_float_member, (setter)UIDrawable::set_float_member, - MCRF_PROPERTY(y, "Top-left corner Y-coordinate in pixels (float)."), (void*)((intptr_t)PyObjectsEnum::UIGRID << 8 | 1)}, - {"w", (getter)UIDrawable::get_float_member, (setter)UIDrawable::set_float_member, - MCRF_PROPERTY(w, "Visible widget width in pixels (float)."), (void*)((intptr_t)PyObjectsEnum::UIGRID << 8 | 2)}, - {"h", (getter)UIDrawable::get_float_member, (setter)UIDrawable::set_float_member, - MCRF_PROPERTY(h, "Visible widget height in pixels (float)."), (void*)((intptr_t)PyObjectsEnum::UIGRID << 8 | 3)}, - {"center_x", (getter)UIGrid::get_float_member, (setter)UIGrid::set_float_member, - MCRF_PROPERTY(center_x, "Camera center X-coordinate in pixels (float)."), (void*)4}, - {"center_y", (getter)UIGrid::get_float_member, (setter)UIGrid::set_float_member, - MCRF_PROPERTY(center_y, "Camera center Y-coordinate in pixels (float)."), (void*)5}, - {"zoom", (getter)UIGrid::get_float_member, (setter)UIGrid::set_float_member, - MCRF_PROPERTY(zoom, "Zoom factor for rendering the grid (float). Values > 1 zoom in; values < 1 zoom out."), (void*)6}, - {"camera_rotation", (getter)UIGrid::get_float_member, (setter)UIGrid::set_float_member, - MCRF_PROPERTY(camera_rotation, "Rotation of grid contents around camera center in degrees (float). The grid widget stays axis-aligned; only the view into the world rotates."), (void*)7}, - - {"on_click", (getter)UIDrawable::get_click, (setter)UIDrawable::set_click, - MCRF_PROPERTY(on_click, - "Callable executed when object is clicked. " - "Function receives (pos: Vector, button: MouseButton, action: InputState)." - ), (void*)PyObjectsEnum::UIGRID}, - - {"texture", (getter)UIGrid::get_texture, NULL, - MCRF_PROPERTY(texture, "Texture used for tile rendering (Texture | None, read-only)."), NULL}, - {"fill_color", (getter)UIGrid::get_fill_color, (setter)UIGrid::set_fill_color, - MCRF_PROPERTY(fill_color, - "Background fill color of the grid (Color). " - "Returns a copy; modifying components requires reassignment. " - "For animation, use 'fill_color.r', 'fill_color.g', etc." - ), NULL}, - {"fov", (getter)UIGrid::get_fov, (setter)UIGrid::set_fov, - MCRF_PROPERTY(fov, - "FOV algorithm for this grid (FOV enum). " - "Used by entity.updateVisibility() and layer methods when fov=None." - ), NULL}, - {"fov_radius", (getter)UIGrid::get_fov_radius, (setter)UIGrid::set_fov_radius, - MCRF_PROPERTY(fov_radius, "Default FOV radius for this grid (int). Used when radius is not specified."), NULL}, - {"z_index", (getter)UIDrawable::get_int, (setter)UIDrawable::set_int, - MCRF_PROPERTY(z_index, - "Z-order for rendering (lower values rendered first). " - "Automatically triggers scene resort when changed." - ), (void*)PyObjectsEnum::UIGRID}, - {"name", (getter)UIDrawable::get_name, (setter)UIDrawable::set_name, - MCRF_PROPERTY(name, "Name for finding elements (str)."), (void*)PyObjectsEnum::UIGRID}, - UIDRAWABLE_GETSETTERS, - UIDRAWABLE_PARENT_GETSETTERS(PyObjectsEnum::UIGRID), - UIDRAWABLE_ALIGNMENT_GETSETTERS(PyObjectsEnum::UIGRID), - UIDRAWABLE_ROTATION_GETSETTERS(PyObjectsEnum::UIGRID), - UIDRAWABLE_SHADER_GETSETTERS(PyObjectsEnum::UIGRID), - {NULL} -}; diff --git a/src/UIGridView.cpp b/src/UIGridView.cpp index b7d9047..f379590 100644 --- a/src/UIGridView.cpp +++ b/src/UIGridView.cpp @@ -1,6 +1,6 @@ // UIGridView.cpp - Rendering view for GridData (#252) #include "UIGridView.h" -#include "UIGrid.h" +#include "PyGridData.h" #include "UIGridPoint.h" #include "UIEntity.h" #include "GameEngine.h" @@ -91,7 +91,7 @@ void UIGridView::resize(float w, float h) box.setSize(sf::Vector2f(w, h)); // #364: aligned children re-anchor against the widget's new bounds. This ran in - // UIGrid::resize before children moved to the view; it belongs here now. + // PyGridData::resize before children moved to the view; it belongs here now. if (children) { for (auto& child : *children) { if (child->getAlignment() != AlignmentType::NONE) { @@ -186,7 +186,7 @@ void UIGridView::center_camera(float tile_x, float tile_y) } // ========================================================================= -// Render -- adapted from UIGrid::render() +// Render -- adapted from PyGridData::render() // ========================================================================= void UIGridView::render(sf::Vector2f offset, sf::RenderTarget& target) { @@ -572,192 +572,180 @@ bool UIGridView::hasProperty(const std::string& name) const int UIGridView::init(PyUIGridViewObject* self, PyObject* args, PyObject* kwds) { - // Extract parent= up front so it doesn't confuse downstream parsing in - // either init mode. parent_obj is borrowed from the original kwds (which - // the caller owns and outlives this function), so no INCREF is needed -- - // but we must not delete from the caller's dict, so make a working copy. + // #361: ONE parse for both construction modes. + // + // Grid(grid_size=(80,40), pos=..., size=...) -- creates its own GridData + // Grid(grid=data, pos=..., size=...) -- a camera onto existing data + // + // This used to be two functions, and the factory mode built a throwaway + // Python _GridData object just to steal its GridData base subobject via an + // aliasing shared_ptr, then copied a dozen fields of rendering state out of + // the discarded wrapper. The view now constructs the GridData directly. As a + // side effect the view-mode kwarg set is no longer a crippled subset: z_index, + // visible, opacity, on_click and align work on a second view too, which they + // silently did not before (they raised TypeError). + PyObject* pos_obj = nullptr; + PyObject* size_obj = nullptr; + PyObject* grid_size_obj = nullptr; + PyObject* texture_obj = nullptr; + PyObject* grid_obj = nullptr; + PyObject* fill_color_obj = nullptr; + PyObject* click_handler = nullptr; + PyObject* layers_obj = nullptr; PyObject* parent_obj = nullptr; - PyObject* dispatch_kwds = kwds; - if (kwds) { - parent_obj = PyDict_GetItemString(kwds, "parent"); // borrowed ref - if (parent_obj) { - dispatch_kwds = PyDict_Copy(kwds); - if (!dispatch_kwds) return -1; - PyDict_DelItemString(dispatch_kwds, "parent"); - } + PyObject* align_obj = nullptr; + // #169 - NaN sentinel: distinguishes "user passed a center" from "default it". + float center_x = std::numeric_limits::quiet_NaN(); + float center_y = std::numeric_limits::quiet_NaN(); + float zoom = 1.0f; + int visible = 1; + float opacity = 1.0f; + int z_index = 0; + const char* name = nullptr; + float x = 0.0f, y = 0.0f, w = 0.0f, h = 0.0f; + int grid_w = 2, grid_h = 2; + float margin = 0.0f, horiz_margin = -1.0f, vert_margin = -1.0f; + + static const char* kwlist[] = { + "pos", "size", "grid_size", "texture", // positional + "grid", "fill_color", "on_click", "center_x", "center_y", "zoom", + "visible", "opacity", "z_index", "name", "x", "y", "w", "h", + "grid_w", "grid_h", "layers", "parent", + "align", "margin", "horiz_margin", "vert_margin", + nullptr + }; + + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|OOOOOOOfffifizffffiiOOOfff", + const_cast(kwlist), + &pos_obj, &size_obj, &grid_size_obj, &texture_obj, + &grid_obj, &fill_color_obj, &click_handler, + ¢er_x, ¢er_y, &zoom, + &visible, &opacity, &z_index, &name, + &x, &y, &w, &h, &grid_w, &grid_h, + &layers_obj, &parent_obj, + &align_obj, &margin, &horiz_margin, &vert_margin)) { + return -1; } - // Determine mode by checking for 'grid' kwarg - PyObject* grid_kwarg = nullptr; - if (dispatch_kwds) { - grid_kwarg = PyDict_GetItemString(dispatch_kwds, "grid"); // borrowed ref - } + const bool attaching = (grid_obj && grid_obj != Py_None); - bool explicit_view = (grid_kwarg && grid_kwarg != Py_None); - - int rc = explicit_view - ? init_explicit_view(self, args, dispatch_kwds) - : init_with_data(self, args, dispatch_kwds); - - if (dispatch_kwds != kwds) Py_DECREF(dispatch_kwds); - if (rc != 0) return rc; - - if (parent_obj) { - UIDRAWABLE_ATTACH_TO_PARENT(parent_obj, self); - } - return 0; -} - -int UIGridView::init_explicit_view(PyUIGridViewObject* self, PyObject* args, PyObject* kwds) -{ - { - // Mode 1: View of existing grid data - static const char* kwlist[] = {"grid", "pos", "size", "zoom", "fill_color", "name", nullptr}; - PyObject* grid_obj = nullptr; - PyObject* pos_obj = nullptr; - PyObject* size_obj = nullptr; - float zoom_val = 1.0f; - PyObject* fill_obj = nullptr; - const char* name_str = nullptr; - - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|OOOfOz", const_cast(kwlist), - &grid_obj, &pos_obj, &size_obj, &zoom_val, &fill_obj, &name_str)) { + // -------------------------------------------------------------------- + // The map: attach to an existing one, or build a new one. + // -------------------------------------------------------------------- + if (attaching) { + // A camera onto someone else's map cannot also specify that map's shape. + // Silently ignoring these would quietly hand back a view of a DIFFERENT + // size than asked for. + if (grid_size_obj || texture_obj || layers_obj) { + PyErr_SetString(PyExc_TypeError, + "grid= names an existing GridData; grid_size/texture/layers describe a " + "new one. Pass one or the other, not both."); return -1; } - self->data->zoom = zoom_val; - if (name_str) self->data->UIDrawable::name = std::string(name_str); + if (PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyGridDataType)) { + self->data->grid_data = ((PyGridDataObject*)grid_obj)->data; + } else if (PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridViewType)) { + // Another Grid/GridView: share the map it is looking at. + self->data->grid_data = ((PyUIGridViewObject*)grid_obj)->data->grid_data; + } else { + PyErr_SetString(PyExc_TypeError, "grid must be a GridData or a Grid"); + return -1; + } + if (!self->data->grid_data) { + PyErr_SetString(PyExc_ValueError, "grid has no data to view"); + return -1; + } + self->data->ptex = self->data->grid_data->getTexture(); + } else { + std::shared_ptr texture; + if (PyGridData::parse_grid_shape(grid_size_obj, texture_obj, + grid_w, grid_h, texture) < 0) { + return -1; + } + self->data->grid_data = std::make_shared(grid_w, grid_h, texture); + if (PyGridData::apply_layers_arg(self->data->grid_data, layers_obj, texture) < 0) { + return -1; + } + self->data->ptex = texture; + } - // Accept both internal _GridData and GridView (unified Grid) as grid source - if (grid_obj && grid_obj != Py_None) { - if (PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridType)) { - // Internal _GridData object - PyUIGridObject* pygrid = (PyUIGridObject*)grid_obj; - self->data->grid_data = std::shared_ptr( - pygrid->data, static_cast(pygrid->data.get())); - self->data->ptex = pygrid->data->getTexture(); - } else if (PyObject_IsInstance(grid_obj, (PyObject*)&mcrfpydef::PyUIGridViewType)) { - // Another GridView (unified Grid) - share its grid_data - PyUIGridViewObject* pyview = (PyUIGridViewObject*)grid_obj; - if (pyview->data->grid_data) { - self->data->grid_data = pyview->data->grid_data; - self->data->ptex = pyview->data->ptex; - } - } else { - PyErr_SetString(PyExc_TypeError, "grid must be a Grid object"); + auto& grid_data = self->data->grid_data; + + // -------------------------------------------------------------------- + // The camera: this view's own rendering state. + // -------------------------------------------------------------------- + if (pos_obj && pos_obj != Py_None) { + PyVectorObject* vec = PyVector::from_arg(pos_obj); + if (vec) { + x = vec->data.x; + y = vec->data.y; + Py_DECREF(vec); + } else { + PyErr_Clear(); + sf::Vector2f p = PyObject_to_sfVector2f(pos_obj); + if (PyErr_Occurred()) { + PyErr_SetString(PyExc_TypeError, "pos must be a tuple (x, y) or Vector"); return -1; } - } - - if (pos_obj && pos_obj != Py_None) { - sf::Vector2f pos = PyObject_to_sfVector2f(pos_obj); - if (PyErr_Occurred()) return -1; - self->data->position = pos; - self->data->box.setPosition(pos); - } - if (size_obj && size_obj != Py_None) { - sf::Vector2f size = PyObject_to_sfVector2f(size_obj); - if (PyErr_Occurred()) return -1; - self->data->box.setSize(size); - } - if (fill_obj && fill_obj != Py_None) { - self->data->fill_color = PyColor::fromPy(fill_obj); - if (PyErr_Occurred()) return -1; - } - - if (self->data->grid_data) { - self->data->center_camera(); - self->data->ensureRenderTextureSize(); - // #359 - Register this view so it receives markDirty/markCompositeDirty - // notifications (its own ancestor chain -- e.g. a Frame(use_render_texture= - // True) wrapping this view -- needs invalidating too, not just the - // creating view's). Does NOT disturb identity: primaryView() (used by - // UIEntity::get_grid) is views.front(), which is always the view that - // created this GridData via init_with_data, since init_explicit_view can - // only attach to grid_data that already exists. - self->data->grid_data->registerView(self->data); - } - - self->weakreflist = NULL; - - // Register in Python object cache - if (self->data->serial_number == 0) { - self->data->serial_number = PythonObjectCache::getInstance().assignSerial(); - PyObject* weakref = PyWeakref_NewRef((PyObject*)self, NULL); - if (weakref) { - PythonObjectCache::getInstance().registerObject(self->data->serial_number, weakref); - Py_DECREF(weakref); - } - } - self->data->is_python_subclass = (PyObject*)Py_TYPE(self) != (PyObject*)&mcrfpydef::PyUIGridViewType; - - return 0; - } -} - -int UIGridView::init_with_data(PyUIGridViewObject* self, PyObject* args, PyObject* kwds) -{ - // Create a temporary UIGrid using the user's kwargs. - // This reuses UIGrid::init's complex parsing for grid_size, texture, layers, etc. - - // Remove 'grid' key from kwds if present (e.g. grid=None) - PyObject* filtered_kwds = kwds ? PyDict_Copy(kwds) : PyDict_New(); - if (!filtered_kwds) return -1; - if (PyDict_DelItemString(filtered_kwds, "grid") < 0) { - PyErr_Clear(); // OK if "grid" wasn't in dict - } - - // Create UIGrid via Python type system, forwarding positional args - PyObject* grid_type = (PyObject*)&mcrfpydef::PyUIGridType; - PyObject* grid_py = PyObject_Call(grid_type, args, filtered_kwds); - Py_DECREF(filtered_kwds); - - if (!grid_py) return -1; - - PyUIGridObject* pygrid = (PyUIGridObject*)grid_py; - - // Take UIGrid data via aliasing shared_ptr - self->data->grid_data = std::shared_ptr( - pygrid->data, static_cast(pygrid->data.get())); - self->data->ptex = pygrid->data->getTexture(); - - // Copy rendering state from UIGrid to GridView - self->data->position = pygrid->data->position; - self->data->box.setPosition(pygrid->data->box.getPosition()); - self->data->box.setSize(pygrid->data->box.getSize()); - self->data->zoom = pygrid->data->zoom; - self->data->center_x = pygrid->data->center_x; - self->data->center_y = pygrid->data->center_y; - self->data->fill_color = sf::Color(pygrid->data->box.getFillColor()); - self->data->visible = pygrid->data->visible; - self->data->opacity = pygrid->data->opacity; - self->data->z_index = pygrid->data->z_index; - self->data->name = pygrid->data->name; - self->data->camera_rotation = pygrid->data->camera_rotation; - - // Copy alignment - self->data->align_type = pygrid->data->align_type; - self->data->align_margin = pygrid->data->align_margin; - self->data->align_horiz_margin = pygrid->data->align_horiz_margin; - self->data->align_vert_margin = pygrid->data->align_vert_margin; - - // Copy click callback if set - if (pygrid->data->click_callable) { - PyObject* cb = pygrid->data->click_callable->borrow(); - if (cb && cb != Py_None) { - self->data->click_register(cb); + x = p.x; + y = p.y; } } - // #359 - Register this view on the GridData (dirty-notification + identity) - self->data->grid_data->registerView(self->data); + if (size_obj && size_obj != Py_None) { + sf::Vector2f s = PyObject_to_sfVector2f(size_obj); + if (PyErr_Occurred()) { + PyErr_SetString(PyExc_TypeError, "size must be a tuple (w, h)"); + return -1; + } + w = s.x; + h = s.y; + } else if (w == 0.0f && h == 0.0f) { + // Default: show the whole map at 1:1. + w = grid_data->grid_w * static_cast(grid_data->cell_width()); + h = grid_data->grid_h * static_cast(grid_data->cell_height()); + } + + self->data->zoom = zoom; + self->data->position = sf::Vector2f(x, y); + self->data->box.setPosition(self->data->position); + self->data->box.setSize(sf::Vector2f(w, h)); + self->data->visible = visible; + self->data->opacity = opacity; + self->data->z_index = z_index; + if (name) self->data->UIDrawable::name = std::string(name); + + // #169 - default camera puts tile (0,0) at the widget's top-left. + if (std::isnan(center_x)) center_x = w / (2.0f * zoom); + if (std::isnan(center_y)) center_y = h / (2.0f * zoom); + self->data->center_x = center_x; + self->data->center_y = center_y; + + if (fill_color_obj && fill_color_obj != Py_None) { + self->data->fill_color = PyColor::fromPy(fill_color_obj); + if (PyErr_Occurred()) return -1; + } + + if (click_handler && click_handler != Py_None) { + if (!PyCallable_Check(click_handler)) { + PyErr_SetString(PyExc_TypeError, "on_click must be callable"); + return -1; + } + self->data->click_register(click_handler); + } + + UIDRAWABLE_PROCESS_ALIGNMENT(self->data, align_obj, margin, horiz_margin, vert_margin); self->data->ensureRenderTextureSize(); - Py_DECREF(grid_py); + // #359 - Register with the map so data-layer mutations invalidate THIS view's + // cache and push dirt up ITS ancestor chain. Registration order matters: the + // creating view is views.front(). + grid_data->registerView(self->data); + self->weakreflist = NULL; - // Register in Python object cache if (self->data->serial_number == 0) { self->data->serial_number = PythonObjectCache::getInstance().assignSerial(); PyObject* weakref = PyWeakref_NewRef((PyObject*)self, NULL); @@ -766,7 +754,12 @@ int UIGridView::init_with_data(PyUIGridViewObject* self, PyObject* args, PyObjec Py_DECREF(weakref); } } - self->data->is_python_subclass = (PyObject*)Py_TYPE(self) != (PyObject*)&mcrfpydef::PyUIGridViewType; + self->data->is_python_subclass = + (PyObject*)Py_TYPE(self) != (PyObject*)&mcrfpydef::PyUIGridViewType; + + if (parent_obj && parent_obj != Py_None) { + UIDRAWABLE_ATTACH_TO_PARENT(parent_obj, self); + } return 0; } @@ -774,7 +767,7 @@ int UIGridView::init_with_data(PyUIGridViewObject* self, PyObject* args, PyObjec PyObject* UIGridView::repr(PyUIGridViewObject* self) { std::ostringstream ss; - ss << "data->grid_data) { ss << " (" << self->data->grid_data->grid_w << "x" << self->data->grid_data->grid_h << ")"; } else { @@ -872,47 +865,19 @@ PyObject* UIGridView::get_grid(PyUIGridViewObject* self, void* closure) return self->data->cached_grid_wrapper; } - // grid_data is an aliasing shared_ptr into a UIGrid (GridData is a base of UIGrid). - // Reconstruct shared_ptr to return the proper Python wrapper. - auto grid_ptr = static_cast(self->data->grid_data.get()); - auto grid_as_uigrid = std::shared_ptr( - self->data->grid_data, grid_ptr); + // #361: build (or find) the map's one Python wrapper, then adopt it as this + // view's persistent cache so subsequent accesses hit the fast path above. + // The aliasing shared_ptr this used to reconstruct -- to recover the "full + // UIGrid" that every GridData was secretly a base subobject of -- is gone + // along with UIGrid itself. + PyObject* pyGrid = PyGridData::pyobject_for(self->data->grid_data); + if (!pyGrid || pyGrid == Py_None) return pyGrid; - // A wrapper may already exist (user holds grid.grid_data, another view cached - // it): honor the serial-number cache, then adopt it as this view's persistent - // wrapper so subsequent accesses hit the fast path above. - if (grid_ptr->serial_number != 0) { - PyObject* cached = PythonObjectCache::getInstance().lookup(grid_ptr->serial_number); - if (cached) { - // lookup() returns a new strong ref; keep it as the view's cache and - // hand a second ref to the caller. - self->data->cached_grid_wrapper = cached; - Py_INCREF(cached); - return cached; - } - } - - auto grid_type = &mcrfpydef::PyUIGridType; - auto pyGrid = (PyUIGridObject*)grid_type->tp_alloc(grid_type, 0); - if (!pyGrid) return PyErr_NoMemory(); - - pyGrid->data = grid_as_uigrid; - pyGrid->weakreflist = NULL; - - if (grid_ptr->serial_number == 0) { - grid_ptr->serial_number = PythonObjectCache::getInstance().assignSerial(); - } - PyObject* weakref = PyWeakref_NewRef((PyObject*)pyGrid, NULL); - if (weakref) { - PythonObjectCache::getInstance().registerObject(grid_ptr->serial_number, weakref); - Py_DECREF(weakref); - } - - // Hold one strong ref for the view's lifetime (#348 cache); return a second - // ref to the caller. - self->data->cached_grid_wrapper = (PyObject*)pyGrid; - Py_INCREF((PyObject*)pyGrid); - return (PyObject*)pyGrid; + // pyobject_for returns a strong ref; keep it as the view's cache and hand a + // second ref to the caller. + self->data->cached_grid_wrapper = pyGrid; + Py_INCREF(pyGrid); + return pyGrid; } int UIGridView::set_grid(PyUIGridViewObject* self, PyObject* value, void* closure) @@ -930,16 +895,16 @@ int UIGridView::set_grid(PyUIGridViewObject* self, PyObject* value, void* closur self->data->grid_data = nullptr; return 0; } - // Accept internal _GridData (UIGrid) objects - if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridType)) { - PyUIGridObject* pygrid = (PyUIGridObject*)value; - self->data->grid_data = std::shared_ptr( - pygrid->data, static_cast(pygrid->data.get())); + // A GridData: point this camera at that map. (#361: no aliasing cast -- the + // wrapper holds the GridData itself, not a UIGrid it was a base subobject of.) + if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyGridDataType)) { + PyGridDataObject* pygrid = (PyGridDataObject*)value; + self->data->grid_data = pygrid->data; self->data->ptex = pygrid->data->getTexture(); self->data->grid_data->registerView(self->data); return 0; } - // Accept GridView (unified Grid) objects - share their grid_data + // A Grid/GridView: share the map it is looking at. if (PyObject_IsInstance(value, (PyObject*)&mcrfpydef::PyUIGridViewType)) { PyUIGridViewObject* pyview = (PyUIGridViewObject*)value; if (pyview->data->grid_data) { @@ -954,7 +919,7 @@ int UIGridView::set_grid(PyUIGridViewObject* self, PyObject* value, void* closur self->data->grid_data = nullptr; return 0; } - PyErr_SetString(PyExc_TypeError, "grid must be a Grid object or None"); + PyErr_SetString(PyExc_TypeError, "grid_data must be a GridData, a Grid, or None"); return -1; } @@ -982,9 +947,77 @@ int UIGridView::set_zoom(PyUIGridViewObject* self, PyObject* value, void* closur double val = PyFloat_AsDouble(value); if (val == -1.0 && PyErr_Occurred()) return -1; self->data->zoom = static_cast(val); + self->data->markDirty(); return 0; } +// #361 - `size` and `center_camera()` were NEVER on the view. They resolved, via +// getattro delegation, to the internal UIGrid's copies -- the ghost camera nobody +// renders -- so `grid.size = (w, h)` and `grid.center_camera(...)` were SILENT +// NO-OPS on the widget the user was actually looking at. Deleting the ghost is +// what surfaced them. +PyObject* UIGridView::get_size(PyUIGridViewObject* self, void* closure) +{ + return PyVector(self->data->box.getSize()).pyObject(); +} + +int UIGridView::set_size(PyUIGridViewObject* self, PyObject* value, void* closure) +{ + float w, h; + PyVectorObject* vec = PyVector::from_arg(value); + if (vec) { + w = vec->data.x; + h = vec->data.y; + Py_DECREF(vec); + } else { + PyErr_Clear(); + if (!PyArg_ParseTuple(value, "ff", &w, &h)) { + PyErr_SetString(PyExc_TypeError, "size must be a Vector or tuple (w, h)"); + return -1; + } + } + self->data->resize(w, h); + return 0; +} + +PyObject* UIGridView::py_center_camera(PyUIGridViewObject* self, PyObject* args) +{ + PyObject* pos_arg = nullptr; + if (!PyArg_ParseTuple(args, "|O", &pos_arg)) return nullptr; + + if (pos_arg == nullptr || pos_arg == Py_None) { + self->data->center_camera(); + Py_RETURN_NONE; + } + + float tile_x, tile_y; + PyVectorObject* vec = PyVector::from_arg(pos_arg); + if (vec) { + tile_x = vec->data.x; + tile_y = vec->data.y; + Py_DECREF(vec); + } else { + PyErr_Clear(); + if (!PyTuple_Check(pos_arg) || PyTuple_Size(pos_arg) != 2) { + PyErr_SetString(PyExc_TypeError, + "center_camera() takes an optional (tile_x, tile_y) tuple or Vector"); + return nullptr; + } + PyObject* x_obj = PyTuple_GetItem(pos_arg, 0); + PyObject* y_obj = PyTuple_GetItem(pos_arg, 1); + if (!(PyFloat_Check(x_obj) || PyLong_Check(x_obj)) || + !(PyFloat_Check(y_obj) || PyLong_Check(y_obj))) { + PyErr_SetString(PyExc_TypeError, "tile coordinates must be numeric"); + return nullptr; + } + tile_x = PyFloat_Check(x_obj) ? PyFloat_AsDouble(x_obj) : (float)PyLong_AsLong(x_obj); + tile_y = PyFloat_Check(y_obj) ? PyFloat_AsDouble(y_obj) : (float)PyLong_AsLong(y_obj); + } + + self->data->center_camera(tile_x, tile_y); + Py_RETURN_NONE; +} + PyObject* UIGridView::get_fill_color(PyUIGridViewObject* self, void* closure) { auto type = &mcrfpydef::PyColorType; @@ -1004,7 +1037,7 @@ int UIGridView::set_fill_color(PyUIGridViewObject* self, PyObject* value, void* // Perspective (#355 fix): OWNED BY THE VIEW. The FOV overlay is drawn by // UIGridView::render, so the state it gates on must live here -- previously // `grid.perspective` fell through getattro to the internal _GridData and wrote -// UIGrid::perspective_enabled, which render() never read: the overlay was dead. +// PyGridData::perspective_enabled, which render() never read: the overlay was dead. // Per-view ownership is also the correct semantics for shared GridData (#359): // two views of one map can follow two different entities' FOV. // ========================================================================= @@ -1065,7 +1098,7 @@ int UIGridView::set_perspective_enabled(PyUIGridViewObject* self, PyObject* valu PyObject* UIGridView::get_texture(PyUIGridViewObject* self, void* closure) { // #318: return a Texture wrapper sharing the underlying shared_ptr, - // mirroring UIGrid::get_texture. None only when the view has no texture. + // mirroring PyGridData::get_texture. None only when the view has no texture. auto& texture = self->data->ptex; if (!texture) Py_RETURN_NONE; @@ -1495,15 +1528,10 @@ PyObject* UIGridView::subscript(PyUIGridViewObject* self, PyObject* key) return NULL; } - // Reconstruct shared_ptr from GridData via aliasing constructor - // (mirrors UIGridView::get_grid). - auto grid_ptr = static_cast(grid_data.get()); - auto grid_as_uigrid = std::shared_ptr(grid_data, grid_ptr); - auto type = &mcrfpydef::PyUIGridPointType; auto obj = (PyUIGridPointObject*)type->tp_alloc(type, 0); if (!obj) return NULL; - obj->grid = grid_as_uigrid; + obj->grid = grid_data; // #361: the GridPoint holds the map directly obj->x = x; obj->y = y; return (PyObject*)obj; @@ -1529,6 +1557,17 @@ typedef PyUIGridViewObject PyObjectType; // Methods and getsetters arrays PyMethodDef UIGridView_all_methods[] = { UIDRAWABLE_METHODS, + {"center_camera", (PyCFunction)UIGridView::py_center_camera, METH_VARARGS, + MCRF_METHOD(GridView, center_camera, + MCRF_SIG("(pos: tuple = None)", "None"), + MCRF_DESC("Point this view's camera at a tile, or at the middle of the map when " + "called with no argument.") + MCRF_ARGS_START + MCRF_ARG("pos", "(tile_x, tile_y) to center on. Offset by 0.5 to aim at a tile's " + "middle rather than its top-left corner.") + MCRF_NOTE("The camera belongs to the VIEW, not the map: two views of one GridData " + "pan independently.") + )}, {NULL} }; @@ -1561,6 +1600,9 @@ PyGetSetDef UIGridView::getsetters[] = { ), NULL}, {"center", (getter)UIGridView::get_center, (setter)UIGridView::set_center, MCRF_PROPERTY(center, "Camera center point in pixel coordinates (Vector)."), NULL}, + {"size", (getter)UIGridView::get_size, (setter)UIGridView::set_size, + MCRF_PROPERTY(size, "Size of the grid widget in pixels as (w, h) (Vector). This is the " + "viewport, not the map: the map's dimensions are grid_size."), NULL}, {"zoom", (getter)UIGridView::get_zoom, (setter)UIGridView::set_zoom, MCRF_PROPERTY(zoom, "Zoom level for rendering (float). Values greater than 1.0 magnify; less than 1.0 shrink."), NULL}, {"fill_color", (getter)UIGridView::get_fill_color, (setter)UIGridView::set_fill_color, diff --git a/src/UIGridView.h b/src/UIGridView.h index bbf9ed6..f545849 100644 --- a/src/UIGridView.h +++ b/src/UIGridView.h @@ -160,8 +160,8 @@ public: // Python API // ========================================================================= static int init(PyUIGridViewObject* self, PyObject* args, PyObject* kwds); - static int init_explicit_view(PyUIGridViewObject* self, PyObject* args, PyObject* kwds); - static int init_with_data(PyUIGridViewObject* self, PyObject* args, PyObject* kwds); + // #361: one init() for both modes -- Grid(grid_size=...) creates its own + // GridData, Grid(grid=data) attaches to an existing one. static PyObject* repr(PyUIGridViewObject* self); // #252 - Attribute delegation to underlying Grid @@ -177,6 +177,11 @@ public: static int set_center(PyUIGridViewObject* self, PyObject* value, void* closure); static PyObject* get_zoom(PyUIGridViewObject* self, void* closure); static int set_zoom(PyUIGridViewObject* self, PyObject* value, void* closure); + // #361 - `size` and `center_camera()` used to delegate to the internal UIGrid's + // ghost camera, making them silent no-ops on the widget being rendered. + static PyObject* get_size(PyUIGridViewObject* self, void* closure); + static int set_size(PyUIGridViewObject* self, PyObject* value, void* closure); + static PyObject* py_center_camera(PyUIGridViewObject* self, PyObject* args); static PyObject* get_fill_color(PyUIGridViewObject* self, void* closure); static int set_fill_color(PyUIGridViewObject* self, PyObject* value, void* closure); static PyObject* get_texture(PyUIGridViewObject* self, void* closure); @@ -220,7 +225,9 @@ namespace mcrfpydef { // Attribute access delegates to underlying Grid for data properties/methods. inline PyTypeObject PyUIGridViewType = { .ob_base = {.ob_base = {.ob_refcnt = 1, .ob_type = NULL}, .ob_size = 0}, - .tp_name = "mcrfpy.Grid", // #252: primary name is Grid + // #361: the canonical name is GridView -- it IS the camera/widget. "Grid" + // is bound to this same type object as an alias (see McRFPy_API.cpp). + .tp_name = "mcrfpy.GridView", .tp_basicsize = sizeof(PyUIGridViewObject), .tp_itemsize = 0, .tp_dealloc = (destructor)[](PyObject* self) @@ -232,7 +239,7 @@ namespace mcrfpydef { } // #359: Unregister from the GridData's view list before releasing // grid_data -- but only when this wrapper is the LAST owner of the - // view (#251 pattern, mirrors PyUIGridType). An ungated unregister + // view (#251 pattern, mirrors PyGridDataType). An ungated unregister // would sever the back-reference whenever ANY Python wrapper was // GC'd while the C++ view lived on (e.g. held by scene.children), // breaking entity.grid -> Grid identity and the #313 data-layer diff --git a/src/UILine.cpp b/src/UILine.cpp index 85d4307..3116965 100644 --- a/src/UILine.cpp +++ b/src/UILine.cpp @@ -8,7 +8,7 @@ #include "PyAlignment.h" #include "UIFrame.h" // parent= kwarg: Frame parent type #include "UICaption.h" // parent= kwarg: needed for ATTACH macro instantiation -#include "UIGrid.h" // parent= kwarg: Grid/GridView parent type +#include "PyGridData.h" // parent= kwarg: Grid/GridView parent type #include "PySceneObject.h" // parent= kwarg: Scene parent type #include diff --git a/src/UISprite.cpp b/src/UISprite.cpp index 5211b89..40811bc 100644 --- a/src/UISprite.cpp +++ b/src/UISprite.cpp @@ -4,7 +4,7 @@ #include "PythonObjectCache.h" #include "UIFrame.h" // #144: For snapshot= parameter #include "UICaption.h" // parent= kwarg: needed for ATTACH macro instantiation -#include "UIGrid.h" // parent= kwarg: Grid/GridView parent type +#include "PyGridData.h" // parent= kwarg: Grid/GridView parent type #include "PySceneObject.h" // parent= kwarg: Scene parent type #include "PyAlignment.h" #include "PyShader.h" // #106: Shader support diff --git a/src/UITestScene.cpp b/src/UITestScene.cpp index eb5ffe0..b4b08ae 100644 --- a/src/UITestScene.cpp +++ b/src/UITestScene.cpp @@ -104,10 +104,19 @@ UITestScene::UITestScene(GameEngine* g) : Scene(g) std::cout << "pointer to ui_elements now shows size=" << ui->size() << std::endl; */ - // UIGrid test: (in grid cells) ( in screen pixels ) - // constructor args: w h texture x y w h - auto e5 = std::make_shared(4, 4, ptex, sf::Vector2f(550, 150), sf::Vector2f(200, 200)); - e5->zoom=2.0; + // Grid test. #361: the map (GridData) and the camera onto it (UIGridView) are + // separate objects now -- only the view goes in the scene. + auto e5 = std::make_shared(4, 4, ptex); + auto e5_view = std::make_shared(); + e5_view->grid_data = e5; + e5_view->ptex = ptex; + e5_view->position = sf::Vector2f(550, 150); + e5_view->box.setPosition(e5_view->position); + e5_view->box.setSize(sf::Vector2f(200, 200)); + e5_view->zoom = 2.0; + e5_view->center_camera(); + e5_view->ensureRenderTextureSize(); + e5->registerView(e5_view); // #150 - GridPoint no longer has color/tilesprite properties // Use layers for visual rendering; GridPoint only has walkable/transparent @@ -116,7 +125,7 @@ UITestScene::UITestScene(GameEngine* g) : Scene(g) e5->setWalkable(0, 0, true); // #332 e5->setTransparent(0, 0, true); - ui_elements->push_back(e5); + ui_elements->push_back(e5_view); //UIEntity test: // asdf diff --git a/tests/regression/issue_313_entity_grid_data_test.py b/tests/regression/issue_313_entity_grid_data_test.py index b270dc9..6a1c926 100644 --- a/tests/regression/issue_313_entity_grid_data_test.py +++ b/tests/regression/issue_313_entity_grid_data_test.py @@ -7,8 +7,9 @@ # (c) entity pixel position (x/y/pos) is derived from the GRID's cell size, # NOT the entity's own texture -- setting a different-sized texture on the # entity must not move it -# (d) entity.grid returns the same Grid (GridView) object across step/FOV cycles -# (PythonObjectCache identity) +# (d) entity.grid returns the same GridData object across step/FOV cycles +# (PythonObjectCache identity). #361 changed WHAT it returns -- the map, not +# a view -- but the identity guarantee this test exists for is unchanged. # (e) find_path() and at() still work, and constructing their temporary internal # grid wrappers does not destroy the grid's cell callbacks (#251 guard) # (f) a GridPoint obtained from entity.at() outlives the entity and the grid @@ -79,10 +80,15 @@ def main(): "(c) pixel pos unchanged after setting a different-sized entity texture") # --- (d) entity.grid identity across a step/FOV cycle --- - check(entity.grid is grid, "(d) entity.grid is the user-created Grid object") + # #361: entity.grid is the GridData (the map), not the Grid (a camera onto it). + # An entity can be on a map with no view at all, or with several; "the grid an + # entity is in" is not a camera. It is still one stable object, which is what + # the PythonObjectCache identity guarantee here is about. + check(entity.grid is grid.grid_data, "(d) entity.grid is the map this Grid views") + check(isinstance(entity.grid, mcrfpy.GridData), "(d) entity.grid is a GridData") grid.compute_fov((2, 2), radius=5) grid.step(1) - check(entity.grid is grid, "(d) entity.grid identity survives step + compute_fov") + check(entity.grid is grid.grid_data, "(d) entity.grid identity survives step + compute_fov") # --- (e) find_path / at() work; cell callbacks survive temp grid wrappers --- grid.on_cell_click = lambda pos, btn, action: None @@ -131,18 +137,22 @@ def main(): except RuntimeError: check(True, "(g) uninitialized Entity texture set raises RuntimeError") - # --- (h) owning_view survives Python wrapper GC while the C++ view lives --- - # The canonical idiom: append the Grid to a scene, drop the Python - # reference. The data-layer dirty notifications and entity.grid -> Grid - # identity both depend on owning_view staying intact. + # --- (h) entity.grid survives GC of the view's Python wrapper --- + # The canonical idiom: append the Grid to a scene, drop the Python reference. + # The C++ view lives on in the scene graph; the entity's map must stay valid + # and identical. (#361: entity.grid is the GridData, so this no longer depends + # on a view existing at all -- but the wrapper-GC hazard is the same one.) scene = mcrfpy.Scene("issue313_ov") g2 = mcrfpy.Grid(grid_size=(4, 4), texture=tex16, pos=(0, 0), size=(64, 64)) e2 = mcrfpy.Entity(grid_pos=(1, 1), texture=tex16, grid=g2) + data2 = g2.grid_data scene.children.append(g2) del g2 gc.collect() - check(type(e2.grid).__name__ == "Grid", - "(h) entity.grid still returns Grid after wrapper GC (owning_view intact)") + check(e2.grid is data2, + "(h) entity.grid is the same GridData after the view wrapper is GC'd") + check(e2.grid.at(1, 1) is not None, + "(h) that GridData is still usable after the view wrapper is GC'd") # --- (f) GridPoint outlives entity + grid references --- entity.die() diff --git a/tests/regression/issue_359_shared_griddata_test.py b/tests/regression/issue_359_shared_griddata_test.py index 47ccce2..4a4af8d 100644 --- a/tests/regression/issue_359_shared_griddata_test.py +++ b/tests/regression/issue_359_shared_griddata_test.py @@ -30,12 +30,13 @@ cameras over one dataset): dead property is gone, not silently still None. Design note carried over from the fix: GridData::views is a *list*, not a -single pointer, specifically because N views can share one GridData. Index 0 -is guaranteed (by construction: a fresh GridData is only ever produced by -Grid()'s factory path, `init_with_data`; `init_explicit_view` can only ATTACH -to an already-existing GridData) to be the view that created the data, so -UIEntity.grid identity (test 2) stays deterministic even with secondary -views registered -- not an arbitrary pick from an unordered set. +single pointer, specifically because N views can share one GridData. + +#361 update: entity.grid no longer returns a view at all -- it returns the +GridData. The "which view is primary?" question that views.front() answered for +identity purposes is gone, because the answer was always arbitrary dressed up as +deterministic. The registry itself remains, and is still load-bearing for +dirty-notification fan-out (test 3). """ import sys import os @@ -95,18 +96,20 @@ def test_1_two_views_render_shared_mutations(): def test_2_entity_grid_identity(): - """entity.grid returns the SAME object as the Grid() that actually - created the data (GridData::views.front()), not the secondary view, not - None, and not a fresh throwaway wrapper -- even once a secondary view is - registered on the same GridData.""" + """entity.grid is the shared GridData -- one stable object, the same one both + views are looking at, and NOT either view (#361).""" print("(2) entity.grid identity with a secondary view registered...") grid_a = mcrfpy.Grid(grid_size=(5, 5)) - grid_b = mcrfpy.Grid(grid=grid_a, pos=(0, 0), size=(80, 80)) # noqa: F841 (keep alive) + grid_b = mcrfpy.Grid(grid=grid_a, pos=(0, 0), size=(80, 80)) e = mcrfpy.Entity((1, 1), grid=grid_a) - assert e.grid is grid_a, f"entity.grid identity broken: {e.grid!r} is not grid_a ({grid_a!r})" - assert e.grid is not grid_b, "entity.grid returned the secondary view instead of the creator" + data = grid_a.grid_data + assert grid_b.grid_data is data, "the two views do not share one GridData" + assert e.grid is data, f"entity.grid identity broken: {e.grid!r} is not {data!r}" + assert e.grid is e.grid, "entity.grid is not stable across reads" + assert e.grid is not grid_a and e.grid is not grid_b, \ + "entity.grid returned a view; it must return the map (#361)" print(" OK") diff --git a/tests/regression/issue_361_griddata_is_not_a_widget_test.py b/tests/regression/issue_361_griddata_is_not_a_widget_test.py new file mode 100644 index 0000000..67e1eb6 --- /dev/null +++ b/tests/regression/issue_361_griddata_is_not_a_widget_test.py @@ -0,0 +1,228 @@ +"""Regression test for #361 - GridData is a map, not a widget. + +Before this change `UIGrid` inherited BOTH UIDrawable and GridData, so every map +secretly carried a second camera and RenderTexture that nothing on screen +corresponded to. Three consequences, all tested here: + + 1. `scene.children.append(some_grid_data)` DREW THE MAP A SECOND TIME, through + that ghost camera, frozen at construction values. It must now raise TypeError. + + 2. Anything that wrote to the ghost camera was a silent no-op on the widget the + user was actually looking at. `Grid.center_camera(...)` and `Grid.size = ...` + both delegated to it and did nothing (case 4) -- that is not a hypothetical: + it was the behavior on master until this fix. + + 3. A GridData could never be independently heap-allocated (`GridData::markDirty` + did `static_cast(this)`), so a map with no view was inexpressible. + Now `mcrfpy.GridData(...)` is public and standalone: an offscreen level that + is still steppable, queryable and pathable (case 2). + +Also covers the accepted API break: `entity.grid` returns the GridData (the map), +not a view. An entity may be on a map with no view at all, or with several -- "the +grid an entity is in" simply is not a camera. +""" +import mcrfpy +from mcrfpy import automation +import sys, os, tempfile + +TMPDIR = tempfile.mkdtemp(prefix="mcrf361_") +_counter = 0 +_results = [] + + +def check(label, ok): + _results.append((label, bool(ok))) + print(" [%s] %s" % ("PASS" if ok else "FAIL", label)) + + +def shot(): + """Render a frame to PNG and return its bytes. Identical pixels -> identical + bytes; headless screenshots are synchronous (#153).""" + global _counter + path = os.path.join(TMPDIR, "s%d.png" % _counter) + _counter += 1 + automation.screenshot(path) + with open(path, "rb") as f: + return f.read() + + +def case_griddata_is_not_drawable(): + """A map has no position, no size, no camera, and cannot enter a scene graph.""" + data = mcrfpy.GridData(grid_size=(10, 10)) + scene = mcrfpy.Scene("t361_reject") + + try: + scene.children.append(data) + check("1a: appending a GridData to a scene raises TypeError", False) + except TypeError: + check("1a: appending a GridData to a scene raises TypeError", True) + + frame = mcrfpy.Frame(pos=(0, 0), size=(10, 10)) + try: + frame.children.append(data) + check("1b: appending a GridData to a Frame raises TypeError", False) + except TypeError: + check("1b: appending a GridData to a Frame raises TypeError", True) + + # The widget properties are gone, not merely unused: keeping them would mean + # keeping the ghost camera they wrote to. + for prop in ("x", "y", "w", "h", "pos", "size", "center", "center_x", "zoom", + "camera_rotation", "fill_color", "visible", "opacity", "z_index", + "on_click", "parent", "children"): + if hasattr(data, prop): + check("1c: GridData exposes no widget property (found %r)" % prop, False) + return + check("1c: GridData exposes no widget properties", True) + + check("1d: GridData is not a Drawable", not isinstance(data, mcrfpy.Drawable)) + + +def case_map_with_no_view(): + """A GridData with no view at all: mutable, steppable, queryable, pathable. + + This is what the old `static_cast(this)` in GridData::markDirty made + impossible -- a standalone GridData would have been undefined behavior on the + first cell write. + """ + data = mcrfpy.GridData(grid_size=(12, 12)) + check("2a: standalone GridData constructs", data.grid_w == 12 and data.grid_h == 12) + + for x in range(12): + for y in range(12): + data.at(x, y).walkable = True + data.at(x, y).transparent = True + check("2b: cells are writable with no view attached", data.at(5, 5).walkable) + + e = mcrfpy.Entity((1, 1), grid=data) + check("2c: an entity can live on a viewless map", len(data.entities) == 1) + check("2d: entity.grid is that map", e.grid is data) + + data.step(1) + check("2e: a viewless map can be stepped", True) + + data.compute_fov((5, 5), radius=4) + check("2f: a viewless map computes FOV", data.is_in_fov(5, 6)) + + path = data.find_path((0, 0), (11, 11)) + check("2g: a viewless map is pathable", path is not None and len(list(path)) > 0) + + +def case_two_views_one_map(): + """N cameras, one map: independent cameras, shared entities and cells.""" + data = mcrfpy.GridData(grid_size=(20, 20)) + main = mcrfpy.Grid(grid=data, pos=(0, 0), size=(200, 200)) + mini = mcrfpy.Grid(grid=data, pos=(220, 0), size=(100, 100)) + + check("3a: both views share one GridData", + main.grid_data is data and mini.grid_data is data) + + main.center_camera((5, 5)) + mini.center_camera((15, 15)) + check("3b: the two cameras pan independently", + main.center_x != mini.center_x and main.center_y != mini.center_y) + + main.zoom = 2.0 + check("3c: the two cameras zoom independently", mini.zoom == 1.0) + + mcrfpy.Entity((3, 3), grid=main) + check("3d: an entity added through one view is on the shared map", + len(main.entities) == 1 and len(mini.entities) == 1 and len(data.entities) == 1) + + data.at(4, 4).walkable = True + check("3e: a cell written on the map is seen through both views", + main.at(4, 4).walkable and mini.at(4, 4).walkable) + + +def case_grid_is_gridview(): + """mcrfpy.Grid IS mcrfpy.GridView -- one type object, two names, no subclassing.""" + check("4a: Grid is GridView (the same type object)", mcrfpy.Grid is mcrfpy.GridView) + + g = mcrfpy.Grid(grid_size=(8, 8), pos=(0, 0), size=(80, 80)) + check("4b: isinstance(Grid(...), GridView)", isinstance(g, mcrfpy.GridView)) + check("4c: Grid() creates its own GridData", + isinstance(g.grid_data, mcrfpy.GridData) and g.grid_data.grid_w == 8) + + # grid= names an existing map; grid_size= describes a new one. Asking for both + # is a contradiction, and silently ignoring one would hand back a view of a + # different map than the caller asked for. + try: + mcrfpy.Grid(grid=g.grid_data, grid_size=(4, 4)) + check("4d: Grid(grid=..., grid_size=...) raises TypeError", False) + except TypeError: + check("4d: Grid(grid=..., grid_size=...) raises TypeError", True) + + +def case_camera_writes_are_not_no_ops(): + """#361's smoking gun: center_camera() and size= used to write to the ghost. + + On master both of these silently did nothing to the rendered widget -- they + resolved, through attribute delegation, to the internal UIGrid's copy of the + camera, which no view reads. The assertions below fail on master. + """ + g = mcrfpy.Grid(grid_size=(10, 10), pos=(0, 0), size=(100, 100)) + + before = g.center_x + g.center_camera((5.0, 5.0)) + check("5a: center_camera() moves THIS view's camera", g.center_x != before) + + g.size = (300, 300) + check("5b: size= resizes THIS view's widget", + g.w == 300.0 and g.h == 300.0 and g.size.x == 300.0) + + +def case_no_ghost_render(): + """The ghost path is gone: only the view draws, and only where the view is. + + Constructing a second view of the same map must change the frame; destroying + the reference to a map must not (the view holds it alive). + """ + scene = mcrfpy.Scene("t361_render") + scene.activate() + + data = mcrfpy.GridData(grid_size=(6, 6)) + for x in range(6): + for y in range(6): + data.at(x, y).walkable = True + + view = mcrfpy.Grid(grid=data, pos=(10, 10), size=(96, 96), + fill_color=mcrfpy.Color(200, 30, 30)) + scene.children.append(view) + a = shot() + + # A second camera on the same map paints a second region of the screen. + view2 = mcrfpy.Grid(grid=data, pos=(120, 10), size=(96, 96), + fill_color=mcrfpy.Color(30, 200, 30)) + scene.children.append(view2) + b = shot() + check("6a: adding a second view of the same map changes the frame", a != b) + + # Mutating the shared map repaints BOTH views. + mcrfpy.Entity((2, 2), grid=data) + c = shot() + check("6b: mutating the shared map repaints the views", b != c) + + # Idle frames are stable -- the #351 early-out still holds. + d = shot() + check("6c: idle frames are byte-identical", c == d) + + +def run_tests(): + case_griddata_is_not_drawable() + case_map_with_no_view() + case_two_views_one_map() + case_grid_is_gridview() + case_camera_writes_are_not_no_ops() + case_no_ghost_render() + return all(ok for _, ok in _results) + + +if __name__ == "__main__": + try: + ok = run_tests() + print("PASS" if ok else "FAIL") + sys.exit(0 if ok else 1) + except Exception: + import traceback + traceback.print_exc() + print("FAIL") + sys.exit(1) diff --git a/tests/regression/issue_364_grid_children_on_view_test.py b/tests/regression/issue_364_grid_children_on_view_test.py index 2d4e1cc..dbd9827 100644 --- a/tests/regression/issue_364_grid_children_on_view_test.py +++ b/tests/regression/issue_364_grid_children_on_view_test.py @@ -55,8 +55,10 @@ def case_child_parent_is_the_view(): grid.children.append(bubble) check("1a: child.parent is the grid view", bubble.parent.name == "the_view") - check("1b: child.parent is a Grid, not a _GridData", - type(bubble.parent).__name__ == "Grid") + # #361: mcrfpy.Grid IS mcrfpy.GridView (one type object, two names), and the + # canonical tp_name is GridView. + check("1b: child.parent is a Grid, not a GridData", + isinstance(bubble.parent, mcrfpy.Grid)) def case_children_are_per_view_entities_are_shared(): @@ -87,11 +89,11 @@ def case_griddata_is_not_a_parent(): orphan = mcrfpy.Frame(pos=(0, 0), size=(10, 10)) try: orphan.parent = grid.grid_data - check("3a: assigning a _GridData as parent raises TypeError", False) + check("3a: assigning a GridData as parent raises TypeError", False) except TypeError: - check("3a: assigning a _GridData as parent raises TypeError", True) + check("3a: assigning a GridData as parent raises TypeError", True) - check("3b: _GridData exposes no children collection", + check("3b: GridData exposes no children collection", not hasattr(grid.grid_data, "children")) diff --git a/tests/snapshots/api_surface.golden.txt b/tests/snapshots/api_surface.golden.txt index 0070786..5d39226 100644 --- a/tests/snapshots/api_surface.golden.txt +++ b/tests/snapshots/api_surface.golden.txt @@ -244,7 +244,7 @@ submodule automation DONE = 0 TARGET = 2 -=== FROZEN TYPES (30) === +=== FROZEN TYPES (31) === [AStarPath] prop destination: Vector (ro) prop origin: Vector (ro) @@ -567,6 +567,7 @@ submodule automation prop rotate_with_camera: bool (rw) prop rotation: Any (rw) prop shader: Any (rw) + prop size: Vector (rw) prop texture: Texture | None (ro) prop uniforms: Any (ro) prop vert_margin: float (rw) @@ -577,9 +578,32 @@ submodule automation prop z_index: int (rw) prop zoom: float (rw) meth animate :: animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation + meth center_camera :: center_camera(pos: tuple = None) -> None meth move :: move(dx, dy) or (delta) -> None meth realign :: realign() -> None meth resize :: resize(width, height) or (size) -> None +[GridData] + prop entities: EntityCollection (ro) + prop fov: Any (rw) + prop fov_radius: int (rw) + prop grid_h: int (ro) + prop grid_size: Vector (ro) + prop grid_w: int (ro) + prop layers: tuple (ro) + prop texture: Texture | None (ro) + meth add_layer :: add_layer(layer: ColorLayer | TileLayer) -> ColorLayer | TileLayer + meth apply_ranges :: apply_ranges(source: HeightMap, ranges: list) -> GridData + meth apply_threshold :: apply_threshold(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None) -> GridData + meth at :: at(x: int, y: int) -> GridPoint + meth clear_dijkstra_maps :: clear_dijkstra_maps() -> None + meth compute_fov :: compute_fov(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC) -> None + meth entities_in_radius :: entities_in_radius(pos: tuple | Vector, radius: float) -> list + meth find_path :: find_path(start, end, diagonal_cost: float = 1.41, collide: str = None, heuristic = None, weight: float = 1.0) -> AStarPath | None + meth get_dijkstra_map :: get_dijkstra_map(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None) -> DijkstraMap + meth is_in_fov :: is_in_fov(x: int, y: int) -> bool + meth layer :: layer(name: str) -> ColorLayer | TileLayer | None + meth remove_layer :: remove_layer(name_or_layer: str | ColorLayer | TileLayer) -> None + meth step :: step(n: int = 1, turn_order: int = None) -> None [GridView] prop align: Any (rw) prop bounds: tuple (ro) @@ -614,6 +638,7 @@ submodule automation prop rotate_with_camera: bool (rw) prop rotation: Any (rw) prop shader: Any (rw) + prop size: Vector (rw) prop texture: Texture | None (ro) prop uniforms: Any (ro) prop vert_margin: float (rw) @@ -624,6 +649,7 @@ submodule automation prop z_index: int (rw) prop zoom: float (rw) meth animate :: animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation + meth center_camera :: center_camera(pos: tuple = None) -> None meth move :: move(dx, dy) or (delta) -> None meth realign :: realign() -> None meth resize :: resize(width, height) or (size) -> None @@ -1120,56 +1146,19 @@ submodule automation meth terrain_enum :: terrain_enum() -> IntEnum === INTERNAL TYPES (reached via live instances) === -[_GridData] - prop align: Any (rw) - prop bounds: tuple (ro) - prop camera_rotation: float (rw) - prop center: Vector (rw) - prop center_x: float (rw) - prop center_y: float (rw) +[GridData] prop entities: EntityCollection (ro) - prop fill_color: Color (rw) prop fov: Any (rw) prop fov_radius: int (rw) - prop global_bounds: tuple (ro) - prop global_position: Any (ro) prop grid_h: int (ro) - prop grid_pos: Vector (rw) prop grid_size: Vector (ro) prop grid_w: int (ro) - prop h: float (rw) - prop horiz_margin: float (rw) - prop hovered: Any (ro) prop layers: tuple (ro) - prop margin: float (rw) - prop name: str (rw) - prop on_click: Any (rw) - prop on_enter: Any (rw) - prop on_exit: Any (rw) - prop on_move: Any (rw) - prop opacity: Any (rw) - prop origin: Any (rw) - prop parent: Any (rw) - prop pos: Vector (rw) - prop rotate_with_camera: bool (rw) - prop rotation: Any (rw) - prop shader: Any (rw) - prop size: Vector (rw) prop texture: Texture | None (ro) - prop uniforms: Any (ro) - prop vert_margin: float (rw) - prop visible: bool (rw) - prop w: float (rw) - prop x: float (rw) - prop y: float (rw) - prop z_index: Any (rw) - prop zoom: float (rw) meth add_layer :: add_layer(layer: ColorLayer | TileLayer) -> ColorLayer | TileLayer - meth animate :: animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation - meth apply_ranges :: apply_ranges(source: HeightMap, ranges: list) -> Grid - meth apply_threshold :: apply_threshold(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None) -> Grid + meth apply_ranges :: apply_ranges(source: HeightMap, ranges: list) -> GridData + meth apply_threshold :: apply_threshold(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None) -> GridData meth at :: at(x: int, y: int) -> GridPoint - meth center_camera :: center_camera(pos: tuple = None) -> None meth clear_dijkstra_maps :: clear_dijkstra_maps() -> None meth compute_fov :: compute_fov(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC) -> None meth entities_in_radius :: entities_in_radius(pos: tuple | Vector, radius: float) -> list @@ -1177,10 +1166,7 @@ submodule automation meth get_dijkstra_map :: get_dijkstra_map(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None) -> DijkstraMap meth is_in_fov :: is_in_fov(x: int, y: int) -> bool meth layer :: layer(name: str) -> ColorLayer | TileLayer | None - meth move :: move(dx, dy) or (delta) -> None - meth realign :: realign() -> None meth remove_layer :: remove_layer(name_or_layer: str | ColorLayer | TileLayer) -> None - meth resize :: resize(width, height) or (size) -> None meth step :: step(n: int = 1, turn_order: int = None) -> None [GridPoint] prop entities: list (ro) @@ -1234,8 +1220,8 @@ func size :: size() -> Vector func tripleClick :: tripleClick(pos: tuple | list | Vector | None = None) -> None func typewrite :: typewrite(message: str, interval: float = 0.0) -> None -=== DELEGATION INTEGRITY (Grid instance -> _GridData) === - delegated-resolved: 61/61 +=== DELEGATION INTEGRITY (Grid instance -> GridData) === + delegated-resolved: 21/21 === WRITABILITY PROBES (#313-touched properties) === Entity.grid: writable diff --git a/tests/unit/api_surface_snapshot_test.py b/tests/unit/api_surface_snapshot_test.py index 5a4da5f..77b692e 100644 --- a/tests/unit/api_surface_snapshot_test.py +++ b/tests/unit/api_surface_snapshot_test.py @@ -13,7 +13,7 @@ Intentional re-baseline (after a deliberate, reviewed API change): Design notes (see docs/plan-313-314.md): * mcrfpy.Grid IS mcrfpy.GridView and delegates its real API to an internal - _GridData via tp_getattro -- that surface is INVISIBLE to dir(). We therefore + GridData via tp_getattro -- that surface is INVISIBLE to dir(). We therefore walk grid.grid_data explicitly AND probe delegation integrity on a live instance. * Singleton/constant VALUES are never captured (build/platform/object dependent); only their type name is recorded. @@ -60,7 +60,7 @@ def _internal_type_probes(): g = mcrfpy.Grid(grid_size=(3, 3)) gd = getattr(g, "grid_data", None) if gd is not None: - probes.append(("_GridData", type(gd))) + probes.append(("GridData", type(gd))) try: probes.append(("GridPoint", type(g.at(0, 0)))) except Exception: @@ -200,8 +200,8 @@ def enum_lines(cls): # Delegation + writability probes (catch breaks invisible to type introspection) # --------------------------------------------------------------------------- # def delegation_probe_lines(): - """Assert the GridView instance still resolves its delegated _GridData surface - via tp_getattro. A break here leaves the _GridData type unchanged (invisible to + """Assert the GridView instance still resolves its delegated GridData surface + via tp_getattro. A break here leaves the GridData type unchanged (invisible to the type snapshot) but breaks the user-facing Grid contract.""" lines = [] try: @@ -337,7 +337,7 @@ def build_snapshot(): out.append("func %s :: %s" % (n, first_doc_line(v.__doc__) or "")) out.append("") - out.append("=== DELEGATION INTEGRITY (Grid instance -> _GridData) ===") + out.append("=== DELEGATION INTEGRITY (Grid instance -> GridData) ===") out.extend(delegation_probe_lines()) out.append("") From 9d67e33370ed485195cdb2c451b183804b53bf12 Mon Sep 17 00:00:00 2001 From: John McCardle Date: Mon, 13 Jul 2026 07:40:20 -0400 Subject: [PATCH 11/11] fix(render): content invalidation propagates again; clear hover on focus loss closes #368 closes #367 #368 -- Frame(cache_subtree=True) silently froze its subtree's CONTENT. markContentDirty() gated its walk up the parent chain on (!was_dirty || !p->render_dirty). That is sound only if render_dirty is reliably cleared once a drawable has been drawn. It is not: clearDirty() had exactly one call site in the whole engine (UIGridView, added by #364 on this branch). UIFrame's non-render-texture path, UICaption, UISprite, UILine, UICircle and UIArc never cleared it, so render_dirty was a write-once latch -- true from an object's first mutation until it died. With the flag stuck true, was_dirty was always true AND the parent's render_dirty was always true, so the guard was always false and content invalidation propagated nowhere. A caching ancestor went on re-blitting a stale composite: text never updated, colours never changed, sprite indices never changed. Only movement survived, because x/y route through markCompositeDirty, whose walk was already unconditional. That asymmetry is why the bug read as intermittent rather than total, and it is why my original issue writeup got the shape wrong -- its repro's third step was a move, so it looked like the latch cleared. It does not. Measured on master: 4/4 recolours and 3/3 caption edits under a cache were ALL dropped, including the first. The fix makes markContentDirty's walk unconditional, matching markCompositeDirty. The alternative -- repair the guard by having every drawable clear the flag honestly -- buys a shorter walk at the price of an invariant that silently breaks the day someone adds a drawable and forgets. Not worth it here: parent chains are shallow, and this is the exact cost markCompositeDirty has always paid on every position change without anyone noticing. A/B on the changed path (200k content mutations, best of 3): depth 1 4 8 16 before 82ns 86ns 82ns 87ns <- flat because it did nothing after 76ns 114ns 175ns 295ns The old build's flatness IS the defect. Entity movement -- the actual hot path -- is unchanged (164ns/move either way), since it was already on the unconditional composite path. Crucible shows no regression (step_swarm 12.9 -> 10.7ms, entity_churn 36.3 -> 31.5ms, within noise). Regression test asserts every consecutive content mutation repaints through a cache at depths 1 and 5, AND that idle frames stay byte-identical -- without that last assertion, "mark everything dirty always" would pass and the cache would be worthless. #367 -- Losing window focus stranded hover exactly as a window-leave did (#363). An unfocused window is delivered no MouseMoved, so the hover walk never runs and whatever was hovered when focus left stays lit while the game sits in the background: on_exit/on_cell_exit never fire and hovered_cell keeps naming a cell the user is no longer pointing at. sf::Event::LostFocus was already produced by every backend -- SDL2Renderer even translates SDL_WINDOWEVENT_FOCUS_LOST into it -- and, like MouseLeft before #363, had nobody listening. Routed to the same PyScene::do_mouse_leave() that #363 added. Once unfocused the engine genuinely does not know where the pointer is, so "hovering nothing" is the only truthful state to hold; the next MouseMoved after focus returns restores it. automation.loseFocus() injects the event, via a new injectWindowEvent() rather than injectMouseEvent -- a focus event has no coordinates and no button, and should not borrow a signature that implies it does. api_surface golden re-baselined: +1 line. Co-Authored-By: Claude Opus 4.8 --- api/manifest.json | 2 +- src/GameEngine.cpp | 9 +- src/McRFPy_Automation.cpp | 30 +++ src/McRFPy_Automation.h | 4 + src/UIDrawable.cpp | 23 ++- ...issue_367_hover_exit_on_focus_loss_test.py | 139 ++++++++++++++ ...ue_368_cache_subtree_content_dirty_test.py | 176 ++++++++++++++++++ tests/snapshots/api_surface.golden.txt | 1 + 8 files changed, 379 insertions(+), 5 deletions(-) create mode 100644 tests/regression/issue_367_hover_exit_on_focus_loss_test.py create mode 100644 tests/regression/issue_368_cache_subtree_content_dirty_test.py diff --git a/api/manifest.json b/api/manifest.json index 22cab36..037f66c 100644 --- a/api/manifest.json +++ b/api/manifest.json @@ -1 +1 @@ -{"commit":"3e18c1f","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_camera":{"doc_sha":"00d37ccdedcd3a2e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"center_camera(pos: tuple = None) -> None"},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"cfff2bccd482c2ef","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridData":{"doc_sha":"793d86e4e51839f6","kind":"class","lifecycle":{"since":"0.2.8-dev"},"members":{"add_layer":{"doc_sha":"ad48373d656e6a88","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"add_layer(layer: ColorLayer | TileLayer) -> ColorLayer | TileLayer"},"apply_ranges":{"doc_sha":"f74ca906e65a4bec","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> GridData"},"apply_threshold":{"doc_sha":"823c3779c6610389","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"apply_threshold(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None) -> GridData"},"at":{"doc_sha":"0f12b1f70eaec14b","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"at(x: int, y: int) -> GridPoint"},"clear_dijkstra_maps":{"doc_sha":"d470811b59885b93","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"clear_dijkstra_maps() -> None"},"compute_fov":{"doc_sha":"2522197d48d43d98","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"compute_fov(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC) -> None"},"entities":{"doc_sha":"5c361e2150645749","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"entities_in_radius":{"doc_sha":"820857d7995c8fe6","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"entities_in_radius(pos: tuple | Vector, radius: float) -> list"},"find_path":{"doc_sha":"3de3f1a19ba24df8","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"find_path(start, end, diagonal_cost: float = 1.41, collide: str = None, heuristic = None, weight: float = 1.0) -> AStarPath | None"},"fov":{"doc_sha":"bb929647d575d246","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fov_radius":{"doc_sha":"bf76a3199e6d7f0b","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"get_dijkstra_map":{"doc_sha":"af44def04f5c942e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"get_dijkstra_map(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None) -> DijkstraMap"},"grid_h":{"doc_sha":"f96615d57a28b090","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"grid_size":{"doc_sha":"f1aff956f432c1fe","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"grid_w":{"doc_sha":"e2f7f55bad731ce6","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"is_in_fov":{"doc_sha":"3f871a007bbff04c","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"is_in_fov(x: int, y: int) -> bool"},"layer":{"doc_sha":"38d9c25b2b0b172b","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"layer(name: str) -> ColorLayer | TileLayer | None"},"layers":{"doc_sha":"9d6207bfc4909360","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"remove_layer":{"doc_sha":"7876426544d2ec0d","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"remove_layer(name_or_layer: str | ColorLayer | TileLayer) -> None"},"step":{"doc_sha":"38146d2fc84d70f3","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"step(n: int = 1, turn_order: int = None) -> None"},"texture":{"doc_sha":"a2911dd21b916bc0","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_camera":{"doc_sha":"00d37ccdedcd3a2e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"center_camera(pos: tuple = None) -> None"},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"cfff2bccd482c2ef","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} +{"commit":"c696b4e","dirty":true,"functions":{"bresenham":{"doc_sha":"ee2d0f7a54a664f5","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"bresenham(start, end, include_start=True, include_end=True) -> list[tuple[int, int]]"},"end_benchmark":{"doc_sha":"5d783c5dabb7a4e9","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"end_benchmark() -> str"},"exit":{"doc_sha":"7572d4d6b1a1c8a4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"exit() -> None"},"find":{"doc_sha":"364b95807edcf8b4","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find(name: str, scene: str = None) -> UIDrawable | None"},"find_all":{"doc_sha":"b4a278f16b172131","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"find_all(pattern: str, scene: str = None) -> list"},"get_metrics":{"doc_sha":"017f3b466a3911c8","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"get_metrics() -> dict"},"lock":{"doc_sha":"e42989cabc81d080","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"lock() -> _LockContext"},"log_benchmark":{"doc_sha":"4564bf7321366a0a","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"log_benchmark(message: str) -> None"},"set_dev_console":{"doc_sha":"940ed19ff4f5243f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_dev_console(enabled: bool) -> None"},"set_scale":{"doc_sha":"b565b441a326af48","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"set_scale(multiplier: float) -> None"},"start_benchmark":{"doc_sha":"783957f3517518fe","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"start_benchmark() -> None"},"step":{"doc_sha":"90dec8ed10ee644f","kind":"function","lifecycle":{"since":"0.2.8"},"signature":"step(dt: float = None) -> float"}},"objects":{"AStarPath":{"doc_sha":"60dd12bb4a54f3dd","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"destination":{"doc_sha":"62a81c7267ad9ed9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"c7dd130b8d4ef800","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"peek":{"doc_sha":"14054f10b4d9dda0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"peek() -> Vector"},"remaining":{"doc_sha":"c193adc4bbfa3564","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk":{"doc_sha":"3fb64b239109d301","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"walk() -> Vector"}}},"Alignment":{"doc_sha":"77d93d03c8994f84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Arc":{"doc_sha":"8323f4b7101509e9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"abf1643dda106bf8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"bdf932405b56c319","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end_angle":{"doc_sha":"74f9704909a3a23d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"f2ef657aaf8b6c68","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"6612fa35c43918e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"f9c2310b775f1e5a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start_angle":{"doc_sha":"6b91f175ebe5ecb4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"f8eba89682554e6d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"67dd517aa153c158","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"AutoRuleSet":{"doc_sha":"49ab716632a44f06","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"701b6f038cfd6809","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer, seed: int = 0) -> None"},"grid_size":{"doc_sha":"570f4c81acb781d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"group_count":{"doc_sha":"892fc283939b3e0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"4f5ca90860649b64","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"f8fff4e6e6488e3f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap, seed: int = 0) -> list[int]"},"rule_count":{"doc_sha":"9b9d5a7c1475dcfa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"terrain_enum":{"doc_sha":"eb365bf99bbcca37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"value_count":{"doc_sha":"3467d158dd5af073","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"values":{"doc_sha":"b3199e059fd1ca2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"BSP":{"doc_sha":"7e971e0542cf4006","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"adjacency":{"doc_sha":"9373aa85408486ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"9c41e7403f2a0b2f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"2e4ffd3360ac858e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> BSP"},"find":{"doc_sha":"fccfac484a2b889c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(pos: tuple[int, int] | list | Vector) -> BSPNode | None"},"get_leaf":{"doc_sha":"d8ba680ec2ad4fd1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_leaf(index: int) -> BSPNode"},"leaves":{"doc_sha":"439ec78ec02e6df8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"leaves() -> Iterator[BSPNode]"},"pos":{"doc_sha":"b8b27f4ad76e2870","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"root":{"doc_sha":"d1e3d9741dab383d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"621f11f9a37dd89d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height). Read-only."},"split_once":{"doc_sha":"0d7c0c33156bc4e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_once(horizontal: bool, position: int) -> BSP"},"split_recursive":{"doc_sha":"fa516b79833e5094","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"split_recursive(depth: int, min_size: tuple[int, int], max_ratio: float = 1.5, seed: int | None = None) -> BSP"},"to_heightmap":{"doc_sha":"a0f03cab7a0f2d1b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size: tuple[int, int] | None = None, select: str = 'leaves', shrink: int = 0, value: float = 1.0) -> HeightMap"},"traverse":{"doc_sha":"57da83e0f37686aa","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"traverse(order: Traversal = Traversal.LEVEL_ORDER) -> Iterator[BSPNode]"}}},"Behavior":{"doc_sha":"09206365e6c37ecc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Billboard":{"doc_sha":"38614d1d19942bab","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"facing":{"doc_sha":"f82e2d7d8087804a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"dc5ed39915ab896c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"phi":{"doc_sha":"1450c89fb5b47929","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"0d5fec7fd4701ea6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"c9d55c4579681854","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"170c20c841b586fc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"b6d846566b6ccf93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"theta":{"doc_sha":"c214ecbcb099228b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"adf8070be9a09eba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"CallableBinding":{"doc_sha":"711bf0f149ccae7a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"callable":{"doc_sha":"96d3d31a6b7c56d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"bc69c90e13475ae6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"8f7d9eb4f520c017","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Caption":{"doc_sha":"8cd46324baa46a0d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"af7ba90df95e4b79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font":{"doc_sha":"fbdafdb33921aa13","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"font_size":{"doc_sha":"7894149ec4efec6e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"79a7d48503e657d1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"25b029c86a618fee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ca1a98d700ff1888","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"6580b31092048bcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"388919803d270fd3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"44e4967e15212959","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"85abb564299b703d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"text":{"doc_sha":"41628142b287defe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"8472810bca891509","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Circle":{"doc_sha":"077981a1fbdfb6e3","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"d1e80ccd6bf706b9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"46be64336e296c50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"20bebfa7432ed339","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"b43e33c2d49a3565","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"0cc0684f26d8a660","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"3a340282000297e0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"20e9fd42a7ba4bb8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"3fbed883fee308fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"5f9d88ff075d2cfc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"radius":{"doc_sha":"00a41207192c55a8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Color":{"doc_sha":"f1f664405900332f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"a":{"doc_sha":"ef61630ad34f8e2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"b":{"doc_sha":"2e2e91e93833fdd0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_hex":{"doc_sha":"24d1ff553133bb7e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_hex(hex_string: str) -> Color"},"g":{"doc_sha":"716ced374bcc2dc4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lerp":{"doc_sha":"290e204f3538e406","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: Color, t: float) -> Color"},"r":{"doc_sha":"ef64cae6296f68cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_hex":{"doc_sha":"d0cf65b284158877","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_hex() -> str"}}},"ColorLayer":{"doc_sha":"f8a87b6184c9a9b6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_gradient":{"doc_sha":"20390111f0652ae0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_gradient(source: HeightMap, range: tuple, color_low: Color, color_high: Color) -> ColorLayer"},"apply_perspective":{"doc_sha":"a909e1b1c0373bc0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_perspective(entity: Entity, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"apply_ranges":{"doc_sha":"37fc5a26fda9cc0c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> ColorLayer"},"apply_threshold":{"doc_sha":"59cc9b72322cc677","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, color: Color) -> ColorLayer"},"at":{"doc_sha":"fef47313dcef9247","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> Color"},"clear_perspective":{"doc_sha":"fec237fe4cbda340","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_perspective() -> None"},"draw_fov":{"doc_sha":"ff965b12c888d092","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"draw_fov(source: tuple, radius: int | None = None, fov: FOV | None = None, visible: Color | None = None, discovered: Color | None = None, unknown: Color | None = None) -> None"},"edit":{"doc_sha":"b0edb9c8f4c1fe76","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"f6ff376fd71ae90b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(color: Color) -> None"},"fill_rect":{"doc_sha":"bc8b20da214aa37d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, color: Color) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"36801cc04606ee0b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, color: Color) -> None"},"update_perspective":{"doc_sha":"c9caac507fbc4921","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_perspective() -> None"},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"DijkstraMap":{"doc_sha":"822ccf5b086d37ec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"descent_step":{"doc_sha":"fd7b649f1f3eb586","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"descent_step(pos: Vector | tuple) -> Vector | None"},"distance":{"doc_sha":"92b40108bb47bf88","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance(pos: Vector | tuple) -> float | None"},"invert":{"doc_sha":"3e5ae145dafc2c1d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DijkstraMap"},"path_from":{"doc_sha":"3dcf638bff837f2d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_from(pos: Vector | tuple) -> AStarPath"},"root":{"doc_sha":"95824bac9c46ad83","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step_from":{"doc_sha":"ac9bc93f671d3936","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"step_from(pos: Vector | tuple) -> Vector | None"},"to_heightmap":{"doc_sha":"0ba542e6509b510b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(size=None, unreachable=-1.0) -> HeightMap"}}},"DiscreteMap":{"doc_sha":"4d6d00ffa3ac62a9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"1e5a5b83f555fa87","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_and":{"doc_sha":"1644af83b8699792","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_and(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_or":{"doc_sha":"c8262af2fdccdeeb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_or(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bitwise_xor":{"doc_sha":"01809471595bf8e7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bitwise_xor(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"bool":{"doc_sha":"a999f0f09edf7bf3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bool(condition: int | set | callable) -> DiscreteMap"},"clear":{"doc_sha":"b04d176e9c7bf9d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> DiscreteMap"},"copy_from":{"doc_sha":"efea5a0aa9a8d9c9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"count":{"doc_sha":"5e3303ddc3a9e3ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count(value: int) -> int"},"count_range":{"doc_sha":"ac4e0298919fd16e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_range(min_val: int, max_val: int) -> int"},"enum_type":{"doc_sha":"f27f1ad46e2d5afe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"7f358bdcc5c2c9f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: int, *, pos=None, size=None) -> DiscreteMap"},"from_bytes":{"doc_sha":"b1c09c737d43ffa9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, size: tuple[int, int], *, enum: type = None) -> DiscreteMap"},"from_heightmap":{"doc_sha":"0e89bb4262b19ea3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_heightmap(hmap: HeightMap, mapping: list[tuple[tuple[float,float], int]], *, enum=None) -> DiscreteMap"},"get":{"doc_sha":"a1097b27b43d6a27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> int | Enum"},"histogram":{"doc_sha":"b2d9df4f14aedd51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"histogram() -> dict[int, int]"},"invert":{"doc_sha":"0f52aecfe57ff499","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"invert() -> DiscreteMap"},"mask":{"doc_sha":"0d9628616f4592f4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mask() -> memoryview"},"max":{"doc_sha":"144265dd0da983a8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min":{"doc_sha":"ff90ceef60a45959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: DiscreteMap, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"min_max":{"doc_sha":"22018caaf1bdb60e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[int, int]"},"multiply":{"doc_sha":"430abcb2b647132f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(factor: float, *, pos=None, size=None) -> DiscreteMap"},"set":{"doc_sha":"8439c14e5785f7e4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x: int, y: int, value: int) -> None"},"size":{"doc_sha":"fc6c37c9d3916c5d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the map. Read-only."},"subtract":{"doc_sha":"aeae8042663b9973","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: DiscreteMap | int, *, pos=None, source_pos=None, size=None) -> DiscreteMap"},"to_bytes":{"doc_sha":"4d7c4b5939a546bd","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"to_heightmap":{"doc_sha":"b0744db8f889b5d9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_heightmap(mapping: dict[int, float] = None) -> HeightMap"}}},"Drawable":{"doc_sha":"bb28a8d677f24b33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"move":{"doc_sha":"4a8f9ca3692c6b58","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"980bdc9065fc077b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Easing":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Entity":{"doc_sha":"7231aaf2e3b107d0","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_label":{"doc_sha":"be06d30bbd5a41ca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_label(label: str) -> None"},"animate":{"doc_sha":"a06820cecef57a9a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"at":{"doc_sha":"b5775513388a1464","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x: int, y: int) -> GridPoint | None"},"behavior_type":{"doc_sha":"745936b7029480fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_pos":{"doc_sha":"f8feaba9f3652ca0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_x":{"doc_sha":"8bdc1199bfb15967","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_y":{"doc_sha":"8fd78a55ede4b259","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"default_behavior":{"doc_sha":"f0a1ea99426408dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"die":{"doc_sha":"1369fecbc5a1862a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"die() -> None"},"draw_pos":{"doc_sha":"2769bf67eec13406","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"1a672b91a00eb597","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(target, diagonal_cost: float = 1.41, collide: str = None) -> AStarPath | None"},"grid":{"doc_sha":"d02c7b8c3beb5662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"d2e9f06a9d9f0a3c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_x":{"doc_sha":"4108b9ec31aff2c0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_y":{"doc_sha":"26f7190f34a208b2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"has_label":{"doc_sha":"0e65dc586b3c8d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"has_label(label: str) -> bool"},"index":{"doc_sha":"74e24820bb380594","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"index() -> int"},"labels":{"doc_sha":"4e16ef3312d5b4e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"move_speed":{"doc_sha":"a3b3867a6d3b830a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"708f75f696069d69","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"6caae59e941bebf1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"path_to":{"doc_sha":"5b11e33c92caac2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x: int, y: int) -> list"},"perspective_map":{"doc_sha":"f61894673d8c27a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"172ff9a95e621eaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remove_label":{"doc_sha":"a4a541d7e9cf7275","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_label(label: str) -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"set_behavior":{"doc_sha":"328826510c72f049","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_behavior(type, waypoints=None, turns: int = 0, path=None, pathfinder=None) -> None"},"shader":{"doc_sha":"04503c544358f827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sight_radius":{"doc_sha":"4a9ec6c3788b093a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_grid":{"doc_sha":"a5ff2c3e5190bc41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"ca285ed1c6f460df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset":{"doc_sha":"a92dae4a2555fa7b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_x":{"doc_sha":"7ba6504a9bbbf681","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_offset_y":{"doc_sha":"24d4546e182bb2c8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"step":{"doc_sha":"8877861183e50020","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target_label":{"doc_sha":"85acb11a7e713a41","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"1588a0d4779fd069","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"7f2ef7cb6d425730","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_size":{"doc_sha":"1a647ababfde2daa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"5d72ddf874e9db54","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turn_order":{"doc_sha":"eba665bc9c7e75ee","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"d302457c5aaa495e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"update_visibility":{"doc_sha":"d096cd998ed99b49","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility() -> None"},"visible":{"doc_sha":"2bca3a265b44b270","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible_entities":{"doc_sha":"2482fbbecbfac7ea","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"visible_entities(fov=None, radius: int | None = None) -> list[Entity]"},"x":{"doc_sha":"4ba6a677ea35e7ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"52b85f7dc8a7cb27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Entity3D":{"doc_sha":"0daee46cf6343e9c","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"anim_clip":{"doc_sha":"f69294fc08fc1d6c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_frame":{"doc_sha":"41bdd9b6f4407d16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_loop":{"doc_sha":"b267a372c1aef2cd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_paused":{"doc_sha":"e100f0be03f09b09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_speed":{"doc_sha":"33c581c9533b5169","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"anim_time":{"doc_sha":"6b811c83dd2a2184","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"fcf44af080ce16a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property, target, duration, easing=None, delta=False, callback=None, conflict_mode=None)"},"at":{"doc_sha":"69d6101c79794f90","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> dict"},"auto_animate":{"doc_sha":"867ca7a9c2b5a4ab","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_path":{"doc_sha":"989bb0a431b58e17","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_path()"},"color":{"doc_sha":"ea9ab21659b6e392","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow_path":{"doc_sha":"f514b7092f561550","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow_path(path)"},"grid_pos":{"doc_sha":"f20411521f420193","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"idle_clip":{"doc_sha":"855c97611053652c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_moving":{"doc_sha":"b31c1090228993e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"model":{"doc_sha":"26ae36cf867d07e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"acea3a6577d65fbc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_anim_complete":{"doc_sha":"5cc47894576d983d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Callback(entity, clip_name) when non-looping animation ends."},"path_to":{"doc_sha":"d6fe3936cc8e2d84","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"path_to(x, z) or path_to(pos=(x, z)) -> list"},"pos":{"doc_sha":"2488492030e9df40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"b06782214d92e3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"teleport":{"doc_sha":"d53364830cdc737a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"teleport(x, z) or teleport(pos=(x, z))"},"update_visibility":{"doc_sha":"61886fb70daedf6b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"update_visibility()"},"viewport":{"doc_sha":"e9f9154f00b47f9a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bc1ae0f4c6b5cb11","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"walk_clip":{"doc_sha":"c95d11b4e1901f28","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"world_pos":{"doc_sha":"bcc6673be9243dd5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"EntityCollection3D":{"doc_sha":"55864ac691527ca9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"append":{"doc_sha":"43922f93aff7d723","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"append(entity)"},"clear":{"doc_sha":"f44ea077b10186d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear()"},"extend":{"doc_sha":"4fd2e7e83437c7ae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"extend(iterable)"},"find":{"doc_sha":"e4182a3a3317aaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find(name) -> Entity3D or None"},"pop":{"doc_sha":"cbcc90e2a433f277","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pop(index=-1) -> Entity3D"},"remove":{"doc_sha":"b2f8fb276b91ec1e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove(entity)"}}},"EntityCollection3DIter":{"doc_sha":"d71ec48b224bfacc","kind":"class","lifecycle":{"since":"0.2.8"},"members":{}},"FOV":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Font":{"doc_sha":"245b4e9b0ca66fc9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"family":{"doc_sha":"0cf26d3038432764","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"efc970576a584cde","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Frame":{"doc_sha":"4d53c3cb9e9e4611","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cache_subtree":{"doc_sha":"0b8d1175192c1ce2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"b2cf42011b86727c","kind":"property","lifecycle":{"modified":{"commit":"4c0953c","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"clip_children":{"doc_sha":"d12b2c4d1d2bb6cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill_color":{"doc_sha":"8cfbe5aa6dd6da27","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"2f5b05882c4ad39f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"9c8707ad589e5d8a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"ced8010da828cc93","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline":{"doc_sha":"c07b6dec9da5b9ea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"outline_color":{"doc_sha":"cd98fcaf39f0bc56","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"bd51299002a099c5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"4ed17c625f2289e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"fabaa45fd789c7fd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Grid":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_camera":{"doc_sha":"00d37ccdedcd3a2e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"center_camera(pos: tuple = None) -> None"},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"cfff2bccd482c2ef","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"GridData":{"doc_sha":"793d86e4e51839f6","kind":"class","lifecycle":{"since":"0.2.8-dev"},"members":{"add_layer":{"doc_sha":"ad48373d656e6a88","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"add_layer(layer: ColorLayer | TileLayer) -> ColorLayer | TileLayer"},"apply_ranges":{"doc_sha":"f74ca906e65a4bec","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> GridData"},"apply_threshold":{"doc_sha":"823c3779c6610389","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"apply_threshold(source: HeightMap, range: tuple, walkable: bool = None, transparent: bool = None) -> GridData"},"at":{"doc_sha":"0f12b1f70eaec14b","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"at(x: int, y: int) -> GridPoint"},"clear_dijkstra_maps":{"doc_sha":"d470811b59885b93","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"clear_dijkstra_maps() -> None"},"compute_fov":{"doc_sha":"2522197d48d43d98","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"compute_fov(pos, radius: int = 0, light_walls: bool = True, algorithm: FOV | int = FOV.BASIC) -> None"},"entities":{"doc_sha":"5c361e2150645749","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"entities_in_radius":{"doc_sha":"820857d7995c8fe6","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"entities_in_radius(pos: tuple | Vector, radius: float) -> list"},"find_path":{"doc_sha":"3de3f1a19ba24df8","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"find_path(start, end, diagonal_cost: float = 1.41, collide: str = None, heuristic = None, weight: float = 1.0) -> AStarPath | None"},"fov":{"doc_sha":"bb929647d575d246","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fov_radius":{"doc_sha":"bf76a3199e6d7f0b","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"get_dijkstra_map":{"doc_sha":"af44def04f5c942e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"get_dijkstra_map(root=None, diagonal_cost: float = 1.41, collide: str = None, roots=None) -> DijkstraMap"},"grid_h":{"doc_sha":"f96615d57a28b090","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"grid_size":{"doc_sha":"f1aff956f432c1fe","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"grid_w":{"doc_sha":"e2f7f55bad731ce6","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"is_in_fov":{"doc_sha":"3f871a007bbff04c","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"is_in_fov(x: int, y: int) -> bool"},"layer":{"doc_sha":"38d9c25b2b0b172b","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"layer(name: str) -> ColorLayer | TileLayer | None"},"layers":{"doc_sha":"9d6207bfc4909360","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"remove_layer":{"doc_sha":"7876426544d2ec0d","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"remove_layer(name_or_layer: str | ColorLayer | TileLayer) -> None"},"step":{"doc_sha":"38146d2fc84d70f3","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"step(n: int = 1, turn_order: int = None) -> None"},"texture":{"doc_sha":"a2911dd21b916bc0","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""}}},"GridView":{"doc_sha":"f88e43e992d43a86","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_rotation":{"doc_sha":"bc2cd502f52817e9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center":{"doc_sha":"913ef5c36eaf9635","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_camera":{"doc_sha":"00d37ccdedcd3a2e","kind":"method","lifecycle":{"since":"0.2.8-dev"},"signature":"center_camera(pos: tuple = None) -> None"},"center_x":{"doc_sha":"fbb0ff08116f3c80","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"center_y":{"doc_sha":"1bda27633025fb12","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"9566d92d5619ee21","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"fill_color":{"doc_sha":"f26fb5da3de1789a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_data":{"doc_sha":"fdf0084b8456fd45","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"bd5a06618a50efad","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered_cell":{"doc_sha":"85c87c8aa013d0c4","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_cell_click":{"doc_sha":"ada11ea920c71f29","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_enter":{"doc_sha":"6ae7882d4f14f183","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_cell_exit":{"doc_sha":"729303b3a70b2a36","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"on_click":{"doc_sha":"4e33bd16b2dee20a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"perspective":{"doc_sha":"8854eef3677c4423","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"perspective_enabled":{"doc_sha":"abd2223cd551e1ca","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"pos":{"doc_sha":"7f556820c51df2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"cfff2bccd482c2ef","kind":"property","lifecycle":{"since":"0.2.8-dev"},"signature":""},"texture":{"doc_sha":"b9bfb54e5571bfc9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"w":{"doc_sha":"ec55a5a578c4d993","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"2449b0f04153753c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"7958c0625706f2d2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"0cb3df5278d2658b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"zoom":{"doc_sha":"e56c4b61e0303f09","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"HeightMap":{"doc_sha":"e5f86ba9c89f2a5a","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add":{"doc_sha":"d420dd760d7228af","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"add_bsp":{"doc_sha":"b70f06e432c91a7a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"add_constant":{"doc_sha":"f382eb3f3e667cb4","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_constant(value: float, *, pos=None, size=None) -> HeightMap"},"add_hill":{"doc_sha":"1ad2406960701682","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_hill(center, radius: float, height: float) -> HeightMap"},"add_noise":{"doc_sha":"3c3c15026ff43959","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"add_voronoi":{"doc_sha":"b689af51f6867b78","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voronoi(num_points: int, coefficients: tuple = (1.0, -0.5), seed: int = None) -> HeightMap"},"clamp":{"doc_sha":"60c08680fb281402","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clamp(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"clear":{"doc_sha":"2297d98f231b6b7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> HeightMap"},"copy_from":{"doc_sha":"80d64f3f6e76f8a7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_from(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"count_in_range":{"doc_sha":"7af3d60f28d614b6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_in_range(range: tuple[float, float]) -> int"},"dig_bezier":{"doc_sha":"f3327d6ddc165496","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_bezier(points: tuple, start_radius: float, end_radius: float, start_height: float, end_height: float) -> HeightMap"},"dig_hill":{"doc_sha":"be55e494c4e50c3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dig_hill(center, radius: float, target_height: float) -> HeightMap"},"fill":{"doc_sha":"4e998a0b1d85c4f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(value: float, *, pos=None, size=None) -> HeightMap"},"get":{"doc_sha":"f55fcc655d43dc50","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y) or (pos) -> float"},"get_interpolated":{"doc_sha":"5c3e0267d9cbeda2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_interpolated(x, y) or (pos) -> float"},"get_normal":{"doc_sha":"6d4212add4e533f2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_normal(x, y, water_level=0.0) or (pos, water_level=0.0) -> tuple[float, float, float]"},"get_slope":{"doc_sha":"4876967f738c7d67","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_slope(x, y) or (pos) -> float"},"inverse":{"doc_sha":"f6c4de6cd6a9ca0f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"inverse() -> HeightMap"},"lerp":{"doc_sha":"967cacc180df98bc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"lerp(other: HeightMap, t: float, *, pos=None, source_pos=None, size=None) -> HeightMap"},"max":{"doc_sha":"141515f8b1f23390","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"max(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"mid_point_displacement":{"doc_sha":"bfcbfe796d73410f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"mid_point_displacement(roughness: float = 0.5, seed: int = None) -> HeightMap"},"min":{"doc_sha":"c51e934ea5047d91","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"min_max":{"doc_sha":"4e0b3cb7472a7cfe","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"min_max() -> tuple[float, float]"},"multiply":{"doc_sha":"83d2fcea22463d18","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"multiply_bsp":{"doc_sha":"21f401c651344592","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_bsp(bsp: BSP, *, pos=None, select: str = 'leaves', nodes: list = None, shrink: int = 0, value: float = 1.0) -> HeightMap"},"multiply_noise":{"doc_sha":"177d1d06a401af54","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"multiply_noise(source: NoiseSource, world_origin: tuple = (0.0, 0.0), world_size: tuple = None, mode: str = 'fbm', octaves: int = 4, scale: float = 1.0) -> HeightMap"},"normalize":{"doc_sha":"93ce05bf80d158ed","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize(min: float = 0.0, max: float = 1.0, *, pos=None, size=None) -> HeightMap"},"rain_erosion":{"doc_sha":"4dbe6bd42d9f6e5b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rain_erosion(drops: int, erosion: float = 0.1, sedimentation: float = 0.05, seed: int = None) -> HeightMap"},"scale":{"doc_sha":"c85d9324b84c43ff","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"scale(factor: float, *, pos=None, size=None) -> HeightMap"},"size":{"doc_sha":"31846e24f4028b35","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height) of the heightmap. Read-only."},"smooth":{"doc_sha":"243be30aa73da43b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"smooth(iterations: int = 1) -> HeightMap"},"sparse_kernel":{"doc_sha":"e3b28d2c3913ac74","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel(weights: dict[tuple[int, int], float]) -> HeightMap"},"sparse_kernel_from":{"doc_sha":"ebeed84050ee0b2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sparse_kernel_from(source: HeightMap, weights: dict[tuple[int, int], float]) -> None"},"subtract":{"doc_sha":"8e209f74aaad794d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"subtract(other: HeightMap, *, pos=None, source_pos=None, size=None) -> HeightMap"},"threshold":{"doc_sha":"946f6a1fb850decb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold(range: tuple[float, float]) -> HeightMap"},"threshold_binary":{"doc_sha":"6ebe7bd7cbc112c2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"threshold_binary(range: tuple[float, float], value: float = 1.0) -> HeightMap"}}},"Heuristic":{"doc_sha":"7582db951ab67fc5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"InputState":{"doc_sha":"c7b7558edda29fea","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Key":{"doc_sha":"bc4feb60367e4be7","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Keyboard":{"doc_sha":"afbde6bcf7bfe1c6","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"alt":{"doc_sha":"051cb7dbc470d328","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ctrl":{"doc_sha":"c062912b0b816bd2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shift":{"doc_sha":"614beb0d432c2ec0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"system":{"doc_sha":"2292efb47472f5e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"LdtkProject":{"doc_sha":"d80a5fdda811cb33","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"enums":{"doc_sha":"5697f9e75980e2be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"level":{"doc_sha":"33b80035be788d03","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"level(name: str) -> dict"},"level_names":{"doc_sha":"9479f6c2bd85608d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"ruleset":{"doc_sha":"ce72d154e5dd391c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"ruleset(name: str) -> AutoRuleSet"},"ruleset_names":{"doc_sha":"28983e9702e0dc81","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"30eabe3003acb244","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(name: str) -> TileSetFile"},"tileset_names":{"doc_sha":"77a45b51f49743ef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"version":{"doc_sha":"e6d3d49ad9edfad8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Line":{"doc_sha":"8d778faa93b5d0d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"color":{"doc_sha":"f7aca0b82eaae97e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"end":{"doc_sha":"cc14ff1baa1b61fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"feeb7cb507a4692d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"49cecfb458b010a1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"733a48ea3a730e60","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"start":{"doc_sha":"817049419558ea17","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"thickness":{"doc_sha":"b6c7f3e979028709","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"cecb3704206d35f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Model3D":{"doc_sha":"be7fb5003ed48d84","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"animation_clips":{"doc_sha":"0d15ad9839919fe5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bone_count":{"doc_sha":"6e389fb2496946bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"bounds":{"doc_sha":"4ddfb8f6ae5a8928","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cube":{"doc_sha":"b49160efa8b0f71e","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"cube(size=1.0) -> Model3D"},"has_skeleton":{"doc_sha":"4e9ac073dac101b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"mesh_count":{"doc_sha":"49f8fe0ece668d77","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"b577d22f9a18de0c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"plane":{"doc_sha":"5e31b94e295b4429","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"plane(width=1.0, depth=1.0, segments=1) -> Model3D"},"sphere":{"doc_sha":"b385d8aaf0efd485","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sphere(radius=0.5, segments=16, rings=12) -> Model3D"},"triangle_count":{"doc_sha":"b67c98fac8ffc8dd","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vertex_count":{"doc_sha":"8b76e70b26a820df","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Mouse":{"doc_sha":"e64f561c8a08bdec","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"grabbed":{"doc_sha":"3da420bb9cac434f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"left":{"doc_sha":"a4c7b98babc093cb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"middle":{"doc_sha":"1306b1240c6f64e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"2ecba0a68d64976a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"right":{"doc_sha":"08d5534c1c034b39","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"834527eb5579f3e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"c142f98ee94bf3f7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"5095db9e9e163e92","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"MouseButton":{"doc_sha":"a5a7584949d18f01","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Music":{"doc_sha":"e13e6ad378ec0e91","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"duration":{"doc_sha":"25607c5fa852d501","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a165a91f8ff771f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"4eb6d242151147dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"play":{"doc_sha":"f724039e0cdb2847","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"playing":{"doc_sha":"4451d007747fa3b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"position":{"doc_sha":"608a5f6d4ed927bc","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"ee5d7818bae0a255","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"NoiseSource":{"doc_sha":"3bfa3b53984c85cb","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"algorithm":{"doc_sha":"ba813d6c022f15f0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"dimensions":{"doc_sha":"f534d20928d8d67a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fbm":{"doc_sha":"d13c8670fc68b9df","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fbm(pos: tuple[float, ...], octaves: int = 4) -> float"},"get":{"doc_sha":"3d7776fffd7a0a39","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(pos: tuple[float, ...]) -> float"},"hurst":{"doc_sha":"11682e6dc42f2417","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"lacunarity":{"doc_sha":"4d07f7079f3938de","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample":{"doc_sha":"63fd0e680000d0f0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sample(size: tuple[int, int], world_origin: tuple[float, float] = (0.0, 0.0), world_size: tuple[float, float] = None, mode: str = 'fbm', octaves: int = 4) -> HeightMap"},"seed":{"doc_sha":"17bc1e90a8ce6b23","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"turbulence":{"doc_sha":"800c841f913b3780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"turbulence(pos: tuple[float, ...], octaves: int = 4) -> float"}}},"Perspective":{"doc_sha":"e1c8553ea2a32a40","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"PropertyBinding":{"doc_sha":"a23eb43edd46bb66","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"is_valid":{"doc_sha":"40ada14485c362a7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"property":{"doc_sha":"0dad06f4e661db2d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"target":{"doc_sha":"3b15e1922fd910c9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"value":{"doc_sha":"80d28b4e329837d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Scene":{"doc_sha":"a156c42d77b20a3e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"activate":{"doc_sha":"54ae3cd3cf652660","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"activate(transition: Transition = None, duration: float = None) -> None"},"active":{"doc_sha":"a59f70d3c12a7cfe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"children":{"doc_sha":"f21fb480dac856b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"7feed093cdf9334a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_key":{"doc_sha":"40ece618402a45f3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"9e60a4ae9bdb493b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"50e29b0dd34a76d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"eef1e2dce9ee8894","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"register":{"doc_sha":"7603337801a7a498","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"register() -> None"},"registered":{"doc_sha":"d9ff54f488ed5b87","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"unregister":{"doc_sha":"fda6be9891d1f502","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"unregister() -> None"},"visible":{"doc_sha":"a7f321f4013dfb9b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Shader":{"doc_sha":"aded56cb37cba9d8","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"dynamic":{"doc_sha":"43d8bc587c3997e3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_valid":{"doc_sha":"fcdf95eedfa8479e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set_uniform":{"doc_sha":"bdaf877e5bc28f21","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_uniform(name: str, value: float|tuple) -> None"},"source":{"doc_sha":"dbd462698aadf450","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Sound":{"doc_sha":"8f31cca1781580d5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"buffer":{"doc_sha":"c79f4e433d4300ac","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"duration":{"doc_sha":"48daac900b6eaf36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"loop":{"doc_sha":"a624dff0e72a5337","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"005627aca21692d3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"pitch":{"doc_sha":"80b38bfc202b4291","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"play":{"doc_sha":"ae090ee8c0320797","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play() -> None"},"play_varied":{"doc_sha":"fd9b5cd6db3cb1cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"play_varied(pitch_range: float = 0.1, volume_range: float = 3.0) -> None"},"playing":{"doc_sha":"8a0c491fa38061d5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"1736ca7393d96c48","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"stop":{"doc_sha":"f3289bbb98a4da1f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"volume":{"doc_sha":"749fc9d89252cb0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"SoundBuffer":{"doc_sha":"426618cde68541be","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"bit_crush":{"doc_sha":"66ae55272fd9d182","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"bit_crush(bits: int, rate_divisor: int) -> SoundBuffer"},"channels":{"doc_sha":"f3948c1ceb5d7aec","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"concat":{"doc_sha":"7ee10bfe76aae5e2","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"concat(buffers: list[SoundBuffer], overlap: float = 0.0) -> SoundBuffer"},"distortion":{"doc_sha":"a36442ca725e5cc6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distortion(drive: float) -> SoundBuffer"},"duration":{"doc_sha":"bc1c03f781e0372b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"echo":{"doc_sha":"1b93f79c671068ab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"echo(delay_ms: float, feedback: float, wet: float) -> SoundBuffer"},"from_samples":{"doc_sha":"556326f1f2cda4a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_samples(data: bytes, channels: int, sample_rate: int) -> SoundBuffer"},"gain":{"doc_sha":"22fc3aad26b084a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"gain(factor: float) -> SoundBuffer"},"high_pass":{"doc_sha":"7d8af12720a4bbae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"high_pass(cutoff_hz: float) -> SoundBuffer"},"low_pass":{"doc_sha":"82cdc215e7da9310","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"low_pass(cutoff_hz: float) -> SoundBuffer"},"mix":{"doc_sha":"4df14cf741427da9","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"mix(buffers: list[SoundBuffer]) -> SoundBuffer"},"normalize":{"doc_sha":"5476b16208b1ac7b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> SoundBuffer"},"pitch_shift":{"doc_sha":"ee9373f2d71fdaa8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pitch_shift(factor: float) -> SoundBuffer"},"reverb":{"doc_sha":"b6d0dcf1e5f75a42","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverb(room_size: float, damping: float, wet: float) -> SoundBuffer"},"reverse":{"doc_sha":"eb70bfa5da4c860d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"reverse() -> SoundBuffer"},"sample_count":{"doc_sha":"5e96b7263eade6af","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sample_rate":{"doc_sha":"a41417a71e10a2d6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sfxr":{"doc_sha":"5f45a4b7afc74066","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"sfxr(preset: str = None, seed: int = None, **params) -> SoundBuffer"},"sfxr_mutate":{"doc_sha":"68b5b653de4f55dc","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"sfxr_mutate(amount: float = 0.05, seed: int = None) -> SoundBuffer"},"sfxr_params":{"doc_sha":"7fd7a2356600014a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"slice":{"doc_sha":"84099d0f46e6b7ad","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"slice(start: float, end: float) -> SoundBuffer"},"tone":{"doc_sha":"eaec1748a9089774","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"tone(frequency: float, duration: float, waveform: str = 'sine', ...) -> SoundBuffer"}}},"Sprite":{"doc_sha":"a687c4f393725428","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"align":{"doc_sha":"58657c3cfa010f31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_pos":{"doc_sha":"9df77e9a996208ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"e32208817299dfe9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"horiz_margin":{"doc_sha":"0ef227a4cae6e675","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"ab774a7da8cfe9bf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"name":{"doc_sha":"90a2ab0ec07c00eb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"origin":{"doc_sha":"270bdf366c74bb1d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pos":{"doc_sha":"55a118e7889fd555","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"rotate_with_camera":{"doc_sha":"5c3af880218d3a08","kind":"property","lifecycle":{"modified":{"commit":"4bb1966","version":"0.2.8-dev"},"since":"0.2.8"},"signature":""},"rotation":{"doc_sha":"61ba3e66a0841a08","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale":{"doc_sha":"f91a66d322ee1a75","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_x":{"doc_sha":"95f47a809a8ac927","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scale_y":{"doc_sha":"8567691c22a9b5f8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"shader":{"doc_sha":"418952064319ffb5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_index":{"doc_sha":"826af9fc52ae5cef","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"texture":{"doc_sha":"df3e7671926aa0a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"uniforms":{"doc_sha":"b1f2699da618d002","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vert_margin":{"doc_sha":"e2042be923bc6fcb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"528487f8deaaf789","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"114ecec940477107","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Texture":{"doc_sha":"da368b536d9f844e","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"composite":{"doc_sha":"0bf406582f618af3","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"composite(layers: list[Texture], sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"display_height":{"doc_sha":"0dc1ccea45ff4e40","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_x":{"doc_sha":"0ca738fa6559aabb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_offset_y":{"doc_sha":"83b5bfadd26f4e79","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"display_width":{"doc_sha":"cfc6525a8a0b5bb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"979f5a384770d87f","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data: bytes, width: int, height: int, sprite_width: int, sprite_height: int, name: str = '') -> Texture"},"hsl_shift":{"doc_sha":"95f19de7a67646e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"hsl_shift(hue_shift: float, sat_shift: float = 0.0, lit_shift: float = 0.0) -> Texture"},"sheet_height":{"doc_sha":"59d4fb71cae72fba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sheet_width":{"doc_sha":"54ef54eb9c39a907","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"source":{"doc_sha":"51bee1cdb17257ba","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_count":{"doc_sha":"d1ed79d8b59eca99","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_height":{"doc_sha":"19b6a36f45f965e8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"sprite_width":{"doc_sha":"6f9276522c3b2512","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileLayer":{"doc_sha":"5551e3bf9e668d89","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_ranges":{"doc_sha":"e443e268532fdd2f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_ranges(source: HeightMap, ranges: list) -> TileLayer"},"apply_threshold":{"doc_sha":"2253f4367656d073","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(source: HeightMap, range: tuple, tile: int) -> TileLayer"},"at":{"doc_sha":"19975fea19b3fadb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(pos: tuple | Vector) or (x: int, y: int) -> int"},"edit":{"doc_sha":"47c32fda0e88780a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"edit() -> context manager"},"fill":{"doc_sha":"5c8eca820794a605","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(index: int) -> None"},"fill_rect":{"doc_sha":"adfc5ff6d6e91cc8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_rect(pos: tuple, size: tuple, index: int) -> None"},"grid":{"doc_sha":"b965c55d57de78fa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"eac88eb0f7b16cbf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"dd282cc9273e2e36","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"set":{"doc_sha":"2b242556ce84080f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(pos, index: int) -> None"},"texture":{"doc_sha":"1d211a219f88c72c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"ecea81ec16e31c19","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"eb13c1b4de11ce63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileMapFile":{"doc_sha":"b26cb3870e41a2c9","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply_to_tile_layer":{"doc_sha":"436e4fa972bd79d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_to_tile_layer(tile_layer: TileLayer, layer_name: str, tileset_index: int = 0) -> None"},"height":{"doc_sha":"72aa81aefdab3ddb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"object_layer":{"doc_sha":"e658613bcbbe9b3a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"object_layer(name: str) -> list[dict]"},"object_layer_names":{"doc_sha":"7af1cc1454cd97f9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orientation":{"doc_sha":"2ee759a156b5c903","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"f2cb52eb132891d8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve_gid":{"doc_sha":"4a72f1c9f61cec27","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve_gid(gid: int) -> tuple[int, int]"},"tile_height":{"doc_sha":"cc47760c48b8c9be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_layer_data":{"doc_sha":"399fd655e6402442","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_layer_data(name: str) -> list[int]"},"tile_layer_names":{"doc_sha":"e225e2d4b71155e7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_width":{"doc_sha":"c109808c1e2d3ca1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tileset":{"doc_sha":"a3e35f368c3cc89d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tileset(index: int) -> tuple[int, TileSetFile]"},"tileset_count":{"doc_sha":"e7347387a4bcfeae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"acef1b7138a85569","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"TileSetFile":{"doc_sha":"ec83598f02a06258","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"columns":{"doc_sha":"5ba187696ce9596e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"image_source":{"doc_sha":"f21faacc0392eec3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"margin":{"doc_sha":"6e1b3cfd5b59af6a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"5e0a76b40f4db151","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"properties":{"doc_sha":"e0382abd62d297a6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"spacing":{"doc_sha":"950416fc0b8f1837","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_count":{"doc_sha":"df5ccd0141400827","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_height":{"doc_sha":"71a327fd061c1cf2","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"tile_info":{"doc_sha":"b33077f44c79e050","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"tile_info(tile_id: int) -> dict | None"},"tile_width":{"doc_sha":"888787b1ef69f5d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_texture":{"doc_sha":"610adac758051370","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_texture() -> Texture"},"wang_set":{"doc_sha":"c3b15db4611c250a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"wang_set(name: str) -> WangSet"},"wang_sets":{"doc_sha":"71541a1c5777b29f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Timer":{"doc_sha":"646feff7bdb817f5","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"active":{"doc_sha":"0ac0f4a607819264","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"callback":{"doc_sha":"a943e7e99b75fa22","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"interval":{"doc_sha":"e32658ee97f94823","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"98a62482b59640f6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"once":{"doc_sha":"7d5a7d20bae3793e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"pause":{"doc_sha":"bfe544cc3c9f1cda","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"pause() -> None"},"paused":{"doc_sha":"060df10cbfc34662","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"remaining":{"doc_sha":"e223a64ed6a1ec63","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"restart":{"doc_sha":"a8c305ae5017cce0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"restart() -> None"},"resume":{"doc_sha":"66ab0cd39f579ef9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resume() -> None"},"start":{"doc_sha":"0b2b51d812995d34","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"start() -> None"},"stop":{"doc_sha":"9f69f5e68512116c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"stop() -> None"},"stopped":{"doc_sha":"bffdb8aa4589c28b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Transition":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Traversal":{"doc_sha":"e3b0c44298fc1c14","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Trigger":{"doc_sha":"3f698ad8b187be9f","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"as_integer_ratio":{"doc_sha":"3eb115fab0d0e0ec","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_count":{"doc_sha":"f276da700b5a2e37","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"bit_length":{"doc_sha":"15b29db62fd0fa6c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"conjugate":{"doc_sha":"6517a002faad7c75","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"denominator":{"doc_sha":"5051eb1570768851","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"from_bytes":{"doc_sha":"64672607865643a7","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"($type, /, bytes, byteorder='big', *, signed=False)"},"imag":{"doc_sha":"ef78ea410df39b26","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_integer":{"doc_sha":"6176763fbac2fd22","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /)"},"numerator":{"doc_sha":"ed255748ce2eda7c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"real":{"doc_sha":"d44497f1990af6fe","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"to_bytes":{"doc_sha":"b452319e48e64764","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"($self, /, length=1, byteorder='big', *, signed=False)"}}},"Vector":{"doc_sha":"0c8ae9e2ef387065","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"angle":{"doc_sha":"a0ca5f1f4a89d780","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"angle() -> float"},"copy":{"doc_sha":"120e723fd513e072","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy() -> Vector"},"distance_to":{"doc_sha":"4f5d26bbe8434f65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"distance_to(other: Vector) -> float"},"dot":{"doc_sha":"d69442ea289adfb8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"dot(other: Vector) -> float"},"floor":{"doc_sha":"c7e81a90c5420968","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"floor() -> Vector"},"int":{"doc_sha":"3d97cae0ad8a963c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"magnitude":{"doc_sha":"75f61a474afe3121","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude() -> float"},"magnitude_squared":{"doc_sha":"c976db5b540f827b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"magnitude_squared() -> float"},"normalize":{"doc_sha":"04b468da3fc60858","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"normalize() -> Vector"},"x":{"doc_sha":"0e322bdd857e652b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"bbac84f15b6740d9","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Viewport3D":{"doc_sha":"c41e58effff86261","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_billboard":{"doc_sha":"ae2357f78a17a437","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_billboard(billboard)"},"add_layer":{"doc_sha":"b4c0274f9217aaa1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_layer(name, z_index=0) -> dict"},"add_mesh":{"doc_sha":"588dbdf9a48f17e5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_mesh(layer_name, model, pos, rotation=0, scale=1.0) -> int"},"add_voxel_layer":{"doc_sha":"47f17324425647e1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_voxel_layer(voxel_grid, z_index=0)"},"animate":{"doc_sha":"400df4f5893261c5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"animate(property: str, target: Any, duration: float, easing=None, delta=False, loop=False, callback=None, conflict_mode='replace') -> Animation"},"apply_heightmap":{"doc_sha":"be8e92a25726238d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_heightmap(heightmap, y_scale=1.0)"},"apply_terrain_colors":{"doc_sha":"cf0e47c185484e70","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_terrain_colors(layer_name, r_map, g_map, b_map)"},"apply_threshold":{"doc_sha":"3adda69e435613d7","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply_threshold(heightmap, min_height, max_height, walkable=True)"},"at":{"doc_sha":"7ec76d7602627cb9","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"at(x, z) -> VoxelPoint"},"bg_color":{"doc_sha":"c7e7141bd1cadaea","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"billboard_count":{"doc_sha":"4b432c5c560ee44f","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"billboard_count() -> int"},"bounds":{"doc_sha":"d3186ac3b3ff8bed","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"build_terrain":{"doc_sha":"5be2a61f78907326","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"build_terrain(layer_name, heightmap, y_scale=1.0, cell_size=1.0) -> int"},"camera_pos":{"doc_sha":"7bfead8afc2b8312","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"camera_target":{"doc_sha":"3ecf7bb4dbdf27e4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"cell_size":{"doc_sha":"8c3fa657c8fdc2aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear_billboards":{"doc_sha":"63d6d64c39b46264","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_billboards()"},"clear_meshes":{"doc_sha":"1d6eb71f274020cf","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_meshes(layer_name)"},"clear_voxel_nav_region":{"doc_sha":"56901862e4dc595a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear_voxel_nav_region(voxel_grid)"},"compute_fov":{"doc_sha":"93c68ed57619564e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"compute_fov(origin, radius=10) -> list"},"enable_affine":{"doc_sha":"96ba76ed43593940","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_dither":{"doc_sha":"da6733dd08751b72","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_fog":{"doc_sha":"ca6c5ffcef454868","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"enable_vertex_snap":{"doc_sha":"7401ad5dcd82024c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"entities":{"doc_sha":"c2b185a3b718cc6b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"find_path":{"doc_sha":"ebd174d40557cc19","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"find_path(start, end) -> list"},"fog_color":{"doc_sha":"3eb0cdbd75c5a94c","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_far":{"doc_sha":"90406f8cae40bb58","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fog_near":{"doc_sha":"e49f6dc79b22a794","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"follow":{"doc_sha":"975d2b945069be26","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"follow(entity, distance=10, height=5, smoothing=1.0)"},"fov":{"doc_sha":"7f5d69a1c423f69d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get_billboard":{"doc_sha":"38b0410480ab7d4d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_billboard(index) -> Billboard"},"get_layer":{"doc_sha":"92223f274b5312c3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_layer(name) -> dict or None"},"global_bounds":{"doc_sha":"aa4de9a20df55c2b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"global_position":{"doc_sha":"b8dabbecc9fccd2a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"grid_size":{"doc_sha":"7b4dbfa47f259f02","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"h":{"doc_sha":"d7308cd01fffb4be","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"hovered":{"doc_sha":"af0d353ce08f7be0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"is_in_fov":{"doc_sha":"81d50fbbe2df4c8e","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"is_in_fov(x, z) -> bool"},"layer_count":{"doc_sha":"8bfbb28860b18d51","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"layer_count() -> int"},"move":{"doc_sha":"5c74f429970a2d2b","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"move(dx, dy) or (delta) -> None"},"on_click":{"doc_sha":"b3b8de4e294d71b6","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_enter":{"doc_sha":"48c996802e262396","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_exit":{"doc_sha":"c14ef0d6d6d40b0e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"on_move":{"doc_sha":"9c3e26818b5b25b0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"opacity":{"doc_sha":"c1a7ef41e074519e","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"orbit_camera":{"doc_sha":"29e02de46a996495","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"orbit_camera(angle=0, distance=10, height=5)"},"parent":{"doc_sha":"171b0de4e295c55b","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"place_blocking":{"doc_sha":"9252fd1d594a3867","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"place_blocking(grid_pos, footprint, walkable=False, transparent=False)"},"pos":{"doc_sha":"c1693d7dd0fe875d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"project_all_voxels_to_nav":{"doc_sha":"ac9e0ca27b557d65","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_all_voxels_to_nav(headroom=2)"},"project_voxel_to_nav":{"doc_sha":"1fdf58bc686f7511","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_voxel_to_nav(voxel_grid, headroom=2)"},"realign":{"doc_sha":"8dfa7333a49aa697","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"realign() -> None"},"remove_billboard":{"doc_sha":"bf68668896f86bb0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_billboard(billboard)"},"remove_layer":{"doc_sha":"f5fafdfe3d153aab","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_layer(name) -> bool"},"remove_voxel_layer":{"doc_sha":"b88a956cacc361cb","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"remove_voxel_layer(voxel_grid) -> bool"},"render_resolution":{"doc_sha":"4b141c5648005f04","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resize":{"doc_sha":"005a04f1d129ebe5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resize(width, height) or (size) -> None"},"screen_to_world":{"doc_sha":"ba31510737afd516","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screen_to_world(x, y, y_plane=0.0) -> tuple or None"},"set_grid_size":{"doc_sha":"ee7d1626547614c8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_grid_size(width, depth)"},"set_slope_cost":{"doc_sha":"dac6d3cd319f1016","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set_slope_cost(max_slope=0.5, cost_multiplier=1.0)"},"visible":{"doc_sha":"49221a4ae830f3b8","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"voxel_layer_count":{"doc_sha":"c1ca5c90881bbaae","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"voxel_layer_count() -> int"},"w":{"doc_sha":"4c5bcc34301022a0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"x":{"doc_sha":"cd81d9dc457285aa","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"y":{"doc_sha":"406570900a1cf520","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"z_index":{"doc_sha":"328d87ae44d9fb71","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelGrid":{"doc_sha":"6706e3f5276ce104","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"add_material":{"doc_sha":"27dec1c992cf7b99","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"add_material(name, color=Color(255,255,255), sprite_index=-1, transparent=False, path_cost=1.0) -> int"},"cell_size":{"doc_sha":"81b167d608b2cec5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"clear":{"doc_sha":"8ebe20948a33a84d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"clear() -> None"},"copy_region":{"doc_sha":"e56c5d28d7fd4e86","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"copy_region(min_coord, max_coord) -> VoxelRegion"},"count_material":{"doc_sha":"c9ef38e1f2f29ab8","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_material(material) -> int"},"count_non_air":{"doc_sha":"275d512b30f5134a","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"count_non_air() -> int"},"depth":{"doc_sha":"21671acfc312aeeb","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fill":{"doc_sha":"fff2fcdddba5ee8c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill(material) -> None"},"fill_box":{"doc_sha":"7c3d982a275f095d","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box(min_coord, max_coord, material) -> None"},"fill_box_hollow":{"doc_sha":"432e8b518feee0a5","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_box_hollow(min_coord, max_coord, material, thickness=1) -> None"},"fill_cylinder":{"doc_sha":"0b2b0b0826381df0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_cylinder(base_pos, radius, height, material) -> None"},"fill_noise":{"doc_sha":"567355400611d920","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_noise(min_coord, max_coord, material, threshold=0.5, scale=0.1, seed=0) -> None"},"fill_sphere":{"doc_sha":"e6a85d9c72e2ea44","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"fill_sphere(center, radius, material) -> None"},"from_bytes":{"doc_sha":"faefede0aa8ae636","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"from_bytes(data) -> bool"},"get":{"doc_sha":"52cea4645f0ea3d0","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get(x, y, z) -> int"},"get_material":{"doc_sha":"2a61f6d54086df97","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"get_material(id) -> dict"},"greedy_meshing":{"doc_sha":"17fffa950c043917","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"f271e989afe69da3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"load":{"doc_sha":"5dcaf71057f836a2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"load(path) -> bool"},"material_count":{"doc_sha":"0ef72bd68ef0c2d0","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"offset":{"doc_sha":"75230579ca06d8f5","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"paste_region":{"doc_sha":"1f44bacefd614cca","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"paste_region(region, position, skip_air=True) -> None"},"project_column":{"doc_sha":"9bacd59e3a7c5758","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"project_column(x, z, headroom=2) -> dict"},"rebuild_mesh":{"doc_sha":"fa60051037c3328c","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"rebuild_mesh() -> None"},"rotation":{"doc_sha":"5b603e8c652baf50","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"save":{"doc_sha":"bb7090694292f8e3","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"save(path) -> bool"},"set":{"doc_sha":"e9223501162aa9c6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"set(x, y, z, material) -> None"},"size":{"doc_sha":"2d283d0584913b16","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the grid. Read-only."},"to_bytes":{"doc_sha":"f9a751e75bfc0478","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"to_bytes() -> bytes"},"vertex_count":{"doc_sha":"4df863704c32ecb7","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"7ff1afdbd4bf86a3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"width":{"doc_sha":"0977aff160584918","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"VoxelRegion":{"doc_sha":"0cda0630ba7cafef","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"depth":{"doc_sha":"05b3223f7df8ab65","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"height":{"doc_sha":"04834a15ca591472","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"size":{"doc_sha":"75c252385afbc498","kind":"property","lifecycle":{"since":"0.2.8"},"signature":"Dimensions (width, height, depth) of the region. Read-only."},"width":{"doc_sha":"d10d49e58037417d","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"WangSet":{"doc_sha":"320e161ef3d08a5d","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"apply":{"doc_sha":"2aa8c0ba2d6549d2","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"apply(discrete_map: DiscreteMap, tile_layer: TileLayer) -> None"},"color_count":{"doc_sha":"13b244a538aec70f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"colors":{"doc_sha":"6d84b3c2dd048b1a","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"name":{"doc_sha":"8b4560b705e5724f","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"resolve":{"doc_sha":"fe2fa09430c4bda6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"resolve(discrete_map: DiscreteMap) -> list[int]"},"terrain_enum":{"doc_sha":"b8c46ec1a2b03eb6","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"terrain_enum() -> IntEnum"},"type":{"doc_sha":"ea3706e2c65ba7d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}},"Window":{"doc_sha":"6021e9b58544c378","kind":"class","lifecycle":{"since":"0.2.8"},"members":{"center":{"doc_sha":"91fe1b0d6ca2e4f1","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"center() -> None"},"framerate_limit":{"doc_sha":"de182ed271fbb4d3","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"fullscreen":{"doc_sha":"a517f5331026f2c4","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"game_resolution":{"doc_sha":"3a0dba59fecf5a95","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"get":{"doc_sha":"544bdc10ab93d067","kind":"classmethod","lifecycle":{"since":"0.2.8"},"signature":"get() -> Window"},"resolution":{"doc_sha":"548abee10c4fbcaf","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"scaling_mode":{"doc_sha":"57e03f9ffc9291ae","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"screenshot":{"doc_sha":"5102ab9c4c2c8358","kind":"method","lifecycle":{"since":"0.2.8"},"signature":"screenshot(filename: str = None) -> bytes | None"},"title":{"doc_sha":"0d98279e5ec1b8b1","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"visible":{"doc_sha":"bad7f81ec2e48a31","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""},"vsync":{"doc_sha":"0335eb1fba386e37","kind":"property","lifecycle":{"since":"0.2.8"},"signature":""}}}},"schema":1,"seeded":false,"version":"0.2.8-dev"} diff --git a/src/GameEngine.cpp b/src/GameEngine.cpp index cdc5143..18761e3 100644 --- a/src/GameEngine.cpp +++ b/src/GameEngine.cpp @@ -623,7 +623,14 @@ void GameEngine::processEvent(const sf::Event& event) } // #363 - The cursor left the window. No further MouseMoved will arrive, so // whatever is hovered must be exited now or it stays hovered forever. - else if (event.type == sf::Event::MouseLeft) + // + // #367 - Losing focus strands hover identically. The cursor may still be physically + // over the window, but an unfocused window is delivered no MouseMoved, so the hover + // walk never runs and the last hovered drawable stays lit while the game sits in the + // background. Once unfocused we genuinely do not know where the pointer is, and + // "hovering nothing" is the only truthful state to hold; the next MouseMoved after + // focus returns restores hover. + else if (event.type == sf::Event::MouseLeft || event.type == sf::Event::LostFocus) { if (auto* pyscene = dynamic_cast(currentScene())) { pyscene->do_mouse_leave(); diff --git a/src/McRFPy_Automation.cpp b/src/McRFPy_Automation.cpp index 9a6e1ee..728dda5 100644 --- a/src/McRFPy_Automation.cpp +++ b/src/McRFPy_Automation.cpp @@ -113,6 +113,17 @@ sf::Keyboard::Key McRFPy_Automation::stringToKey(const std::string& keyName) { return sf::Keyboard::Unknown; } +// #367 - Inject a window-level event. These carry no coordinates and no button, which +// is why they get their own entry point rather than riding injectMouseEvent. +void McRFPy_Automation::injectWindowEvent(sf::Event::EventType type) { + auto engine = getGameEngine(); + if (!engine) return; + + sf::Event event; + event.type = type; + engine->processEvent(event); +} + // Inject mouse event into the game engine void McRFPy_Automation::injectMouseEvent(sf::Event::EventType type, int x, int y, sf::Mouse::Button button, float scrollDelta) { auto engine = getGameEngine(); @@ -335,6 +346,15 @@ PyObject* McRFPy_Automation::_mouseLeave(PyObject* self, PyObject* args) { Py_RETURN_NONE; } +// #367 - Simulate the window losing focus (alt-tab). Like a window-leave, this clears +// all hover state: an unfocused window receives no MouseMoved, so any drawable still +// marked hovered would stay lit indefinitely. The simulated cursor position is left +// alone -- focus and pointer location are independent, and the pointer has not moved. +PyObject* McRFPy_Automation::_loseFocus(PyObject* self, PyObject* args) { + injectWindowEvent(sf::Event::LostFocus); + Py_RETURN_NONE; +} + // Move mouse relative - accepts moveRel(offset, duration) PyObject* McRFPy_Automation::_moveRel(PyObject* self, PyObject* args, PyObject* kwargs) { static const char* kwlist[] = {"offset", "duration", NULL}; @@ -990,6 +1010,16 @@ static PyMethodDef automationMethods[] = { MCRF_NOTE("Takes no position: the cursor is outside the window, so there is none. " "Exit callbacks receive the last position passed to moveTo/click.") )}, + {"loseFocus", (PyCFunction)McRFPy_Automation::_loseFocus, METH_NOARGS, + MCRF_METHOD(automation, loseFocus, + MCRF_SIG("()", "None"), + MCRF_DESC("Simulate the window losing focus (alt-tab), clearing all hover state. " + "Every hovered drawable fires its on_exit, every hovered grid fires " + "on_cell_exit, and Grid.hovered_cell becomes None."), + MCRF_NOTE("An unfocused window is delivered no mouse motion, so the engine cannot " + "know where the pointer is; hovering nothing is the only truthful state. " + "Hover is restored by the next mouse movement after focus returns.") + )}, {"typewrite", (PyCFunction)McRFPy_Automation::_typewrite, METH_VARARGS | METH_KEYWORDS, MCRF_METHOD(automation, typewrite, diff --git a/src/McRFPy_Automation.h b/src/McRFPy_Automation.h index fcab6ce..47cf6c1 100644 --- a/src/McRFPy_Automation.h +++ b/src/McRFPy_Automation.h @@ -36,6 +36,7 @@ public: static PyObject* _mouseDown(PyObject* self, PyObject* args, PyObject* kwargs); static PyObject* _mouseUp(PyObject* self, PyObject* args, PyObject* kwargs); static PyObject* _mouseLeave(PyObject* self, PyObject* args); // #363 + static PyObject* _loseFocus(PyObject* self, PyObject* args); // #367 // Keyboard static PyObject* _typewrite(PyObject* self, PyObject* args, PyObject* kwargs); @@ -45,6 +46,9 @@ public: // Helper functions static void injectMouseEvent(sf::Event::EventType type, int x, int y, sf::Mouse::Button button = sf::Mouse::Left, float scrollDelta = 0.0f); + // #367 - Window-level events (LostFocus, GainedFocus) carry no payload at all, so + // they do not belong in injectMouseEvent's coordinate-bearing signature. + static void injectWindowEvent(sf::Event::EventType type); static void injectKeyEvent(sf::Event::EventType type, sf::Keyboard::Key key); static void injectTextEvent(sf::Uint32 unicode); static sf::Keyboard::Key stringToKey(const std::string& keyName); diff --git a/src/UIDrawable.cpp b/src/UIDrawable.cpp index f491d0c..2eed62d 100644 --- a/src/UIDrawable.cpp +++ b/src/UIDrawable.cpp @@ -1046,15 +1046,32 @@ bool UIDrawable::contains_point(float x, float y) const { } // #144: Content dirty - texture needs rebuild +// +// #368 - The walk up the parent chain is UNCONDITIONAL. It used to be gated on +// `(!was_dirty || !p->render_dirty)`, which is sound only if render_dirty is reliably +// cleared once a drawable has been drawn. It is not: clearDirty() is called by the two +// classes that actually *cache* a raster (UIFrame's render-texture path, UIGridView), +// and by nobody else. For every ordinary Frame/Caption/Sprite/Line/Circle/Arc, +// render_dirty is a write-once latch -- true from the first mutation until death. +// +// With the flag stuck true, `was_dirty` was always true and the parent's render_dirty +// was always true, so the guard was always false and content invalidation propagated +// NOWHERE. A caching ancestor (Frame(cache_subtree=True), or a GridView) went on +// re-blitting a stale composite: text never updated, colors never changed. Only +// position changes survived, because markCompositeDirty (below) already walked +// unconditionally. +// +// Restoring the guard would mean making every drawable clear the flag honestly, and +// then trusting that every future drawable remembers to. The invariant here is worth +// more than the walk it saves: parent chains are shallow, and this is exactly the cost +// markCompositeDirty has always paid on every move without anyone noticing. void UIDrawable::markContentDirty() { - bool was_dirty = render_dirty; render_dirty = true; composite_dirty = true; // If content changed, composite also needs update // Propagate to parent - parent's composite is dirty (child content changed) - // Propagate if: we weren't already dirty, OR parent was cleared (rendered) since last propagation auto p = parent.lock(); - if (p && (!was_dirty || !p->render_dirty)) { + if (p) { p->markContentDirty(); // Parent also needs to rebuild to include our changes } } diff --git a/tests/regression/issue_367_hover_exit_on_focus_loss_test.py b/tests/regression/issue_367_hover_exit_on_focus_loss_test.py new file mode 100644 index 0000000..a6dafa3 --- /dev/null +++ b/tests/regression/issue_367_hover_exit_on_focus_loss_test.py @@ -0,0 +1,139 @@ +#!/usr/bin/env python3 +"""Regression test for #367: losing window focus stranded hover state (#363's sibling). + +#363 fixed the case where the cursor physically LEAVES the window. But alt-tabbing +away strands hover in exactly the same way and for exactly the same reason: while the +window is unfocused no MouseMoved arrives, so the hover walk never runs, so whatever +was hovered when focus was lost stays hovered. on_exit / on_cell_exit never fire and +grid.hovered_cell keeps reporting a cell the user is no longer pointing at -- while +the game sits in the background. + +sf::Event::LostFocus was already being produced by every backend (SDL2Renderer even +translates SDL_WINDOWEVENT_FOCUS_LOST into it) and, like MouseLeft before #363, had +NOBODY LISTENING. + +The fix routes LostFocus to the same PyScene::do_mouse_leave() that #363 added. That +is the honest response: once unfocused, the engine genuinely does not know where the +pointer is, and "hovering nothing" is the only truthful state. Hover is restored by +the next MouseMoved after focus returns. + +automation.loseFocus() injects the event. +""" +import sys +import mcrfpy +from mcrfpy import automation + +CELL = 16 +FAILURES = [] + + +def check(cond, msg): + if not cond: + print(f"FAIL: {msg}", file=sys.stderr) + FAILURES.append(msg) + + +def screen_of_cell(grid, cx, cy): + """Screen coords of the center of cell (cx, cy) under the view's camera.""" + left_sp = int(grid.center_x - (grid.w / 2.0)) + top_sp = int(grid.center_y - (grid.h / 2.0)) + return (grid.x + ((cx + 0.5) * CELL - left_sp), + grid.y + ((cy + 0.5) * CELL - top_sp)) + + +def case_grid_cell_exit_fires_on_focus_loss(): + scene = mcrfpy.Scene("blur_grid") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + enters, exits = [], [] + grid.on_cell_enter = lambda pos: enters.append((pos.x, pos.y)) + grid.on_cell_exit = lambda pos: exits.append((pos.x, pos.y)) + + automation.moveTo(screen_of_cell(grid, 2, 2)) + check(enters == [(2, 2)], f"moving onto cell (2,2) should fire on_cell_enter; got {enters}") + check(grid.hovered_cell == (2, 2), + f"hovered_cell should be (2, 2) while hovering; got {grid.hovered_cell}") + + # The player alt-tabs away. The cursor may still be physically over the window, + # but no further MouseMoved will be delivered to us. + automation.loseFocus() + + check(exits == [(2, 2)], + f"losing focus must fire on_cell_exit for the hovered cell; got {exits}") + check(grid.hovered_cell is None, + f"hovered_cell must be None while the window is unfocused; got {grid.hovered_cell}") + check(enters == [(2, 2)], + f"losing focus must not fire any on_cell_enter; got {enters}") + + +def case_frame_on_exit_fires_on_focus_loss(): + """Like #363, this is an input-layer gap, not a grid one: Frame.on_exit too.""" + scene = mcrfpy.Scene("blur_frame") + scene.activate() + frame = mcrfpy.Frame(pos=(50, 50), size=(100, 100)) + scene.children.append(frame) + + entered, exited = [], [] + frame.on_enter = lambda pos: entered.append((pos.x, pos.y)) + frame.on_exit = lambda pos: exited.append((pos.x, pos.y)) + + automation.moveTo((100, 100)) + check(len(entered) == 1, f"moving into the frame should fire on_enter; got {entered}") + check(exited == [], f"nothing should have exited yet; got {exited}") + + automation.loseFocus() + check(len(exited) == 1, f"losing focus must fire the frame's on_exit; got {exited}") + + # Already unfocused: a second blur has nothing left to exit. + automation.loseFocus() + check(len(exited) == 1, f"a redundant focus loss must not fire on_exit twice; got {exited}") + + +def case_reenter_after_focus_loss(): + """Hover must be genuinely cleared, not merely reported clear. + + Re-entering the SAME cell after focus returns has to fire on_cell_enter again. If + loseFocus had only nulled the reported value while leaving the internal hovered + cell set, the incoming cell would compare equal and the enter would be swallowed. + """ + scene = mcrfpy.Scene("blur_reenter") + scene.activate() + grid = mcrfpy.Grid(grid_size=(5, 5), pos=(100, 100), size=(200, 200)) + scene.children.append(grid) + + enters = [] + grid.on_cell_enter = lambda pos: enters.append((pos.x, pos.y)) + + target = screen_of_cell(grid, 3, 3) + automation.moveTo(target) + automation.loseFocus() + + automation.moveTo(target) + check(enters == [(3, 3), (3, 3)], + f"pointing at the same cell after focus returns must fire on_cell_enter again; " + f"got {enters}") + + +def main(): + case_grid_cell_exit_fires_on_focus_loss() + case_frame_on_exit_fires_on_focus_loss() + case_reenter_after_focus_loss() + + +if __name__ == "__main__": + try: + main() + if FAILURES: + print(f"\n{len(FAILURES)} FAILURE(S)", file=sys.stderr) + sys.exit(1) + print("PASS") + sys.exit(0) + except SystemExit: + raise + except Exception as e: + print(f"\nTEST CRASHED: {e}", file=sys.stderr) + import traceback + traceback.print_exc() + sys.exit(1) diff --git a/tests/regression/issue_368_cache_subtree_content_dirty_test.py b/tests/regression/issue_368_cache_subtree_content_dirty_test.py new file mode 100644 index 0000000..a216080 --- /dev/null +++ b/tests/regression/issue_368_cache_subtree_content_dirty_test.py @@ -0,0 +1,176 @@ +"""Regression test for #368 - Frame(cache_subtree=True) froze its subtree's content. + +`UIDrawable::markContentDirty()` guarded its walk up the parent chain with + + bool was_dirty = render_dirty; + ... + if (p && (!was_dirty || !p->render_dirty)) p->markContentDirty(); + +That guard is sound only if `render_dirty` is reliably cleared once a drawable has +been drawn. It was not: `clearDirty()` had exactly ONE call site in the entire +engine (UIGridView, added by #364). UIFrame/UICaption/UISprite/UILine/UICircle/UIArc +never cleared it, so `render_dirty` was a WRITE-ONCE LATCH -- true from the first +mutation until the object died. + +With the flag permanently true, `was_dirty` was permanently true, the parent's +`render_dirty` was permanently true, and the guard was permanently false. Content +invalidation stopped propagating entirely, so a caching ancestor kept re-blitting a +stale composite: text never updated, colors never changed, sprites never changed. + +Only MOVEMENT survived, because `x`/`y` route through `markCompositeDirty()` -- a +different function whose walk was already unconditional. That asymmetry is what made +the bug look intermittent rather than total, and it is why every case below mutates +CONTENT (color, text, sprite index) rather than position. + +The fix makes markContentDirty's walk unconditional too, matching markCompositeDirty. +Correctness then does not depend on any drawable remembering to clear a flag. +""" +import mcrfpy +from mcrfpy import automation +import sys, os, tempfile + +TMPDIR = tempfile.mkdtemp(prefix="mcrf368_") +_counter = 0 +_results = [] + + +def check(label, ok): + _results.append((label, bool(ok))) + print(" [%s] %s" % ("PASS" if ok else "FAIL", label)) + + +def shot(): + global _counter + path = os.path.join(TMPDIR, "s%d.png" % _counter) + _counter += 1 + automation.screenshot(path) + with open(path, "rb") as f: + return f.read() + + +def case_recolor_under_cache(): + """Every recolor of a nested child must reach the caching ancestor. + + Not just the first: on master ZERO of these propagated, because render_dirty had + already latched by the time the first one ran. + """ + scene = mcrfpy.Scene("t368_recolor") + scene.activate() + + cache = mcrfpy.Frame(pos=(10, 10), size=(300, 300), cache_subtree=True) + scene.children.append(cache) + inner = mcrfpy.Frame(pos=(0, 0), size=(280, 280)) + cache.children.append(inner) + kid = mcrfpy.Frame(pos=(32, 32), size=(48, 48), fill_color=mcrfpy.Color(255, 0, 0)) + inner.children.append(kid) + + prev = shot() + for i, rgb in enumerate([(0, 255, 0), (0, 0, 255), (255, 255, 0), (255, 0, 255)]): + kid.fill_color = mcrfpy.Color(*rgb) + cur = shot() + check("1.%d: recolor -> %s repaints through the cache" % (i + 1, rgb), cur != prev) + prev = cur + + +def case_caption_text_under_cache(): + """The most visible form of this bug: a label inside a cached panel never updates.""" + scene = mcrfpy.Scene("t368_text") + scene.activate() + + cache = mcrfpy.Frame(pos=(10, 10), size=(300, 300), cache_subtree=True) + scene.children.append(cache) + inner = mcrfpy.Frame(pos=(0, 0), size=(280, 280)) + cache.children.append(inner) + cap = mcrfpy.Caption(text="one", pos=(20, 20)) + inner.children.append(cap) + + prev = shot() + for i, txt in enumerate(["two", "three", "four"]): + cap.text = txt + cur = shot() + check("2.%d: caption text -> %r repaints through the cache" % (i + 1, txt), cur != prev) + prev = cur + + +def case_deep_nesting(): + """The walk must reach the cache from arbitrary depth, not just one level down.""" + scene = mcrfpy.Scene("t368_deep") + scene.activate() + + cache = mcrfpy.Frame(pos=(10, 10), size=(300, 300), cache_subtree=True) + scene.children.append(cache) + + node = cache + for d in range(4): + nxt = mcrfpy.Frame(pos=(5, 5), size=(260 - d * 10, 260 - d * 10)) + node.children.append(nxt) + node = nxt + + leaf = mcrfpy.Frame(pos=(10, 10), size=(40, 40), fill_color=mcrfpy.Color(255, 0, 0)) + node.children.append(leaf) + + prev = shot() + for i, rgb in enumerate([(0, 255, 0), (0, 0, 255), (255, 255, 0)]): + leaf.fill_color = mcrfpy.Color(*rgb) + cur = shot() + check("3.%d: depth-5 leaf recolor reaches the cache" % (i + 1), cur != prev) + prev = cur + + +def case_idle_is_still_cheap(): + """The fix must not defeat the cache: an untouched frame stays byte-identical. + + If markContentDirty had been "fixed" by marking everything dirty every frame, the + tests above would pass and the cache would be worthless. This is the counterweight. + """ + scene = mcrfpy.Scene("t368_idle") + scene.activate() + + cache = mcrfpy.Frame(pos=(10, 10), size=(300, 300), cache_subtree=True) + scene.children.append(cache) + kid = mcrfpy.Frame(pos=(32, 32), size=(48, 48), fill_color=mcrfpy.Color(255, 0, 0)) + cache.children.append(kid) + + a = shot() + b = shot() + c = shot() + check("4a: idle frames under a cache are byte-identical", a == b == c) + + +def case_uncached_still_works(): + """Sanity: the ordinary (uncached) path must be unaffected.""" + scene = mcrfpy.Scene("t368_plain") + scene.activate() + + holder = mcrfpy.Frame(pos=(10, 10), size=(300, 300)) + scene.children.append(holder) + kid = mcrfpy.Frame(pos=(32, 32), size=(48, 48), fill_color=mcrfpy.Color(255, 0, 0)) + holder.children.append(kid) + + prev = shot() + for i, rgb in enumerate([(0, 255, 0), (0, 0, 255)]): + kid.fill_color = mcrfpy.Color(*rgb) + cur = shot() + check("5.%d: recolor repaints without a cache" % (i + 1), cur != prev) + prev = cur + + +def run_tests(): + case_recolor_under_cache() + case_caption_text_under_cache() + case_deep_nesting() + case_idle_is_still_cheap() + case_uncached_still_works() + return all(ok for _, ok in _results) + + +if __name__ == "__main__": + try: + ok = run_tests() + print("PASS" if ok else "FAIL") + sys.exit(0 if ok else 1) + except Exception: + import traceback + traceback.print_exc() + print("FAIL") + sys.exit(1) diff --git a/tests/snapshots/api_surface.golden.txt b/tests/snapshots/api_surface.golden.txt index 5d39226..a423c52 100644 --- a/tests/snapshots/api_surface.golden.txt +++ b/tests/snapshots/api_surface.golden.txt @@ -1205,6 +1205,7 @@ func dragTo :: dragTo(pos: tuple | list | Vector, duration: float = 0.0, button: func hotkey :: hotkey(*keys: str) -> None func keyDown :: keyDown(key: str) -> None func keyUp :: keyUp(key: str) -> None +func loseFocus :: loseFocus() -> None func middleClick :: middleClick(pos: tuple | list | Vector | None = None) -> None func mouseDown :: mouseDown(pos: tuple | list | Vector | None = None, button: str = 'left') -> None func mouseLeave :: mouseLeave() -> None