初めましてと質問
投稿者 : HAL(host-219-109-136-75.n-cube.ne.jp)
- 2002/12/04(Wed) 13:57
No.2105
|
|
|
|
|
初めての書き込みになります。 チュートリアルの縦シューティングを参考にして 横シューティングを作成しようと孤軍奮闘していたのですが、 問題に直面しました。 チュートリアルの縦シューのプログラムを書き換えて、 xをy、yをx、screenHightを・・・つづり忘れましたが 横のやつに変えて、やっていたのですが、 いまいち、敵機の動きを途中から変えるのがうまく行きません。 今度プログラムを貼り付けようと思いますが、 お耳(目?)に入れておいて頂けると幸いです。
|
Re: 初めましてと質問
投稿者 : HAL(host-219-109-136-75.n-cube.ne.jp)
- 2002/12/04(Wed) 14:17
No.2106
|
|
|
|
extends SpriteChar; function onDie() { appear(new 爆発(x , y ,$pat_+0)); } nexty=rnd(50)+100; while (x<nexty) { x=x-2; for (t in $敵イエロー) { if ( t is 弾丸 && crashTo(t) ) die(); } if (crashTo($自機)) $自機.die(); update(); } if (y<$自機.y) vy=2; else vy=-2; while (x<$screenWidth) { x=x-3; y=y+vy; update(); }
分かりづらいかもしれませんが、 こんな感じです。
|
Re: 初めましてと質問
投稿者 : hoge-(ppp02.kake.info.waseda.ac.jp)
- 2002/12/04(Wed) 14:52
No.2108
|
|
|
|
x=x-2; はx座標を2減らす命令です。x座標が減ると左に移動します。 また while (x<nexty) { は、x が nextyより小さい間、while{ 以降を繰り返し実行します。
「xがnextyより小さい」は 「x がnexty より左側にいたら」と置き換えることができます
これらを組み合わせて while (x<nexty) { x=x-2; とすると、次のような動きになります。
xがnextyより左ならば x < nexty <---------| | x=x-2 左に移動 この条件だと左にずっと移動し続けますので、次の動きをすることができません。
この場合、つぎのどちらかの対処をするとよいでしょう 「左に移動」を「右に移動」に変える 「xがnextyより左ならば」を「 xがnextyより右ならば」に変える
|
Re: 初めましてと質問
投稿者 : HAL(host-219-109-136-75.n-cube.ne.jp)
- 2002/12/04(Wed) 18:25
No.2109
|
|
|
|
「xがnextyより左ならば」を「 xがnextyより右ならば」に変える を試して見ましたが、 「inの〜配列ではありません」が出ました。 ・・・っむむむむむむむ・・・・
|
Re: 初めましてと質問
投稿者 : hoge-(ppp02.kake.info.waseda.ac.jp)
- 2002/12/04(Wed) 21:42
No.2110
|
|
|
|
for (t in $敵イエロー) { in の後ろとは $敵イエロー のことです。この部分は普通 $chars 以外のものは書きません。 for (t in $chars) { をためしてください
|
Re: 初めましてと質問
投稿者 : HAL(host-219-109-136-75.n-cube.ne.jp)
- 2002/12/05(Thu) 12:51
No.2111
|
|
|
|
そうですか、 ですが、オブジェクト名、クラス名、 を“敵イエロー”にしたので、そこも変更してみたのですが…
それと、初めから設定しなおして見たりしてのですが、 どうやら、 x=x-2 の後に for (t in $敵イエロー) といれると発生します。 恐らくこの敵イエローが原因だと思いますが、 前文に書きました、 オブジェクト名、クラス名、を“敵イエロー” にした、と言うことです、 これを踏まえた原因の指摘をいただきたいのですが。
どうも長くてすいません。
|
Re: 初めましてと質問
投稿者 : HAL(host-219-109-136-75.n-cube.ne.jp)
- 2002/12/05(Thu) 12:54
No.2112
|
|
|
|
書き忘れましたが、この横シューは右から左へと敵機がやってくるようにしたいわけです。
|
Re: 初めましてと質問
投稿者 : HAL(host-219-109-136-75.n-cube.ne.jp)
- 2002/12/05(Thu) 17:10
No.2113
|
|
|
|
・・・うわっ! 出来た! ありがとーごぜー増した。 では。
|
|