microsoft / pxt-arcade

Arcade game editor based on Microsoft MakeCode
https://arcade.makecode.com
MIT License
480 stars 207 forks source link

Update documentation for Jan release #2923

Closed Jaqster closed 3 years ago

Jaqster commented 3 years ago

We've got a few new API's we'll need reference docs for in this release:

Jaqster commented 3 years ago

I also think we need examples and explanations for each Sprite property... these are getting a bit complicated.
https://arcade.makecode.com/reference/sprites/sprite/set-flag @jwunderl - I'm wondering about the name "no tile collisions" - don't you mean walls? Name is confusing to me about what this does...

jwunderl commented 3 years ago

Easy to change the name if you'd like; that flag is effectively 'does this sprite interact with the tilemap', so turning it on will make the sprite pass through walls & not trigger 'wall hit' / 'tile overlap' events

Jaqster commented 3 years ago

Hmmm... okay, so it's not just Walls, it's also Tile Overlaps. Hmmm... what about removing the "ghost" property, and instead replacing with "ghost tiles" and "ghost sprites" to make it more clear? User would have to use 2 properties instead of just 1 for previous functionality, and we'd have to support backward compat... but what do you think?

jwunderl commented 3 years ago

I guess the question would be whether they know what ghost means because it's intuitive that ghost == pass through, or if they know what it means because they've used arcade long enough to figure it out - if ghost is intuitive, changing it that way makes sense, but if it's something to be learned I think the 'no sprite overlaps' might be more obvious. @kiki-lee I feel like you would have thoughts / insight on this?

If we want to drop ghost, for backwards compat (besides tutorials) we could just leave ghost there but hidden from the dropdown, I believe we support that with hidden=true as we switched some blocks in minecraft due to typos / etc

kiki-lee commented 3 years ago

Is 'ghost' a combination of going through tiles AND sprites without collisions? If so, it might work to have:

ghost ghost through sprites ghost through tiles ghost through walls

Jaqster commented 3 years ago

Correct. I think we want to minimize the amount of flags we show though. We can get rid of "ghost" in the drop-down and replace with 2 properties. And effectively "ghost through walls" + "no tile overlaps" = no tile collisions.

kiki-lee commented 3 years ago

Then everyone who wants to ghost through everything requires two blocks instead of 1, which I think is objectively worse than having more flags in the dropdown.

ganicke commented 3 years ago

Closing with -

https://github.com/microsoft/pxt-common-packages/pull/1216 https://github.com/microsoft/pxt/pull/7807