5

私はMIT Scratchで教育用の簡単なゲームをプログラミングしていて、スプライトを別のスプライトに向けたいと思っています(私たちのヒーロー船に続くエイリアン船を考えてください)。エイリアンの船をヒーローの方に向けるの簡単です。

point towards 'hero'

しかし、私が本当にやりたいことは、次のようなより段階的なものです。

if alien direction (in degrees) > direction of hero: turn -2 degrees
if alien direction (in degrees) < direction of hero: turn 2 degrees

では、「ヒーローの方向」はどのように決定すればよいのでしょうか?

4

2 に答える 2

6

残念ながら、これを取得するための組み込みの方法はないようです。そのため、三角法が必要です。スプライト1からスプライト2への方向を計算するには、xとyの1から2までの変位を計算してから、atan関数を使用して必要な角度を見つけます。

別のスプライトに対する角度を計算するスクリプト

エイリアンの船が向いている方向を基準にした方向が実際に必要なので、ベクトル積(別名クロス積)を使用する方がよい場合があります。

ここに画像の説明を入力してください

ここのスクリーンショットは、このScratchプロジェクトから取得したものです。

于 2013-03-04T14:10:41.663 に答える
4

調べる方法としてポイント トゥワードを使用します。

set temp to direction
point towards hero
if temp > direction
   set direction to temp-2
else if temp < direction
   set direction to temp-2
else
   set direction to temp
于 2013-04-25T14:03:08.230 に答える