Hm, somehow you have the old form of sprite kinds in there (as an enum, instead of as constants) - if you go to typescript you’ll see that the overlap event has the new constants (SpriteKind.Player, etc), but the sprites themselves are using the old style (SpriteKindLegacy.Player). The two things have the same names, but are not the same value - sort of like how there’s a sprites.create and an images.create
Is this an old project you have, or copied from somewhere? Not sure how that would show up otherwise (and it should have upgraded itself in the first place, though I suppose this might have upgraded then been added on to.)
I have saw that the sprites are using the old style (SpriteKindLegacy.Player) in typescript.
After testing, I have found that if I select Simplified Chinese language, when I create a sprite in Blocks, it will use the old style (SpriteKindLegacy.Player) in TypeScript. But if I select the other languages, it’s OK.
The translation had overridden the type of the spritekind, which broke the block as you showed. This has been broken / mismatched for 7 (!!!) months: https://crowdin.com/translate/kindscript/2958/en-zhcn#q=spritetype … started to change them but doing so will potentially cause inconsistencies (e.g. the blocks won’t work together as upgrade rules won’t necessarily be applied) so will see about it in the morning.
Thank you for letting us know, will have to think of a way to to proactively catch this in the future. (@peli maybe something along the lines of a cron job gh action that pulls all target translations and compares the parameter names / shadow blocks
/ etc to make sure api’s have the right shape after translations? even with the .shadow format it’s still very easy for translation mistakes to break blocks without us noticing)