HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0930
ルーキーマン原因不明の「未初期化の変数があります」およびerror4「パラメーター式の記述が無効です」4解決


ルーキーマン

リンク

2014/9/30(Tue) 06:16:49|NO.65332

#未初期化の変数があります(key@m0)
ugokanai.hsp(48) : error 4 : パラメーター式の記述が無効です (48行目)
--> if@hsp(find != -1){

このようなエラーが出るのですが、何が原因なのかわかりません。
以下のソースでエラーの原因になっている部分を教えてください


//キー取得 #module #deffunc move var x, var y stick key,15 //キーボード受付 if(key&1):x-=2 if(key&2):y-=2 if(key&4):x+=2 if(key&8):y+=2 return #global //画面中央の座標(320,200)をとりあえず変数xとyに x = 320 y = 400 //敵の発射口の座標 enemy=1 enemy_x=300 enemy_y=128 etime=55 //敵が弾を発射する間隔フレーム //敵弾 dim eshot ,32 //敵弾があるかどうか dim eshot_x ,32 //敵弾x座標 dim eshot_y ,32 //敵弾y座標 dim eshot_mx,32 //敵弾の進行x dim eshot_my,32 //敵弾の進行y repeat//メインループ redraw 0 //描画準備 color 0,0,0 : boxf if(cnt\etime==0){ //cntはrepeatの回数を意味している //\は余剰なので、フレームがetimeの倍数時に実行 ang=0 //敵弾の発射角 repeat 8 //敵弾の存在を確認 find = -1 repeat length(eshot)//敵弾の最大数ぶんリピート if(eshot(cnt) == 0) : find = cnt : break //敵弾の描画判定 if(find != -1){ eshot(find) = 1 ehost_x(find) =enemy_x ehost_y(find) =enemy_y ang += 45 //敵弾の発射角度を45度ずらし eshot_mx(find)=sin(deg2rad(ang))*3 //ラジアンに変換 eshot_my(find)=cos(deg2rad(ang))*3 } //敵弾の描画 repeat length(eshot) //敵弾描画ループ if (eshot(cnt)==1){ //注目配列IDに存在判定があれば //現在の注目IDの座標に進行座標をたす eshot_x(cnt) += eshot_mx(cnt) eshot_y(cnt) += eshot_my(cnt) //敵弾が画面外にあったら0にする if(eshot_x(cnt)<0 or eshot_y(cnt)<0 or eshot_x(cnt)>>640 or eshot_y(cnt)>>480) : eshot(cnt) = 0 //敵弾のグラ color 255,255,0 : boxf eshot_x(cnt)-8,eshot_y(cnt)-8,eshot_x(cnt)+8,eshot_y(cnt)+8 } loop//敵弾描画ループ loop//敵弾の最大数ぶんリピート loop//8回? } //自機のグラ color 255,0,0 move x,y boxf x-16, y-16, x+16, y+16 await 16 redraw 1 //描画開始 loop//メインループ



この記事に返信する


ルーキーマン

リンク

2014/9/30(Tue) 06:23:40|NO.65333

全行82行、エラーの該当である48行目は

47行目
//敵弾の描画判定

の先頭のif文
	if(find != -1){
です。

変数findの初期化値(43行目,
find = -1
)と
48行目のif文の条件を-1から0や1に変えても同様のエラーが出ました。



noname

リンク

2014/9/30(Tue) 06:52:35|NO.65334

if文の { が全角になっています。
半角に直せば動きます。



さっくん

リンク

2014/9/30(Tue) 07:38:39|NO.65335

>#未初期化の変数があります(hoge)
これは、特に気にしなくてもよいです。
基本はsdimでバッファサイズを指定して初期化します。



ルーキーマン

リンク

2014/9/30(Tue) 18:02:46|NO.65345

見落としていました
エラーは出なくなりました、ありがとうございました



ONION software Copyright 1997-2023(c) All rights reserved.