Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API Notice: File object inputs, Layer integration #29

Open
marshallward opened this issue Apr 5, 2016 · 7 comments
Open

API Notice: File object inputs, Layer integration #29

marshallward opened this issue Apr 5, 2016 · 7 comments

Comments

@marshallward
Copy link
Owner

marshallward commented Apr 5, 2016

This is a notice and request for comment on upcoming API changes. This will resolve a number of outstanding issues (#15, #25, #28).

The next tagged release will adopt the following changes:

  • TMX files will no longer be specified by filepath. Instead, the Map object will be created using an already-opened file object. While this will require additional file and resource management from the user, it will eliminate any filesystem dependencies from TiledSharp. This will also allow compilation as a Portable Class Library, and run on a greater number of platforms.

  • The ObjectGroup and ImageLayer lists will be merged into Layers, which more closely resembles the TMX layout format. Elements can still be accessed by layer name, so this should not introduce any major problems.

    If two layers of different types were using the same name, then there may be some internal namechanges, but this is probably not a major issue.

The following change is also being considered:

The following changes have been completed:

Any comments on these changes (including approval) can be posted here.

@TheMightyGit
Copy link

Sounds good. As long as it still works with Unity I'll be a happy bunny :) Thank you for TiledSharp!

@hach-que
Copy link

As long as "Instead, the Map object will be created using an already-opened file object" means we can pass a Stream into it, everything should be good.

@marshallward
Copy link
Owner Author

I haven't followed up on this as I liked, but yes - the intention was to have a Stream input in place of the path-based constructor, which has been more trouble than it's worth.

Things have finally calmed down for me workwise, so hopefully I'll have time to get this finished up.

@Cryru
Copy link

Cryru commented May 6, 2017

Would it be possible to have an overload where you pass a string as well?

@marshallward
Copy link
Owner Author

Yeah I'm OK with that.

@briankendall
Copy link

Any word on these changes? I've been using TiledShape in my own personal project and made some modifications to it similar to #28. I've also written some code that allows loading maps that have infinite size, if you'd like me to make a pull request for that at some point.

@marshallward
Copy link
Owner Author

It's probably obvious to everyone that I've had to put anything related to this project at the bottom of my work (I haven't looked at C# code in years), so I think at this point it's up to others to improve things. So I'm sure that others would welcome the changes you've made, and I'm happy to integrate them.

I'm also open to handing this project over somewhere else, such as a Tiled organization or something similar.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants