私は結晶を生成するモンスターを持っています。私は各クリスタルがモンスターの軌道に乗ることを望みますが、複数のクリスタルがある場合、それらのクリスタルが互いから等距離で周回するようにします。私は既にこれを持っている2つのコードブロックを使ってこれを動作させようとしてきましたが、それぞれ異なるものがあり、私はそれをすべて行う1ブロックのコードが必要です。 がhttps://www.youtube.com/watch?v=ACclpQBsjPo等間隔の旋回するオブジェクトAS3
このコードブロックは、量に基づいて、モンスターの周りに結晶を配置:ここ
orbitRadius = 110;
angle += orbitSpeed;
rad = (angle * (Math.PI/180));
orbitX = monster.x + orbitRadius * Math.cos(rad);
orbitY = monster.y + orbitRadius * Math.sin(rad);
は、それがどのように見えるかのビデオだ:
このブロックは、単にオブジェクトが他を周回することができます結晶があります。
radius = 110;
angle = ((Math.PI * 2)/targetArray.length) * targetArray.indexOf(this);
orbitX = monster.x - (radius * Math.cos(angle));
orbitY = monster.y - (radius * Math.sin(angle));
そして、ここでは、このビデオだ:https://www.youtube.com/watch?v=TY0mBHc2A8U
どのように結晶を均等に配置するか分かりませんとは同時にモンスターの周りを丸くします。これを達成するために何をする必要がありますか?
まあ、私は間違いなく階層的なやり方をしていません。それは本当にグロスだろう。 私の解決策はマイナーな微調整だけではなく、まったく別のアプローチだと思います。私はこれを私の現在のプログラムにどのように翻訳するかを考え出すために時間を費やしていると思います。私はTimerクラスやPointクラスを決して使用しません。あなたの "rotation"変数は、オブジェクトの回転プロパティを参照するのではなく、一意の変数であると仮定します。 –
ああ、まず、** Sprite **のサブクラスではなく、この宣言を作成しました。一定。また、オプション1についてのあなたの嫌悪感を理解していません。これは、従来のFlashのやり方です。 – Organis