SRC質問掲示板Mk2
(現在 過去ログ62 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■11770 / inTopicNo.1)  50階層を越えるサブルーチンの呼び出しは出来ません
  
□投稿者/ 御刀 -(2003/12/29(Mon) 15:26:59)
    どーも、御刀です。
    実はパイロット養成イベントを作成してみたんですけど、それで能力値の上昇する値を
    表示させる処理を別のラベルに表記して、キーで入力するたびに数字が増えるようにし
    たんです。そこで、やっぱり人間ですから調子に乗ってどんどん数字を増やしていった
    わけです。すると、50回目で$(記事タイトル)のようなエラーメッセージが出て、SRCが
    終了されてしまったのです!こんなことがプレイ中に発生したら(とくにセーブを忘れ
    ていた時とか)シャレになりませんよね?どうにかこれを回避する方法はないものでし
    ょうか?

    一応、それのソースです(↓)。動作は特に問題ありません。


    待ち2:
    Font 12pt #FFFFFF Bold
          :
          :
    HotPoint 格闘UP 263 162 16 16
    HotPoint 射撃UP 423 162 16 16
    HotPoint 命中UP 263 192 16 16
    HotPoint 回避UP 423 192 16 16
          :
          :

    Do
    Wait Click
    Loop While (選択 = "")
    Switch 選択
           :
           :
    Case 格闘UP
    ClearPicture 280 160 319 180
    Incr 格闘増分
    Incr 必要 4
    Font 14pt #3CD1FF Bold
    PaintString 280 160 (Info(パイロット,養成者,格闘) + 格闘増分)
    計算
    Refresh
    If 格闘増分 > 0 Then
     HotPoint 格闘DOWN 245 162 16 16
    EndIf
    待ち2

          :
          :
    EndSw

    計算:
    ClearPicture 330 90 475 140
    Font 16pt #FFFFFF Bold
    PaintString (400 - TextWidth(必要)) 90 必要
    If (PP[養成者] - 必要) < 0 Then
     Font 16pt #FF2222 Bold
    EndIf
    PaintString (400 - TextWidth(PP[養成者] - 必要)) 120 (PP[養成者] - 必要)
    Refresh
    Return

引用返信/返信 削除キー/
■11771 / inTopicNo.2)  Re[2]: 50階層を越えるサブルーチンの呼び出しは出来ません
□投稿者/ GAMEMASTER -(2003/12/29(Mon) 15:37:04)
http://nagoya.cool.ne.jp/gamemaster/
     GAMEMASTERです。

    > 実はパイロット養成イベントを作成してみたんですけど、それで能力値の上昇する値を
    > 表示させる処理を別のラベルに表記して、キーで入力するたびに数字が増えるようにし
    > たんです。そこで、やっぱり人間ですから調子に乗ってどんどん数字を増やしていった
    > わけです。すると、50回目で$(記事タイトル)のようなエラーメッセージが出て、SRCが
    > 終了されてしまったのです!こんなことがプレイ中に発生したら(とくにセーブを忘れ
    > ていた時とか)シャレになりませんよね?どうにかこれを回避する方法はないものでし
    > ょうか?
    >
    > (後略)

     エラーメッセージから察するにSRCの仕様と思われますので、回避する手段は恐らく存在しません。
     このような現象が発生しないようにサブルーチンを改めましょう。

     参考になれば幸いです。

     もう時間がないようでございますね。では、これにて退散させてもらいましょう。
引用返信/返信 削除キー/
■11772 / inTopicNo.3)  Re[2]: 50階層を越えるサブルーチンの呼び出しは出来ません
□投稿者/ ヒロキ -(2003/12/29(Mon) 16:21:11)
    こんにちは、ヒロキです。

    >If 格闘増分 > 0 Then
    > HotPoint 格闘DOWN 245 162 16 16
    >EndIf
    >待ち2

    ここんトコの「待ち2」を

    Goto 待ち2

    とかしてやれば良いんじゃないですかね。
    ラベル名を直に書いちゃってるせいで
    サブルーチン呼び出しになってるぽいですし。

    試してないんで、これでちゃんと動くかは知りませんけど


    以上です。それでは
引用返信/返信 削除キー/
■11788 / inTopicNo.4)  Re[3]: 50階層を越えるサブルーチンの呼び出しは出来ません
□投稿者/ 御刀 -(2003/12/30(Tue) 10:41:25)

    > ここんトコの「待ち2」を
    >
    > Goto 待ち2
    >
    > とかしてやれば良いんじゃないですかね。
    > ラベル名を直に書いちゃってるせいで
    > サブルーチン呼び出しになってるぽいですし。

    おおっ!エラー文がでなくなりました!
    つまりは、Gotoがない場合サブルーチンのサブルーチンのサブルーチン…
    ということになってその階層とやらが深くなっていって
    しまったというわけですな。これからは気をつけます;;

    ヒロキさん、ありがとうございました。

解決済み!
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

- Child Tree -
- Antispam Version -