NScritper Ver.5.00
■ このスレッドは過去ログ倉庫に格納されています
0001牛 ◆JFxYj/S602
2005/09/15(木) 22:36:22ID:Y+mZUT27ゲームエンジンNScripterについて語るスレです。
技術的な質問も可。ただし最低限のマニュアルには目を通してね。
・本家
http://www2.osk.3web.ne.jp/~naokikun/
・うpろだ
http://andolf.hp.infoseek.co.jp/
・前スレ
Ver4.00
http://pc8.2ch.net/test/read.cgi/gamedev/1112550571/
Ver3.00
http://pc8.2ch.net/test/read.cgi/gamedev/1100029774/
Ver2.00
http://pc5.2ch.net/test/read.cgi/gamedev/1082131647/
初代
http://pc5.2ch.net/test/read.cgi/gamedev/1005121290/
その他関連リンクは>>2-5あたり。
0668名前は開発中のものです。
2006/01/11(水) 02:25:57ID:OI+0cLACレスありがとうございました。
自分なりに挑戦して近づける形でやってみます。
0669名前は開発中のものです。
2006/01/11(水) 17:31:44ID:yTqoHMqN誰が書いても同じになるような、例えば単純なバッチファイルなんかには
著作権はないんだけど、複雑なアルゴリズムを実装したスクリプトは、
著作権で保護される。
目安としては、数行を部分的に持ってくる程度なら大丈夫だって感じかな。
0670名前は開発中のものです。
2006/01/11(水) 21:41:39ID:Sn3Wu5xG要は>>667と同じ。
0671名前は開発中のものです。
2006/01/12(木) 20:43:59ID:sqVr66osアルゴリズムは著作権じゃ保護されません。
0672名前は開発中のものです。
2006/01/12(木) 20:54:19ID:EFgx8nAT0673名前は開発中のものです。
2006/01/12(木) 21:10:12ID:sqVr66os0674名前は開発中のものです。
2006/01/12(木) 21:19:37ID:T0LvIB7lだね。
アルゴリズムを保護してるのは特許法だから、
特許を申請しないと保護はされない。
ただ、例え著作権で保護されて無くてもパクリ自体は(・A・)イクナイ!!
0675名前は開発中のものです。
2006/01/12(木) 21:33:10ID:AeAo7DBbネー(*´・д・)(・д・`*)ネー
0676名前は開発中のものです。
2006/01/12(木) 22:08:28ID:lYMDXzFW0677名前は開発中のものです。
2006/01/13(金) 13:53:44ID:hHS4O6Ffよく読め。
「複雑なアルゴリズムを『実装したスクリプト』」と書いてあるだろ。
……あれ、俺、もしかして釣られた?
0678名前は開発中のものです。
2006/01/13(金) 13:55:55ID:hHS4O6Ffむしろパクリがいけないとかいうほうがいけない。
0679名前は開発中のものです。
2006/01/13(金) 15:12:03ID:X4f1TjNU悪評流したりして思い切り叩きまくるだけさ。
0680名前は開発中のものです。
2006/01/13(金) 21:05:44ID:eJhoGk0Gそのお陰で実装できた機能がイパーイでつ。
サンプル提供者の皆様には本当に感謝(-人-)
>>679
パクるって言葉に釣られてね?w
0681名前は開発中のものです。
2006/01/13(金) 23:22:47ID:hHS4O6Ffそれは本当にただの「いけない人」だが。皮肉のつもり?
0682名前は開発中のものです。
2006/01/14(土) 00:06:23ID:pwY1/Kaoセーブデータをロードしようとすると、一度画面が黒でゆっくり覆われ、
そしてロードしたデータの画面がゆっくり出るようにしたい。問題は後者。
とにかく、普通にloadgameすると一瞬で画面が切り替わって宜しくないんだ。
loadgosubで、ロード時にすぐ黒くするような命令を入れても、一瞬元の画像が見えて宜しくない。
んじゃセーブ直前に画面を黒くしちまえと思っても、
textgosub使ってるんで自動でsaveoffされるから無理ー。
>>366さんの言うとおり、saveon状態になってくれないっぽ。
なんとかなりませんかね?
0683名前は開発中のものです。
2006/01/14(土) 00:20:59ID:qtsB90u5思いつきで、実際にできるかどうか判んないけど、こういうのはどうかな。
セーブ時に、Savescreenshotでサムネイルを画面を撮るのと同じやりかたで
「そのままのサイズ」でSSを記録。
で、ロード時にその記録されたSSを黒い画面からゆっくり切り替えて表示させる。
そして最後にLoadgameで実際にデータロードする。
セーブ・ロード画面ですでにサムネイルを使ってるとちょっと難しい事になるけど……。
0684682
2006/01/14(土) 12:26:40ID:JE8rVA/Hそれは考えつかなかったよ。確かに可能そう。
しかしそれって、セーブデータの数だけフルサイズのスクリーンショットが必要だよね?
それは、すごいことじゃないかw。
そしてちなみに私は、スクリーンショットはすでに使ってる・・・。
ちょっと二枚ショットについて考えてみるよ。
他の方法があったら誰かお願いします。
0685683
2006/01/14(土) 13:08:46ID:xRZVmoz2そのつもりで書きました。
セーブ数だけSSが要るのは仕方ないとしてくださいw
問題は他にもある。
ロード後のスタート地点は、多くの場合、そのページの冒頭からだけど、
セーブはページの途中で行われる場合が多い。
つまりセーブ画面を開いた時点でのSSだとロード後の画面と異なる場合がある。
だから改ページのたびに裏でセーブ用SSを撮っておくとかしないとダメだろうね。
二枚ショットについては普通にやってたら無理。
ころなで実現してたけど、あれはセーブロード画面を閉じる時に
復元した画面を2枚目のSSとして撮るという方法をとってる。
(ゲーム終了時にも一度ゲーム画面を復元させてから終了させている)
あのアイデアには感心した。
0686名前は開発中のものです。
2006/01/14(土) 13:34:00ID:GxORn+dQ0687682
2006/01/14(土) 18:13:20ID:t5kRd1+qおかげで構想ができたので、ちょっと取り組んでみます。
しっかしセーブデータひとつにつき1MBを越えるゲームなんてあるんでしょうかね?
無事完成したとしても、たぶん実装しません。趣味の範囲で。
>>686
それはギャグかね?
私の思い至らなかった素晴らしい考えかもしれないので、詳しくお願いします。
0688682
2006/01/14(土) 19:27:32ID:t5kRd1+qテキスト送りをするのに0.5秒くらいかかるようになってしまった・・・!
スクリーンショット計画は挫折しました。
0689名前は開発中のものです。
2006/01/14(土) 19:31:59ID:nBXJ88Nk以下5つを修正しました。
・デバッグウィンドウをはさむと文字列を正しく取得できないバグ
・スプライトの表示非表示取得命令
・デバッグモードでの文字列をファイルに吐き出す命令
・複合ボタンでC100-150 のような指定を可能にする
・mode320,mode400,mode800のモザイクエフェクト強制終了
だそうです。
しかし、便利機能が一気にきましたねー。
自力で必死にスプライトの表示Defsub実装してたのが、泣けてきた(笑
0690名前は開発中のものです。
2006/01/15(日) 21:05:48ID:QSC+OL6v同じようなことを以前にやった事があると思うが。
0691682
2006/01/15(日) 22:20:37ID:IG6vWH6G過去ログVer.3.00で確認した。そういうことだよね?
そのときの結論も、無理、か・・・。
俺のゲームはロード時だけ瞬間表示ですはははははは。
0692名前は開発中のものです。
2006/01/16(月) 00:51:12ID:7UewL8Ce外部プラグインで、黒い子ウィンドウを画面いっぱいに表示するのは駄目か?
0693名前は開発中のものです。
2006/01/16(月) 01:44:59ID:8YjTBUOr【セーブ時】
画面が真っ黒画面にフェード
↓
内部的にセーブ処理する
↓
「セーブしました」メッセージ表示
↓
黒画面が元の画面へフェード→ゲーム続行
【ロード時】
ロードメニューからセーブナンバー選択、決定
↓
画面が全面黒にフェード
↓
内部的にロードする
↓
真っ黒画面がフェードアウトしてセーブポイントからゲーム再開
ウチの場合、セーブ決定と同時に黒い全画面スプライトでブラインドをかけ、その後にsavegameで内部処理。
ロード時には同じく黒い全画面スプライトを使っていったん画面を隠し、データロード。
このときグローバル変数を使って「セーブ完了しました」の表示を躱してゲームに戻るようにしてます。
※このへん公式板No:3454で高橋さんが仰っていた方法が参考になります。
ただ、loadgosubを使ってないし、ロード画面にサムネイルも無いので、そのへんとの兼ね合いは解りません。
また、制作中のゲームはセーブポイントが固定方式というものなので、シナリオのどの場面からでも
セーブできるタイプのゲームに合うかも不明です。
0694名前は開発中のものです。
2006/01/16(月) 07:11:53ID:QCzu9cLU0695名前は開発中のものです。
2006/01/16(月) 07:26:13ID:eRjxKmyo0696名前は開発中のものです。
2006/01/16(月) 09:34:05ID:82InQngL0697名前は開発中のものです。
2006/01/16(月) 12:26:04ID:X+Jn/aRF0698682
2006/01/16(月) 15:44:36ID:MpJQaYjf>>692
残念ながら外部プラグインについては無知でして、はい。
というか、書き込み自体がちょっとわかんないです。すいません。
ウィンドウってのは画像なんかじゃなく、きっと本当のウィンドウですよね?
しかし、「子」ウィンドウ?
「子」ってことは、Nsc内にウィンドウができるってこと?はあ?
といった具合です。ははは。
>>693
確かにその方法では可能ですね。
ただし、セーブ前になにか処理、ここでいう暗転、が必要なわけです。
そうすると、詳しい説明は省きますが、多分textgosubと併用できないと思うんですね。
textgosubを封印すると激しくあれなんで、きっと無理す・・・。
textgosub中でもsaveonができるように頼もうかなあ。
それとも何かの理由があって、絶対にsaveonしちゃいけないのか。
0699名前は開発中のものです。
2006/01/16(月) 21:23:52ID:/K/x3wuk今作ってるゲームで似たような処理入れたいなーと思ってたとこだ。
自分が考えたのは、>>683氏同様の処理+サムネイルメニュー。
セーブロード画面では、全画面サイズのスクショをdrawsp2で縮小してサムネイルっぽく表示、
一画面分表示したらそれをスクショかbgcopyで背景化して、その上にボタンを配置してみた。
これならわざわざサムネイル用のスクショ撮らなくても可能かと。
それから自分は改ページの度にSS撮るんじゃなくて、
セーブボタンを押した時にtexthideしてからgetscreenshot→セーブ画面表示→
セーブ番号選んだ後でsavescreenshot、にしてる。これならテキスト送りにも影響無いかと。
0700牛 ◆JFxYj/S602
2006/01/16(月) 22:16:48ID:nqAepx1d_| ̄|○
次から漏れはスレ立てしないことにしたよw
0701名前は開発中のものです。
2006/01/16(月) 22:22:22ID:JfHYRAvJガンガレ
0702名前は開発中のものです。
2006/01/16(月) 22:31:58ID:4z+09alj氏ね。出てくんなウザイ。
0703名前は開発中のものです。
2006/01/16(月) 22:44:56ID:b+eFJ1okいや、その方法だと>>685にも書いたけど、
画面の途中でセーブした時に不都合がでるんだよ。
テキスト送りじゃなくてね。
全画面ノベル表示形式の場合だけど、
一ページの途中で立ち絵とか変更して、その後にセーブしても
ロード後はページの一番上から始まる。
つまり立ち絵もセーブ時とは違うんだ。
小さなウィンドウテキストに一行メッセージ表示のADVタイプなら
関係ないかもしれないけど。
0704699
2006/01/16(月) 23:43:54ID:/K/x3wuk0705名前は開発中のものです。
2006/01/17(火) 00:56:29ID:pILwe98uロードするとどうしても瞬間表示になってしまうからなぁ
0706名前は開発中のものです。
2006/01/17(火) 01:52:50ID:WL4C6ApAそうだなぁ。他に考えられる方法は……これも思いつきだが、
改ページのたびにSS撮るのはそれでいいとして、
SSのサイズを実画像サイズでなく、縮小サイズにする。
で、ロードする直前のフェードインの時には、draw系命令を使って、
撮ったSSを「拡大表示」し、その上に真っ黒な画像を重ね、
真っ黒な画像の透過度を調整する事でフェードインしているように見せかける。
縮小サイズでSS撮るなら少しはラグが軽減されるのではないかと思ったが
ひょっとしたらあまり変わらないかも。
……最大の問題は「SSを拡大表示」した荒い画像が
どこまで見れるものに仕上がるかだなw
検証もせず無責任なネタばかりでスマンが。
0707名前は開発中のものです。
2006/01/17(火) 10:03:43ID:yUuWEUuo改ページの度に全画面getscreenshotすることにしてみたけど、
スピードに差は無い気がする。自分は全然気にならなかった。
実数値測って無いから動かした感じだけだけど、特にもたつかないよ。
環境の違い?それとも>>688は自動セーブで毎度savescreenshotしてるんだろうか…
0708名前は開発中のものです。
2006/01/17(火) 10:38:10ID:LfiAyYSx俺の環境って特別な場合だった。すみません。
長く、わかりにくく説明してみる。
まずスクリーンショットをすでに使ってたんで、改ページごとにsavescreenしてました。
んでそうすると、SS画像の名前が必要。例「s00.bmp」とする。数字は可変。
果たしてどのセーブ番号にセーブするか謎だから、SS画像の番号とセーブ番号は必ずしも合わない。
よってセーブ時に、savegame2を生かしてSS画像名もセーブデータに保存。
話は最初に戻るけど、SSセーブ時に名前が必要。
そのとき、すべてのセーブデータの名前と重ならない名前でなければならない。
さらに、俺のゲームはセーブ数が100こ。
だから、改ページするたび、
「画像名は他と重なるかゴルァ」ってセーブ数100個に対して判定、
重なれば画像名の数字を+1して再び判定。
さらにsavescreen。
以上で約0.5秒かかることが証明された。
まあ正確に0.5とは言わないけど、絶対に無視できない間ができる。
俺のパソコンのスペックは、正直忘れたけど、結構新しい方です。
暇だったら他の人もやってみてくれ。
と書いてて思ったけど、別に改ページ後すぐに名前判定をしなくても良いことに気づいた。
通常のセーブデータを作ると同時に、「ちなみにこのSS名はフリーだよ」を取得すれば、
改ページ後の判定しなくても、他とかぶることはない。
起動時にはグローバル文字変数使うなどして。
何言ってるかわからんかもしれんが、これで結構早くできるかもしれん。
0709名前は開発中のものです。
2006/01/17(火) 10:44:49ID:LfiAyYSxもしかして俺、馬鹿なことやってた?
0710名前は開発中のものです。
2006/01/17(火) 11:22:23ID:tL09RzyY面白いアイデアだ。
つまりこうか
1)改ページのたびにgetscreenshotをとる。(セーブはまだ)
2)セーブ画面に切り替わる前に、グローバル変数の
ファイル番号用変数(以後、ポインタと呼ぶ)からファイル名を決定し、
savescreenshotを実行。
3)サムネイル用の画像をgetscreenshotする。
4)もし、セーブせずにセーブ画面終了するなら、なにもしない。
5)もし、セーブしたのなら、そのセーブ番号にあたるグローバル変数(100個分用意)に
ポインタの番号を記録し、ポインタ+1する。
ただし、セーブ画面で連続して複数回セーブする時はポインタ+1してはいけない。
もちろんポインタが100を超えたら1にもどる。
6)ロードする時は、まずロード番号に対応するグローバル変数から
ポインタの番号を復帰させ、そのポインタに対応するスクリーンショットを
フェードインさせたあと、loadgameする。
……いけるんじゃないかな?
0711名前は開発中のものです。
2006/01/17(火) 11:45:35ID:9T3NSfWz0712名前は開発中のものです。
2006/01/17(火) 12:29:04ID:rcAHZs1Mちょ、それを言ったら元も子もねえw
0713名前は開発中のものです。
2006/01/17(火) 12:55:53ID:eftqxR6H0714名前は開発中のものです。
2006/01/17(火) 17:45:40ID:p7i+ARGPロード後に再び1ページが実行されるってのが致命的ですな。
こればかりは多分どうしようもない。
ADVタイプだって、@を使ってそのあとに立ち絵表示とかしたいのですよ。
そういうわけで妥協策。
背景画像の名前だけを記録しておいて、それを黒画面からフェードイン、
その後ロードして一瞬で立ち絵やウィンドウ等表示、って感じでどうかな。
一瞬ですべて表示よりは大分良いと思うけど。
そして実装も簡単そうだ。
0715名前は開発中のものです。
2006/01/17(火) 20:29:16ID:xOwLEs6F0716名前は開発中のものです。
2006/01/17(火) 20:34:33ID:xOwLEs6F0717名前は開発中のものです。
2006/01/18(水) 01:45:05ID:UpO6u0+9ええと結論、これでロード後フェードインが簡単に可能になりましたね。
作者さん、えらく感謝します。助かります。すごいです。ありがとうございます。
nscの命令しか考えられない自分が恥ずかしいです。ほんと。
少なくともこのスレではこれが標準装備になる予感。
0718名前は開発中のものです。
2006/01/18(水) 20:48:08ID:X+J/OnTv楽しみだー
0719名前は開発中のものです。
2006/01/18(水) 21:02:24ID:WheFOPQg宣伝乙
0720牛 ◆JFxYj/S602
2006/01/18(水) 21:32:16ID:VD8VO6dZうpした方、ありがたく使わせていただきます。
0721名前は開発中のものです。
2006/01/18(水) 22:12:10ID:nSou2osuウチじゃ瞬間表示なんだよな…残念。
0722名前は開発中のものです。
2006/01/18(水) 22:58:23ID:RvKbImaS氏ね。出てくんなウザイ。
0724名前は開発中のものです。
2006/01/18(水) 23:33:07ID:CtW0bBVr使い方間違ってる訳じゃあないですよね?
スペック教えてくれません?
nscが正常に動かないということで参考にしたいので。
0725名前は開発中のものです。
2006/01/18(水) 23:42:21ID:JxPYxMQC「黒いウィンドウで隠れてる裏で実はフェードしてるんだけど、
フェード終わってから黒いウィンドウ消してるから、
フェードしてたなんて事わからないっしょ」ってことだよね?
最初、画面の文章だけ見てたから、
どこがフェードしてるんだ?と混乱したんだけど…そゆことじゃないのかな
0726名前は開発中のものです。
2006/01/19(木) 00:02:06ID:2wNnx5Zv一連の論議を読んでないのかキミはw
ロード直後はセーブした時の画面が一瞬で復元されてしまう。
そこを、フェードインで表示するようにしたいんだけど、
Nscripterの仕様だからどうにもならない。
けど、プラグインで、ロード終了直前に画面を黒くしておけば、
一瞬で画面が復元されてもプレイヤーには見えない。
その見えないうちに、黒いスプライトで画面を真っ暗にしておき、
プラグインの画面をはずした後に、
スプライトを消す事でフェードインしてるように見せかけられる。
ってことだろう。
0727名前は開発中のものです。
2006/01/19(木) 00:23:05ID:nB+sygjiホイールの方が楽なんでできればすごい助かるんですが
0728名前は開発中のものです。
2006/01/19(木) 00:35:58ID:X74N5XtXデフォでそうなってなかったっけ?
0729名前は開発中のものです。
2006/01/19(木) 00:42:04ID:IUMU7l7kシステムカスタマイズすれば普通に出来ますが。
詳しくはNscripterに添付されてるサンプルの
「システムカスタマイズ・AVG形式サンプル」を参照。
0730名前は開発中のものです。
2006/01/19(木) 01:07:51ID:nB+sygji0731名前は開発中のものです。
2006/01/19(木) 01:43:11ID:ZMqn0Wmp氏ね。出てくんなウザイ。
0732名前は開発中のものです。
2006/01/19(木) 03:03:47ID:DtC0JaErいや、あのゴメン、>>725=>>699です。
このプラグインがロード時フェードに使えるねってのは分かってるけど、それとはまた別で、
同梱されてたサンプルスクリプトは>>725みたいな処理をしてる?と聞きたかったんだ。
スクリプト見る前に起動して、「フェードします」ってあるのにフェードしてない=瞬間表示?と
最初間違えてしまったので、>>721はそれとは違うのかなーと。
書き方悪くてゴメン…。
0733名前は開発中のものです。
2006/01/19(木) 03:21:09ID:K/IIV2/z後学のために環境plz どちらかの勘違いならそれはそれで問題ないし。
0734732
2006/01/19(木) 03:44:03ID:DtC0JaEr同梱サンプルって起動すると、画面上の見かけは、
最初赤にフェードして、文章表示されて、クリックで瞬時に黒くなって、
しばらくしたら瞬時に緑に変わると思ったんだけど、もしかして違うのか。
環境ったって何書けば良いのかわかんないよママン。OSはXPっす。
0735名前は開発中のものです。
2006/01/19(木) 04:00:19ID:L1eHIvbv>>721の環境だけ訊いとけばいいんじゃなかろうか?
>>732は正常に動いてて>>725を書いたが、うまく伝わらずに>>726に説明されてしまった。と
え〜…、この事件のポイントは、処理はフェードでも見た目には 瞬間表示になっている。 …古畑任三郎でした
0736721
2006/01/19(木) 15:34:32ID:cqtS6Gzgてっきりプラグインだけでフェード処理までしてくれるのかと思ってた。
「ひんと」通りの処理で試せばよかったんだな。
それなら無事フェードできた。
早とちりで騒がせてスマンかった。特に>>732
そしてありがとう>>724使わせてもらいます
0737名前は開発中のものです。
2006/01/19(木) 17:40:18ID:9cv+ol8w0738名前は開発中のものです。
2006/01/19(木) 17:41:15ID:9cv+ol8w0739名前は開発中のものです。
2006/01/19(木) 19:10:08ID:Dz/q5ONy0740名前は開発中のものです。
2006/01/19(木) 19:21:33ID:UaN/wA1k0741名前は開発中のものです。
2006/01/19(木) 19:49:49ID:Dz/q5ONyどうやったらなるんだ。ビュアー関連かな。
0742名前は開発中のものです。
2006/01/20(金) 06:18:38ID:1/Nhriv10743名前は開発中のものです。
2006/01/20(金) 09:14:54ID:KDvzZBnkかちゅ〜しゃ(kage)だとスレタイは出るけど、スレをいっぱい開いた上で
書き掛け状態を失念すると誤爆出来るかも・・・。
0744名前は開発中のものです。
2006/01/23(月) 05:20:45ID:sbsWMFt80745名前は開発中のものです。
2006/01/23(月) 06:03:24ID:Kqy7HjsP0746名前は開発中のものです。
2006/01/26(木) 22:07:33ID:EIzs+ZzJcsel "選択肢",*ss←これをcsel中に得る方法ってありますか?
0747名前は開発中のものです。
2006/01/26(木) 22:17:33ID:1rio4OVj「csel中に得る」の表現がよくわからないんですが。
シーケンスとして具体的にどういう結果が欲しいのですか?
0748名前は開発中のものです。
2006/01/26(木) 23:21:25ID:s24psd/jもしかしてcselの選択肢の結果で*ssを分岐させるっていうこと?
cselは選択肢全般のカスタマイズだから、その内部での個別分岐処理はいかがなものか。
*ssに飛ばしてからそこで分岐処理させ、フラグxなら*ss1、フラグyなら*ss2
というふうに飛ばしたほうがいいんじゃない?
求めている目的が違ったら俺はニュータイプじゃなかったってことで。
0749名前は開発中のものです。
2006/01/27(金) 00:31:48ID:nKGbM/+Q文字列変数に*ssというのが結果として入って欲しいんです
具体的に何をしようとしているかというと、選択済みの選択肢の色を変えたいなぁと
0750名前は開発中のものです。
2006/01/27(金) 02:18:13ID:d7LDh5r0csel前に任意の文字変数に飛び先ラベル名称をセットしておけば?
0751名前は開発中のものです。
2006/01/27(金) 13:53:56ID:n5R0GBrmどうすればいいのでしょうか?
選択肢1、2、3があって、1を選べば次には選択肢2、3しかでないというのです。
0752名前は開発中のものです。
2006/01/27(金) 14:40:08ID:MchJpBIi画面をホワイトアウトしたまま止めるにはどうすればいいんでしょうか……。
テキストウィンドを全画面にしてるんですが、textoffを入れても
ウェイトで止めたときに灰色がかっちゃうんです……。
setwindowでいちいちウィンドカラーを設定したほうがいいんでしょうか?
0753752
2006/01/27(金) 15:43:54ID:MchJpBIi!wとwaitの置き違いだったようです。
お騒がせしました。
0754名前は開発中のものです。
2006/01/27(金) 17:20:32ID:Eyq0wuUDselect "文字列",*飛び先ラベル名,"文字列",*飛び先ラベル名(,...)
選択肢を表示し、その選択結果に対応するラベルへジャンプします。
文字列に""を入れると、その選択肢は表示されません。
ということで、文字列を変数で管理して、ある文字列を消去、とかすれば、
あとはループさせる方向でいいんじゃないか?
正直cselでは試してないけど。できなかったらすまん。
0755名前は開発中のものです。
2006/01/27(金) 17:43:38ID:nKGbM/+Q今はそうしているんだけど
どうもスマートじゃないなぁって
0756名前は開発中のものです。
2006/01/27(金) 18:00:40ID:Eyq0wuUDこれ以外に思いつかなかったんだが。
ちなみにdefsub使って。
スマートじゃないかなあ・・・。
0757名前は開発中のものです。
2006/01/27(金) 18:38:40ID:n5R0GBrmありがとうございます。
ですが、まだ良くわからないので…こういうことですか?
select "if %10=1選択肢1",*se1,"if %11=1選択肢2",*se2(,...)
選択肢はcsel使ってるので、↑で良ければcselにしてやってみます。
0758名前は開発中のものです。
2006/01/27(金) 19:57:41ID:Eyq0wuUDそれは思惑通りに動かないかと。
select "選択肢1",*se1・・・が普通の書き方。
select "",*se1・・・の場合はその選択肢が表示されない。
それをふまえ、
mov $1,"選択肢1"とか
*select
select $1,*se1,$2,*se2・・・
として、例えば飛ぶ先で$1を空にして*selectに戻れば選択肢1が消えている、と。
選択肢名が空だから。
しかしcselだと、これにはもうちょっと小細工が必要。
まずcselでボタンを作る命令を、「もし$(番号)が空じゃなければ」にしておく。
さらにその際、ボタン座標をずらす命令をなくすようにする。
そうでないと、選択肢が消えても詰めてくれない。
ちょっと丁寧じゃないから質問あったらどうぞ。
この方法が絶対ってわけじゃないが。
0759名前は開発中のものです。
2006/01/27(金) 20:10:59ID:nKGbM/+Qいやね、それだと二回書かないといけないじゃん
ラベル取得のために一回とcselで一回で二回ね
どうにも近くに同じものがあると綺麗にいかないもんかと考えてしまうんですよ
それで、選択肢命令を自分で組んでもいいんだけど
それをdefsubで登録しちゃうと戻ってきてからgotoかなんかで飛ばさないといけなくなって
上手くいかないなぁって思っていたわけなんです
0760名前は開発中のものです。
2006/01/27(金) 20:19:25ID:tU3KKzZm0761名前は開発中のものです。
2006/01/27(金) 21:18:51ID:nKGbM/+Qレスサンクス
0762名前は開発中のものです。
2006/01/27(金) 21:55:41ID:mB9j01YG和尚さんが年下ということに気付いてちとショックだった今日この頃。
0763名前は開発中のものです。
2006/01/27(金) 21:58:31ID:aOBF81kT0764名前は開発中のものです。
2006/01/28(土) 12:04:17ID:Mv//9UNwこのスレ的にはお勧めですか?
0765名前は開発中のものです。
2006/01/28(土) 12:13:00ID:fZzZ4NXKまぁ技術的な視点から見て、よく作ってあるとは思う。
0766名前は開発中のものです。
2006/01/28(土) 14:42:57ID:UKeymF5Wだが変わったものを作ったという点で評価してもいいかもしれん。
面白いかどうかは完全に個人の好みによるからノーコメント。
0767名前は開発中のものです。
2006/01/28(土) 23:30:45ID:uoZBYAosバッファを開放するとゲームが終了してしまうし……。
使い方のコツとかありますか?
0768名前は開発中のものです。
2006/01/29(日) 00:07:03ID:NUTt/MHh■ このスレッドは過去ログ倉庫に格納されています