したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

貴方が作る東方STG〜東方弾幕風 15

157ラズ:2013/09/22(日) 13:12:16 ID:GoiWZCaQ0
大問題が発生です、v版です。

ステージスクリプトの雑魚敵にアニメーションをつけようと思ったのですが
思うように動いてくれません。

@DrawLoop
{
SetTexture(imgEnemy);
if(GetSpeedX == 0) {
SetGraphicAngle(0, 0, 0);
if(EGA >= 0) { SetGraphicRect(*, *, *, *) }
if(EGA >= 8) { // }
if(EGA >= 16) { // }
if(EGA >= 24) { // }
if(EGA >= 32) { // }
if(EGA >= 40) { EGA=0 }
}

else if(GetSpeedX >= 0.1) {
SetGraphicAngle(0, 0, 0);
if(EGA >= 0) { // }
if(EGA >= 8) { // }
if(EGA >= 16) { // }
if(EGA >= 24) { EGA=0 }
}

else {
SetGraphicAngle(180, 0, 0);
if(EGA >= 0) { // }
if(EGA >= 8) { // }
if(EGA >= 16) { // }
if(EGA >= 24) { EGA=0 }
}
SetGraphicScale(1.1, 1.1);
DrawGraphic(GetX(),GetY());
EGA++;
}

EGAはイニシャライズで宣言 =0; です。
かなり汚くてごめんなさい。

症状は
画面左端から雑魚敵を出して、そのまま右側にまっすぐ進ませます。
GetSpeedXというのはX方向の移動量を取得する関数とのことでしたので、
弾幕風のXは右側に行くほど大きくなります。

つまり、左からでて右に行くには
if(GetSpeedX >= 0.1)が当てはまるはずです。(右側に進むアニメーション)
なのに、複数の敵を出してみると、
左に進むアニメーションだったり右に進むアニメーションだったりバラバラになってしまいます。

しかも再生ごとに毎回変わります。

どこか書き方が悪いんでしょうか?


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板