お知らせ掲示板 | 質問掲示板 | 不具合報告掲示板 | 機能要望掲示板 | 雑談掲示板

  新規投稿 ┃全記事一覧 ┃検索 ┃設定 ┃サポートフォーラムトップ  
263 / 401 ツリー ←次へ | 前へ→

GOSUBについて 長谷川 2011/10/27(木) 4:43
Re:GOSUBについて 穂乃井 2011/10/27(木) 12:22
Re:GOSUBについて 長谷川 2011/10/30(日) 5:19
IF[]〜ELSE[]〜IFEND[]処理内もメッセージを記述でき... KT 2011/11/3(木) 21:36
Re:IF[]〜ELSE[]〜IFEND[]処理内もメッセージを記述... 穂乃井 2011/11/5(土) 4:40
Re:IF[]〜ELSE[]〜IFEND[]処理内もメッセージを記述... KT 2011/11/7(月) 0:08

GOSUBについて
 長谷川  - 2011/10/27(木) 4:43 -
  
お忙しいところ、失礼いたします。

GOSUB機能についてなのですが、マニュアルを見ると「スクリプトジャンプとしては使用しないでください」と書かれていました。

これは同じファイル内では禁止という意味でしょうか?
違うファイルにスクリプトジャンプする場合もバグの可能性などが出てしまうのでしょうか?
当方が作成しているゲームだとシナリオファイルが多数あり、また、一本道で進む訳ではないのでGOSUBを使用して、と考えていたのですが……。

今更な質問かもしれませんが、ご返答いただければと思います。
引用なし
パスワード

Re:GOSUBについて
 穂乃井 WEB  - 2011/10/27(木) 12:22 -
  
>お忙しいところ、失礼いたします。
>
>GOSUB機能についてなのですが、マニュアルを見ると「スクリプトジャンプとしては使用しないでください」と書かれていました。
>
>これは同じファイル内では禁止という意味でしょうか?
>違うファイルにスクリプトジャンプする場合もバグの可能性などが出てしまうのでしょうか?
>当方が作成しているゲームだとシナリオファイルが多数あり、また、一本道で進む訳ではないのでGOSUBを使用して、と考えていたのですが……。
>
>今更な質問かもしれませんが、ご返答いただければと思います。

GOSUB自体を禁止、という意味ですね。
代わりにフラグと \GO.IF を駆使して分岐する形で実現してもらう感じになります。
これはセーブデータの安全性を確保する都合上、
いままでそういう仕様だったのですが、ただ現在、
安全性を確保しつつ \GOSUB を実装するメドがなんとかつきそうでして、
近い将来には \GOSUB を実装したいと考えています。
引用なし
パスワード

Re:GOSUBについて
 長谷川  - 2011/10/30(日) 5:19 -
  
>GOSUB自体を禁止、という意味ですね。
>代わりにフラグと \GO.IF を駆使して分岐する形で実現してもらう感じになります。
>これはセーブデータの安全性を確保する都合上、
>いままでそういう仕様だったのですが、ただ現在、
>安全性を確保しつつ \GOSUB を実装するメドがなんとかつきそうでして、
>近い将来には \GOSUB を実装したいと考えています。

お忙しいところ返信ありがとうございます。
GOSUB自体を禁止ということですが、近い将来に実装してもらえそうということで、心待ちにしています。
何卒よろしくお願いします!
引用なし
パスワード

IF[]〜ELSE[]〜IFEND[]処理内もメッセージを記述で...
 KT  - 2011/11/3(木) 21:36 -
  
 GOSUB呼び出しサブルーチン内でメッセージが使えない理由に少し似ていますが、やはりIF系命令処理内のメッセージ記述も禁止でしょうか?(YU-RISのマニュアルに記述があった様な気もしますが…)

それは、
例えばIF[]〜ELSE[]ブロック内のメッセージでセーブが行われたとします。
→ゲームを終了させ、再び起動します。※
→そのセーブデータをロードすると、当然IF[]〜ELSE[]ブロック内で実行が再開されます。
→処理がELSE[]に来た時、想定された処理を行えるかどうかという懸念があります。
 (※の処理で、IF[]での判定結果が消えてしまっている可能性がある)
引用なし
パスワード

Re:IF[]〜ELSE[]〜IFEND[]処理内もメッセージを記...
 穂乃井 WEB  - 2011/11/5(土) 4:40 -
  
> GOSUB呼び出しサブルーチン内でメッセージが使えない理由に少し似ていますが、やはりIF系命令処理内のメッセージ記述も禁止でしょうか?(YU-RISのマニュアルに記述があった様な気もしますが…)
>
>それは、
>例えばIF[]〜ELSE[]ブロック内のメッセージでセーブが行われたとします。
>→ゲームを終了させ、再び起動します。※
>→そのセーブデータをロードすると、当然IF[]〜ELSE[]ブロック内で実行が再開されます。
>→処理がELSE[]に来た時、想定された処理を行えるかどうかという懸念があります。
> (※の処理で、IF[]での判定結果が消えてしまっている可能性がある)

マニュアルに書き忘れてしまい申し訳ないです。
IF[]〜ELSE[]〜IFEND[] もブロック内でシナリオ記述するのはERIS上では本来は非推奨ですね。
ただ、セーブデータに各種ネスト情報は保存されているので、
YU-RIS マニュアルの IF[]〜ELSE[]〜IFEND[] の説明画像にもある通り、
IF[] の中や GOSUB[] の先でセーブしても正しく動くと思います。
ただ仕事では一切使っておらず、十分な動作テストをしていないため、
多分大丈夫だとは思いますが、ちょっと保証はできません。
ので、一応公式としては、ERIS上では \GO.IF とラベルで分岐してもらうのを推奨、
ただし無保証という形で IF[]〜ELSE[]〜IFEND[] を使用することも可能、という感じでしょうか。
GOSUB[] に関しては代わりとなる \GOSUB を実装予定なので、一応禁止とさせてください。
引用なし
パスワード

Re:IF[]〜ELSE[]〜IFEND[]処理内もメッセージを記...
 KT  - 2011/11/7(月) 0:08 -
  
>> GOSUB呼び出しサブルーチン内でメッセージが使えない理由に少し似ていますが、やはりIF系命令処理内のメッセージ記述も禁止でしょうか?(YU-RISのマニュアルに記述があった様な気もしますが…)
>>
>>それは、
>>例えばIF[]〜ELSE[]ブロック内のメッセージでセーブが行われたとします。
>>→ゲームを終了させ、再び起動します。※
>>→そのセーブデータをロードすると、当然IF[]〜ELSE[]ブロック内で実行が再開されます。
>>→処理がELSE[]に来た時、想定された処理を行えるかどうかという懸念があります。
>> (※の処理で、IF[]での判定結果が消えてしまっている可能性がある)
>
>マニュアルに書き忘れてしまい申し訳ないです。
>IF[]〜ELSE[]〜IFEND[] もブロック内でシナリオ記述するのはERIS上では本来は非推奨ですね。
>ただ、セーブデータに各種ネスト情報は保存されているので、
>YU-RIS マニュアルの IF[]〜ELSE[]〜IFEND[] の説明画像にもある通り、
>IF[] の中や GOSUB[] の先でセーブしても正しく動くと思います。
>ただ仕事では一切使っておらず、十分な動作テストをしていないため、
>多分大丈夫だとは思いますが、ちょっと保証はできません。
>ので、一応公式としては、ERIS上では \GO.IF とラベルで分岐してもらうのを推奨、
>ただし無保証という形で IF[]〜ELSE[]〜IFEND[] を使用することも可能、という感じでしょうか。
>GOSUB[] に関しては代わりとなる \GOSUB を実装予定なので、一応禁止とさせてください。
GOSUBとLOOP[]の説明を見てふと思ったのですが、やっぱり非推奨だったんですね。
引用なし
パスワード

  新規投稿 ┃全記事一覧 ┃検索 ┃設定 ┃サポートフォーラムトップ  
263 / 401 ツリー ←次へ | 前へ→
59,455
(SS)C-BOARD v3.8.1β4 is Free.