Skip to content
Snippets Groups Projects
  1. Mar 04, 2022
  2. Mar 03, 2022
    • Alejandro Perea's avatar
      Add some missing attributes (#173) · dab7cb6b
      Alejandro Perea authored
      * Add attributes
      - `#[inline]` for properties
      - `#![deny(unsafe_code)]`
      - `#![deny(missing_copy_implementations)]`
      - `#![deny(missing_debug_implementations)]`
      
      * Add more inline attributes
      
      * Merge with upstream
      dab7cb6b
  3. Feb 23, 2022
  4. Feb 16, 2022
    • Alejandro Perea's avatar
      Remove `Data` types from the interface (#163) · 4227705a
      Alejandro Perea authored
      
      * Add properties to `Object`
      
      * Add properties to `FiniteTileLayer`
      
      * Add properties to `Layer`
      
      * Add properties to `ImageLayer`
      
      * Add properties to `ObjectLayerData`
      
      * Remove `data()`; Replace `map()`
      
      * Add properties to `LayerTile`
      
      * `MapWrapper` -> `map_wrapper!`
      
      * Fix examples/tests
      
      * Limit visibility of data types
      
      * Make `Tile::collision` public again
      
      * Doc tweak
      
      Co-authored-by: default avatarThorbjørn Lindeijer <bjorn@lindeijer.nl>
      4227705a
  5. Feb 14, 2022
    • Alejandro Perea's avatar
      Refactor chunk system (#157) · bbdba30b
      Alejandro Perea authored
      * Refactor chunk system
      - Add `FiniteTileLayer` & `InfiniteTileLayer`
      - Chunks are now stored by chunk position
      - Add `InternalChunk` for holding mid-parse chunk info
      
      * Fix tests
      
      * Cleanup
      
      * Make chunk constructor private
      
      * Address PR comments
      
      * Box chunk tiles
      
      * Convert numeric types before multiplication
      bbdba30b
    • Alejandro Perea's avatar
      Simplify internals (#153) · e8113244
      Alejandro Perea authored
      * Move `parse_animation` to the `animation` module
      
      * Simplify `parse_data_line`
      
      * Simplify tile layer utils
      
      * Simplify `convert_to_tiles`
      
      * Simplify objects module
      
      * Simplify if
      
      * Address PR comments
      e8113244
  6. Feb 12, 2022
  7. Feb 11, 2022
    • Alejandro Perea's avatar
      Add SFML example (#133) · 187f1fbe
      Alejandro Perea authored
      
      * Add SFML example
      Adds a rough demo using SFML for rendering.
      
      * Simplifications to SFML example
      
      * Rely on sfml 0.16 rather than a git revision
      * Avoid allocating temporary Path
      * Take into account margin and spacing
      * Directly produce a FloatRect, since it is what SFML needs
      * Renamed VertexMesh to QuadMesh
      * Use Vertex::with_pos_coords since we always passed Color::WHITE
      * Removed TileLayer wrapper, since it added no value
      * Removed handling of gid == 0 in Tilesheet::tile_rect
      
      * Update contributors list
      
      * Apply formatting
      
      * Avoid the need to inverse the camera matrix
      
      * De-hardcode the tile size
      
      Also fixes the example a bit, because the map was drawn too small.
      
      * Update workflow
      
      * Try fixing CI issue by removing rust-cache
      
      * Fix CI
      
      * Fix map asset path
      
      * Merge SFML and Rust workflow
      
      * Misc changes
      
      * Merge upstream/master
      
      * Update example to master
      
      * Fix line endings
      
      * Fixed comment
      
      Co-authored-by: default avatarThorbjørn Lindeijer <bjorn@lindeijer.nl>
      187f1fbe
  8. Feb 10, 2022
    • Alejandro Perea's avatar
      Better errors (#152) · dfe84584
      Alejandro Perea authored
      * Close #124
      
      * Add `TiledError::InvalidEncodingFormat`
      
      * Rename `DecompressingError` to `IoError`
      
      * Add `InvalidPropertyValue` & `UnknownPropertyType`
      
      * Remove `Other`
      
      * Remove `ParseTileError`
      
      * Misc comment improvements
      
      * Revert  `IoError` back to `DecompressingError`
      - Use `CouldNotOpenFile` for `Map`
      
      * Address PR comments
      dfe84584
    • Anti-Alias's avatar
      Add group layer support (#146) · bb77240f
      Anti-Alias authored
      * Adding group layer support
      
      * Added test case and fixed parsing code
      
      * Adding comma
      
      * Adding missing newline
      
      * Merging GID changes
      
      * Merging GID changes
      
      * Cleaning files
      
      * Cleaning files
      
      * Cleaning files
      bb77240f
  9. Feb 09, 2022
    • Alejandro Perea's avatar
      Hide GIDs as internal details (#135) · df98e9f3
      Alejandro Perea authored
      
      * Partial commit
      
      * Partial commit
      
      * Partial commit
      
      * Some suggested changes and fixed tests (except infinite)
      
      * Replaced `tile` member in `LayerTileRef` with a function to get an
        `Option<&Tile>`.
      
      * Replaced `Map::get_tile_by_gid` with `Map::get_tileset_for_gid`, which
        just returns the `Option<&Tileset>`. It also does a reverse search,
        which fixes the lookup in case an external tileset has grown since the
        map was last saved.
      
      * Replaced `Tileset::get_tile_by_gid` with `Tileset::get_tile`, since
        subtracting of the `first_gid` already happens when creating the
        `LayerTileRef`. Also, we eventually should remove `first_gid` from
        `Tileset`, since it should be possible to share a single tileset
        instance betweeen several maps.
      
      * Pre-allocate the tiles hash map for the expected number of tiles and
        use `or_default` instead of `or_insert_with(Default::default)`.
      
      * [nonbuilding] Move ownership of tilesets
      - Moves the ownership of tilesets from Map to an object implementing `TilesetCache`
      
      * Clean up
      
      * More cleanup
      
      * Organize layers into modules
      
      * Further modularization
      
      * Add layer wrappers
      
      * Implement `Clone + PartialEq + Debug` for wrappers
      
      * Fix example
      
      * Fix all tests except for test_infinite_tileset
      
      * Move layer utils to its own module
      
      * Better `Map::layers` documentation
      
      * `TilesetCache` -> `cache::ResourceCache`
      
      * Add `ResourcePath`, rename and add errors
      
      * Interface changes
      - Move embedded tilesets from cache to map
      - Store `Option<LayerTileData>` instead of `LayerTileData`
      
      * parser ->`&mut impl Iterator<Item=XmlEventResult>`
      
      * Document that tilesets are ordered by first GID
      
      * Fix the layer tiles using GIDs issue
      
      * Run `cargo fix`
      
      * Fix `test_infinite_tileset` tests
      
      * Implement a way to access object tile data
      
      * Rename `TiledWrapper` to `MapWrapper`
      
      * More efficient `get_or_try_insert_tileset_with`
      
      * Add `ResourcePathBuf`, use `Rc<Tileset>` in `Map`
      
      * Remove `MapTileset::first_gid`
      
      * Run `cargo fix`
      
      * Remove unrelated `Tileset` changes
      
      * Requested changes
      
      * Avoid reference counting when accessing tiles
      
      * Store tile data instead of (u32, u32)` in objects
      
      * Remove unneeded functions from `ResourceCache`
      
      * Address PR comments
      
      * Misc improvements in `layers::tile`
      
      * Improve example
      
      * Convert `LayerTile` properties to fields
      
      Co-authored-by: default avatarThorbjørn Lindeijer <bjorn@lindeijer.nl>
      df98e9f3
    • Alejandro Perea's avatar
      Add layer tint color; Fix `Color` parsing issues (#150) · ce73c547
      Alejandro Perea authored
      * Fix #148
      
      * Close #85
      
      * Close #149
      
      * Fix just one small issue
      
      * Update changelog
      ce73c547
  10. Feb 03, 2022
    • Thorbjørn Lindeijer's avatar
      Some Cargo.toml updates (#139) · 2a92b1a3
      Thorbjørn Lindeijer authored
      * Added "game-development" to "categories"
      * Added "gamedev" to "keywords"
      * Updated repository URL
      * Updated dependencies
      * Removed broken "documentation" URL
      2a92b1a3
  11. Jan 26, 2022
    • perlindgren's avatar
      Add parallax support (#101) · 75e0869c
      perlindgren authored
      75e0869c
    • Alejandro Perea's avatar
      Contain all layer types in an enum (#131) · 968073b0
      Alejandro Perea authored
      * Contain all layer types in an enum
      
      * Implement `as_xlayer` for `LayerType`
      
      * Make id optional
      
      * Rename `ty` to `layer_type`
      
      * Remove `layer_index`
      
      * Move `as_x` functions to tests
      
      * Fix build
      968073b0
    • Thorbjørn Lindeijer's avatar
      Expose types at the top level (#132) · e3d0a5c3
      Thorbjørn Lindeijer authored
      * Expose types at the top level
      
      While the modules are great for organizing the code internally, it is more
      convenient for users of the create when the types are available at the top
      level. This avoids the verbosity like "map::Map".
      
      * Changelog updated
      
      Removed the lines stating where which class has been moved, since all these
      classes are not available at the top level again.
      
      Also removed some things which I didn't think we actually noteworthy for people
      reading up on what had changed.
      
      * Restored some changelog items
      
      Removal of these items unrelated to how the data types are exposed.
      e3d0a5c3
  12. Jan 25, 2022
  13. Jan 24, 2022
  14. Jan 03, 2022
  15. Jan 02, 2022
  16. Dec 30, 2021
  17. Dec 29, 2021
Loading