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


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0110
のほほんズError 9「サブルーチンやループのネストが深すぎます」について3解決


のほほんズ

リンク

2007/1/10(Wed) 16:04:28|NO.4721

みなさんこんにちは
毎度自分の質問に丁寧に答えてくださっているかた
どうもありがとうございます

早速質問なのですが
Error 9「サブルーチンやループのネストが深すぎます」についてですが
自分の作っているゲームではどうしてもループを何回も利用します
無理やりこのエラーを出さない方法はあるのでしょうか
あとネストとはなんですか
それも教えていただければありがたいです

回答よろしくお願いします



この記事に返信する


ゆちボン

リンク

2007/1/10(Wed) 16:34:03|NO.4724

>無理やりこのエラーを出さない方法はあるのでしょうか
それはonerrorを使えばできそうですが...
すこし、ループを減らせるところは減らしてみましょう。
汚くなるけど、以下のような方法もとれます。
gotoを使う。(近いほうにジャンプするやつを使って)
マクロのforを使う。(HSPのforは使い方知らないけど...)

>あとネストとはなんですか
repeat 10
repeat 10
repeat 10
〜処理〜
loop
loop
loop
見たいに何個も重ねているのがネストです。
ちなみに上の例は、1000回繰り返します。



Irisawa

リンク

2007/1/10(Wed) 17:25:54|NO.4726

サブルーチンでreturnさせなかったり、ループの中でgotoしていたりするとネストが
解消されずに深くなりすぎることがよくあります。
普通に使用するだけでは滅多に深くなりすぎることはないのでスクリプト内に問題がある
可能性が考えられます。
デバッグウィンドウでネストレベルを確認しながら一度スクリプトを見直してください。



のほほんズ

リンク

2007/1/10(Wed) 17:43:11|NO.4728

あっそうか
onerror命令をを使えばよかったのか
なるほど
一応エラーは出なくなりました
でも結構重くなるので
今後スクプリトを改善していきたいです

回答ありがとうございます



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