Closed konsumer closed 1 year ago
Okay, sounds fine to me! PR is welcome.
Some more notes on this:
I had a map that saved like this:
"objects":[
{
"class":"player",
"gid":1,
"height":16,
"id":1,
"name":"",
"rotation":0,
"visible":true,
"width":16,
"x":384,
"y":352
}
]
Not even quite sure how I managed to save this, but it made all my code looking for type
not work, so I think it may be some older compatibility setting, in save. I didn't hand-edit or anything, just some option when saving in Tiled. The PR simply treats class
as if it's type
, since they seem to be interchangeable. Like this is the current format, without editing anything by hand, just re-saving it:
[
{
"gid":1,
"height":16,
"id":1,
"name":"",
"rotation":0,
"type":"player",
"visible":true,
"width":16,
"x":384,
"y":352
}
]
Tiled editor, itself, seems to do the same thing. I opened the file with class
and it worked fine (showing in the UI as Class
) then saved it in a different location, and it renamed it to type
with all the data in the same place. When I open that fixed file again, it looks the same:
Now, that it's saved with type
it's not really a big deal to me either way. Not totally sure how I managed to save it with class
but the PR would make it work for both types of files, and doesn't break the old behavior.
I think the source of the prob is this:
type | string | The class of the object (was saved as class in 1.9, optional)
So, the field just got renamed in 1.9. Supporting both type
and class
and putting in type
in the struct (as I do in PR) seems to be the correct behavior, to me.
Thanks for the help!
I swear this worked before, but I have objects like this:
I want the
Class
field to just show up asobject->type.ptr
. If I modify that class-parser part like this it works:Since there is no
type
field, it seems to me like a pretty safe overload.Want a PR for this?