dans gratter , il y a une condition dans la catégorie de détection appelée toucher em>, qui peut avoir bord em> comme paramètre. p>
étant donné que la condition renvoie true, comment puis-je dire quel bord em> a été touché (c'est-à-dire le haut, le bas, le bord gauche ou droit de la scène)? P>
Alternativement: Comment dire les dimensions d'une scène? J'ai travaillé sur cette position (x = 0, y = 0) est au milieu de la scène. Où sont situés les quatre points de coin? P>
3 Réponses :
Faites 4 sprites, toutes les lignes minces de toute couleur que vous voulez. Deux verticaux et deux horizontales. Placez-les sur les bords de votre projet. Ajoutez un bloc de démarrage suivi d'un effet d'effet défini sur 100 blocs dans chacune de ces quatre lignes. Cela cache la ligne lorsque le projet est joué. Si vous nommez les lignes supérieure, en bas, à gauche, à droite, il est facile de tester quel bord une touche Sprite différente, car vous pouvez avoir des blocs exécutés après un sprite touche une autre (les bords). P>
Le projet entier est de 360 hauts et 480 de large, avec 0,0 étant dans le centre exact. Toujours. P>
Je pense que la réponse @ user2144827 est probablement la meilleure façon de le trouver, car la fabrication de 4 nouveaux sprites juste pour détecter quel bord d'un sprite a été touché est très inefficace. Cela rend les choses malganisées et si vous aviez plusieurs sprites (ou clones) qui en avaient besoin?
Vous pouvez également le faire comme ceci: (modifier la valeur 239 (ou moins) à votre but, et vous pouvez suivre le bord droit) et x <- 239 code> Si vous suivez la partie gauche. P> p>
Dans la catégorie toucher x? code> bloc.
x code> peut être sélectionné comme
bord code>. p>
C'est la bonne réponse, définitivement !!
Le Wiki de Scratch explique le système de coordonnées de manière approfondie ici