- dab8550: Add guard clauses when tile_set is not defined. Closes #17.
- f27e698: Refactor tile_set reference to use WeakRef. Fix #14
- fda61f2: Fix demo when switching layout without any method selected.
- c8e4691: Added
cube_exploredemo. - 14d6f07: Removed old example folder.
- 7f40399: Added demo for Path finding.
- 8e96a08: Added demo for tile shape.
- 96cf0e0: Added demo in build. #11
- fbc1ede: Updated SVG icons.
- fed8915: Added
cube_outlinesdemo. - 14d6f07: Cleanup demo with new data set and menu.
- 2db5f3d: Added
cube_rangeandcube_intersect_rangesdemo. Refactored some parts of the demos. - c5644a9: Added
cube_rect,cube_rect_corner_neighbors,cube_ringdemo. - 6b4f4a1: Updated
cube_linedrawdemo. - 50344a8: Added
cube_neighbors,cube_corner_neighbors,cube_distancedemo. - cf10679: Added
cube_neighbordemo. - 153735d: Added
cube_spiraldemo and rework method list. - 6b4f4a1: Added
cube_directiondemo. - 10ef17a: Added
cube_rotate,cube_rotate_from,cube_reflect,cube_reflect_fromdemo.
- bdccc2b: Fixed
cube_ringreturning empty array with size of 0. - 3b88ded: Fixed
cube_rangeto return the center cell with a distance of 0. - e6cef6e: Fixed
cube_linedrawnot returning a cell when both points are the same.
- ef3cc9f: Removed demo folder from main build.
- e9cff51: Added interactive demo for the plugin showcasing hex grid functionality with layout selection. More methods will be added to the demo in the future.
- 9777a32: Added
update_cells_layoutmethod to updates the layout of a hex tilemap while preserving the logical positions of all tiles. - 69ff05f: Added method
HexagonTileMap.update_cells_layoutto updates the layout of a hex tilemap while preserving the logical positions of all tiles. - 60ab58b: Added methods
HexagonTileMap.cube_roundandcube_roundto rounds a fractional cube coordinate to the nearest valid hex coordinate.
- b061de5: Fixed conversion methods reloading when the tile_set itself is replaced during runtime.
- dedab9e: Fixed
cube_linedrawmethod that could skip some tiles on the line depending on the selected tile_layout when the line is aligned to some of the corner axes.
- 7fc7a51: Added method
cube_outlinesto generate outline for a group of hex cells. - cfd2915: Added method
cube_exploreto explores hexes from a starting point based on filter and traversal conditions.
- b8e2a6b: Renamed various variables and added @warning_ignore where needed to suppress warnings.
- afecf5f: Added missing documentation about TileShape class.
- d88bbf0: Fixed Vector2 return order in function
geometry_horizontal_tile_cornersto match the vertical version
- 2c4ef71: Added
geometry_tile_shapeandgeometry_tile_approx_shapeproperties to HexagonTileMapLayer. - 2c4ef71: Added TileShape sub class to store the shape of a tile for physics collision.
- 2c4ef71: Added HexagonTileMap.geometry_horizontal_tile_corners to get Vector2 position of tile corner.
- _pathfinding_generate_points() function is now called pathfinding_generate_points()
- Fix issue with pathfinding points capacity #1
- astar_changed event was called twice.
- Fix debug container redraw
- Add missing documentation for
cube_rect
- Fix invalid return from
cube_rect_cornersfunction when center was not0, 0, 0 - Rix documentation generation on plugin load (Related to Godot Issue)
- Split the static methods inside a HexagonTileMap class
- Renammed the
cube_recttocube_rect_corners
- New method
cube_rectto get all cells inside the rect.
- Changed the type of
axisparam frominttoVector3i.Axis. There is no difference in the runtime.- cube_reflect(position: Vector3i, axis: Vector3i.Axis) -> Vector3i
- cube_reflect_from(position: Vector3i, from: Vector3i, axis: Vector3i.Axis) -> Vector3i
- cube_rect(center: Vector3i, corner: Vector3i, axis: Vector3i.Axis = Vector3i.Axis.AXIS_Y) -> Array[Vector3i]
- cube_rect_corners(center: Vector3i, corner: Vector3i, axis: Vector3i.Axis = Vector3i.Axis.AXIS_Y) -> Array[Vector3i]
- Fix return type of
cube_spiralto beArray[Vector3i]
- Require Godot 4.4 or later
- Axis dependant variables that get updated on ready
- cube_direction_vectors: Dictionary[TileSet.CellNeighbor, Vector3i]
- cube_side_neighbor_directions: Array[TileSet.CellNeighbor]
- cube_corner_neighbor_directions: Array[TileSet.CellNeighbor]
- Methods to get cells position depending of local position
- get_closest_cells_from_local(local: Vector2, count: int = 1) -> Array[Vector3i]
- get_closest_cell_from_local(local: Vector2) -> Vector3i
- get_closest_cells_from_mouse(count: int = 1) -> Array[Vector3i]
- get_closest_cell_from_mouse() -> Vector3i
- Reduce axis comparaison for static methods by caching neighbor_directions and direction_vectors vars
- Fix incorrect loading of the toolbar
- Initial release