無題
投稿者 : ボルゾイ(YahooBB220030023069.bbtec.net)
- 2004/07/26(Mon) 13:13
No.6703
|
|
|
|
|
今横スクロールシューティングを作っているんですが、オブジェクトをボールみたいに画面いっぱいに、いろんな方向にはねるようにしたいんですけどどうすれば出来ますか?
|
Re: 無題
投稿者 : デックン(YahooBB220018124018.bbtec.net)
- 2004/07/26(Mon) 22:55
No.6714
|
|
|
|
跳ね返り
投稿者 : nuntora(210-20-67-194.home.ne.jp)
- 2004/07/27(Tue) 01:43
No.6715
|
|
|
|
画面の上下左右で跳ね返ることができるようにするのは、難しい部類だと思います。angleを利用して上手にプログラムを行ってみてください。 TonyuBBSの記事No.1127と同記事No.5994を参考にしてみてください。
|
Re: 無題
投稿者 : hkr(gta.kinet-tv.ne.jp)
- 2004/07/27(Tue) 07:25
No.6716
|
|
|
|
画面の上下左右で跳ね返るオブジェクトはノビローさんのシューティングの敵で そんなのがいたような気がします。参考にしてみてください。
|
Re: 無題
投稿者 : 零戦(YahooBB220046180020.bbtec.net)
- 2004/07/27(Tue) 13:38
No.6721
|
|
|
|
自分も似たような敵を作ったことがありますが、こんな感じでうまくいってます。
/* * vx,vy はそれぞれ横・縦方向の速度。 */
prex = x; prey = y;
x += vx; y += vy;
// 画面の左右端に当たったら跳ね返る if (x <= 0 && prex > 0) vx = vx * -1; else if (x >= $screenWidth && prex < $screenWidth) vx = vx * -1;
// 画面の上下端に当たったら跳ね返る。 if (y <= 0 && prey > 0) vy = vy * -1; else if (y >= $screenHeight && prey < $screenHeight) vy = vy * -1;
|
Re: 無題
投稿者 : ボルゾイ(YahooBB220030023069.bbtec.net)
- 2004/07/27(Tue) 13:54
No.6722
|
|
|
|
皆さんありがとうございます。零戦さん、本当に申し訳ありませんが、始めたばかりなのでまずそのまま零戦さんの文を そのままコピーして入れてみたんですが何も起こりません。 なぜでしょうか?
|
Re: 無題
投稿者 : 零戦(YahooBB220046180020.bbtec.net)
- 2004/07/27(Tue) 14:30
No.6723
|
|
|
|
最初に変数vx,vyに数値を代入してみてください。
|
Re: 無題
投稿者 : ボルゾイ(YahooBB220030023069.bbtec.net)
- 2004/07/27(Tue) 14:56
No.6724
|
|
|
|
Re: 無題
投稿者 : ボルゾイ(YahooBB220030023069.bbtec.net)
- 2004/07/27(Tue) 14:57
No.6725
|
|
|
|
Re: 無題
投稿者 : 零戦(YahooBB220046180020.bbtec.net)
- 2004/07/27(Tue) 17:32
No.6728
|
|
|
|
こちらでテストして、うまくいきました。 テストに使ったオブジェクトのクラスのコードを書いときます。
extends SpriteChar;
vx = 3; vy = 3;
while (1) { prex = x; prey = y; x += vx; y += vy; // 画面の左右端に当たったら跳ね返る if (x <= 0 && prex > 0) vx = vx * -1; else if (x >= $screenWidth && prex < $screenWidth) vx = vx * -1; // 画面の上下端に当たったら跳ね返る。 if (y <= 0 && prey > 0) vy = vy * -1; else if (y >= $screenHeight && prey < $screenHeight) vy = vy * -1; update(); }
|
Re: 無題
投稿者 : ボルゾイ(YahooBB220030023069.bbtec.net)
- 2004/07/27(Tue) 21:25
No.6732
|
|
|
|
成功しました。零戦さん、皆さんありがとうございました
|
|