NScripter Ver.8.00
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2006/09/08(金) 21:39:40ID:/inm3Q++ゲームエンジンNScripterについて語るスレです。
技術的な質問も可。ただし最低限のマニュアルには目を通してね。
・本家
http://www.nscripter.com/
・うpろだ
http://andolf.hp.infoseek.co.jp/
・前スレ
Ver7.00
http://pc8.2ch.net/test/read.cgi/gamedev/1149639307/
Ver6.00
http://pc8.2ch.net/test/read.cgi/gamedev/1142593513/
Ver5.00
http://pc8.2ch.net/test/read.cgi/gamedev/1126791382/
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-4あたり。
0728名前は開発中のものです。
2006/11/21(火) 17:23:41ID:iWd5Aeef文字スクリプトでやるしかないの?
0729名前は開発中のものです。
2006/11/21(火) 17:29:59ID:mqj4ppQ9何がしたいんだ
textspeedじゃダメなのか?
0730名前は開発中のものです。
2006/11/21(火) 17:36:34ID:iWd5Aeeftextspeed でも同じことでしょ。
例えば、
!s0おはようございます。
で表示させると瞬間表示じゃないので残像感が出る。
その残像感を無くして表示させたいんだ。
0731名前は開発中のものです。
2006/11/21(火) 18:55:02ID:cNtirGKzつか、瞬間表示については過去に要望があったからtextspeed 0でできるはず。
0732名前は開発中のものです。
2006/11/21(火) 18:59:27ID:5y+f+3WN少なくともv2.72以降はそれでいけるから最新版DLしてみたら?
0733名前は開発中のものです。
2006/11/21(火) 19:47:14ID:iWd5Aeef最新版でいけました。
アリガトウ
0734名前は開発中のものです。
2006/11/21(火) 20:29:11ID:rYbI7K490735名前は開発中のものです。
2006/11/21(火) 21:21:04ID:hPuiIVBn0736名前は開発中のものです。
2006/11/21(火) 23:14:29ID:i+1tZ0aYグローバル変数に数値を代入しても、defineresetを行うと数値代入が「無かったこと」にされてしまいます。
これは恐らくグローバル変数に保存が成されていないからだと思われるのですが……。
それがわかれば、前にでていた、「マウスカーソルを、何種類かの中からユーザーが選べる」ってのが可能になるのですけれども……。
0737名前は開発中のものです。
2006/11/21(火) 23:28:27ID:W1ivrTuU今簡単なスクリプトで試してみたところ、
@
の改行待ちでしばらく放っておくとファイルが作成されて
グローバル変数に保存されたみたいだが……。
0738名前は開発中のものです。
2006/11/21(火) 23:30:59ID:mqj4ppQ9define節で変数リセットとかしてないよね?
saveoffとか関係ないしなぁ・・・
グローバル変数に反映されないのって、
その変更した部分だけ?
0739名前は開発中のものです。
2006/11/21(火) 23:38:27ID:W1ivrTuU俺が今試したスクリプトは以下の通りで、
何も考えずに、トントン進めるだけだとファイルも作られず変数も反映しないが、
前述したように、少し入力をしないで放っておくと保存されるみたい。
*define
globalon
game
*start
%500
表示1@
mov %500,99
%500
表示2@
definereset
0740名前は開発中のものです。
2006/11/21(火) 23:48:26ID:mqj4ppQ9グローバル変数が保存されるまで若干のタイムラグがあるってことか
そうなるとNスクの仕様か・・・?
0741名前は開発中のものです。
2006/11/22(水) 00:01:51ID:TcfBe+lH変数の中身を表示する前にwait、delay、!w、!dを入れてみたけど効果なし。
clickを入れたときだけ、clickのところで一定時間待った後にクリックすると値が変化した。
おそらくグローバル変数の保存はクリックを待ち始めてある程度時間が経ってから行われるんじゃなかろうか。
*define
globalon
inc %500
game
*start
%500@
definereset
0742名前は開発中のものです。
2006/11/22(水) 00:02:10ID:0uA+mF9O”PS3癒着疑惑”を検証したサイト群を、見境無く次々と荒らす輩が出現。
最初はなるせ氏本人と思われたが、意外な結末が待ち受けていた。
http://blog.goo.ne.jp/k-true/e/6d8ee78a188d9d8cb25854adad86e8db
http://blogimg.goo.ne.jp/user_image/35/53/6c380ba2e7a5b3de7336de2e1ae9185f.png
荒らしコメントを投稿し続けたgooID day-kiyuが
異彩崇高 http://isaisuko.jp/ 管理人KIYU氏と判明。
異彩崇高 は2005年5月に「ひぐらしのなく頃に」作者陣へインタビューを敢行、一躍時のサイトとなった。
ブログへのこれら執拗な擁護と荒らし工作活動等から、KIYU氏がAA連合に近しい事が判明した。
この工作活動は、なるせ氏の指示によるものなのか?それともKIYU氏の独断で行われたものか?
現在、なるせ・KIYU両氏はこの件について一切スルーの構え。(KIYU氏はブログ米欄書込をはてなユーザーのみに制限)
楽画喜堂
ttp://www.rakugakidou.net/
能都堂〜楽画喜堂ヲチスレまとめ(過去発言・購入リスト等)
http://wiki.livedoor.jp/antirakugaki/
関連スレ
【なるせ】楽画喜堂をオチするスレ52【AA・RA】
http://anime.2ch.net/test/read.cgi/asaloon/1163909629/
0743名前は開発中のものです。
2006/11/22(水) 01:50:35ID:P5qiPb4/http://www.nscripter.com/bbs/wforum.cgi?mode=allread&no=680&pastlog=0002&act=past
これかな?
一応公式に貼っといてみます。
0744名前は開発中のものです。
2006/11/22(水) 01:52:38ID:T7rLUjMqよろしく頼んだ
0745736
2006/11/23(木) 01:45:30ID:Ph7tgktG>なるほど、defineresetの不具合の可能性が高いか
なる。
となると、グローバル変数とdefineresetは併用しないほうが良さそうですね。
とんでもないクリック速度で文を進めるユーザー、または「次の選択肢スキップ」でバグが出来てしまう……。
……、defineresetって何の意味があるねん……。
0746名前は開発中のものです。
2006/11/23(木) 01:51:44ID:GE1po9uoデバッグw
いつでもdefineresetできる(タイトルへ戻る)ようにカスタマイズしておいて、
1:プレイしながらチェック
2:修正箇所見つけたら別窓のエディタでテキストorスクリプト修正、上書き保存
3:リセット
4:1へ戻る。
0747名前は開発中のものです。
2006/11/23(木) 01:54:42ID:CCdyyZg+ユーザーにプレイさせるスクリプトに何故混ぜる。
0748736
2006/11/23(木) 02:10:51ID:Ph7tgktGなるほど、そうか、そう言われればすごい納得。
>>747
if節使って、ちょっとしたことをやってみる、とかでしょうか。
例えばeffect定義を変えるなど。
【通常モード】では
effect 2,10,200
effect 3,2,1000
となっているエフェクトを、
グローバル変数%500を使い、
if %500 = 1 effect 2,1:effect 3,1
if %500 = 0 effect 2,10,200:effect 3,2,1000
として、【エフェクトカットモード】も選べる、みたいな感じでしょうか。
「文章はスキップさせず、でもエフェクトはスキップさせたい」というせっかちさんユーザーへの親切設計。
……どうでもいいですかそうですか。
0749名前は開発中のものです。
2006/11/23(木) 02:31:42ID:hEmT40/3seteffectspeedで事足りると思うんだが・・・
0750736
2006/11/23(木) 02:51:00ID:Ph7tgktGええと、取り敢えず例の場合、スクリプトの形にするとこんな感じでしょうか。
Nスク始めてまだ一週間なんで、変なとこがあっても見逃してください。
*define
globalon
textgosub *a
if %500 = 0 if %501 = 1 2,1:effect 3,1
if %500 = 0 if %501 = 0 effect 2,10,200:effect 3,2,1000
if %500 = 1 effect 2,1:effect 3,1
if %500 = 2 effect 2,10,200:effect 3,2,1000
game
*a
textbtnwait %0
if %0 = -1 goto *b
notif %0 = -1 goto *c
*b
if %501 = 1 mov %500,1:savegame 9:definereset
if %501 = 0 mov %500,2:savegame 9:definereset
*c
;もちろん、セーブNo.9は通常時は使わないセーブ番号。セーブ画面カスタマイズで、8までしか表示されないようにしておく。
saveon
texec
return
*start
notif %500 = 0 mov %500,0:loadgame 9
と、基本としてはこんな感じでしょうか。@面倒だったので起動テストはしてませんが。@
取り敢えずやりたいことは伝わったかと思います。\
end
0751連投すみません。もう消えます。
2006/11/23(木) 03:08:18ID:Ph7tgktGしかし、地道なclick待ち以外でグローバル変数を保存する方法が無ければ結局意味が無いスクリプトなのですけれどね。
修正版
*define
globalon
textgosub *a
if %500 = 0 if %501 = 1 effect 2,1:effect 3,1
if %500 = 0 if %501 = 0 effect 2,10,1000:effect 3,2,1000
if %500 = 1 effect 2,1:effect 3,1:mov %501,1
if %500 = 2 effect 2,10,1000:effect 3,2,1000:mov %501,0
game
*a
textbtnwait %0
if %0 = -1 goto *b
notif %0 = -1 goto *c
*b
if %501 = 0 mov %500,1:savegame 8:click:definereset
if %501 = 1 mov %500,2:savegame 8:click:definereset
*c
saveon
texec
return
*start
notif %500 = 0 mov %500,0:loadgame 8
bg white,2
ねこだ!@あいつは猫だ!@
bg black,3
そうだ、おれたちゃ猫軍団!!\
end
0752名前は開発中のものです。
2006/11/23(木) 03:59:08ID:hEmT40/3なので超適当にやってみた
あと、面倒がらずに自分でテストぐらいすれ
*define
globalon
textgosub *a
effect 2,10,1000:effect 3,2,1000
game
*a
textbtnwait %0
if %0=-1 goto *b
notif %0=-1 goto *c
*b
if %501=0 mov %501,1:seteffectspeed 2:goto *a ;右クリック→エフェクトカット
if %501=1 mov %501,0:seteffectspeed 0:goto *a ;右クリック→エフェクト通常
*c
saveon
texec
return
*start
if %501=0 seteffectspeed 0 ;%501=0の時エフェクト通常
if %501=1 seteffectspeed 2 ;%501=1の時エフェクトカット
bg white,2
ねこだ!@あいつは猫だ!@
bg black,3
そうだ、おれたちゃ猫軍団!!\
reset
0753名前は開発中のものです。
2006/11/23(木) 04:13:33ID:hEmT40/3if %501=0 seteffectspeed 0 ;%501=0の時エフェクト通常
if %501=1 seteffectspeed 2 ;%501=1の時エフェクトカット
の部分はdefine節に入れといた方が良かったな
definereset使わず、セーブ&ロードもしないようにした
これ以上説明する気にはなれんので、あとは適当にやってくれ
0754名前は開発中のものです。
2006/11/23(木) 10:01:33ID:ihQ9qcfB0755名前は開発中のものです。
2006/11/23(木) 10:45:18ID:+mILf++1( ゚д゚)
0756名前は開発中のものです。
2006/11/23(木) 13:55:31ID:TkisxaMTrubyon
game
*start
紅葉山\
getlog $0,1:logsp 1,$0,60,90:print 1
消去\
csp 1:print 1
(紅葉山/もみじのやま)\
getlog $0,1:logsp 1,$0,60,90:print 1
消去\
csp 1:print 1
goto *start
ルビのログを表示させようとした所、
エラーが出て終了してしまいます。
使い方が悪いのでしょうか?
0757名前は開発中のものです。
2006/11/23(木) 17:24:29ID:pDSZEmXV確かこのスレでも3Dダンジョン作ってたような気がする。
0758名前は開発中のものです。
2006/11/23(木) 17:32:12ID:hWBe7GYc0759名前は開発中のものです。
2006/11/23(木) 17:47:44ID:Tq1lca9gまぁそれが面倒だったりするけど
0760名前は開発中のものです。
2006/11/23(木) 18:14:17ID:gbK7wHXD0761名前は開発中のものです。
2006/11/23(木) 18:40:09ID:tcBNhyYZつかスルーした方がいいのか?
0762名前は開発中のものです。
2006/11/23(木) 18:43:50ID:+mILf++10763名前は開発中のものです。
2006/11/23(木) 18:51:39ID:tcBNhyYZいや、別人かもしれないけどさ
0764名前は開発中のものです。
2006/11/23(木) 18:54:43ID:+mILf++1ちなみに>>756は、ルビ文字の前に改行しなさい。
0765名前は開発中のものです。
2006/11/23(木) 19:16:02ID:tcBNhyYZ質問に答えてもらったのに礼も言わずに連投したように見えたもんだから
0766名前は開発中のものです。
2006/11/23(木) 19:23:13ID:TkisxaMT>>764
csp 1:print 1
(紅葉山/もみじのやま)\
getlog $0,1:logsp 1,$0,60,90:print 1
ルビ文字の前後を改行したのですが、まだ落ちてしまいますorz
0767名前は開発中のものです。
2006/11/23(木) 19:37:24ID:QibBHxQp本当に別人なのか…早とちりして申し訳ない
logspで表示するスプライトの座標、テキストウィンドウの表示位置と合ってる?
スプライトが画面をハミ出してエラーになってるんじゃないかって気がするんだが・・・
それで駄目だったら、logsp使わずにstrsp(現在の推奨)かlogsp2にしてみたらどうだろう
0768名前は開発中のものです。
2006/11/23(木) 20:09:01ID:TkisxaMTいえいえ。
えっとスプライトは元々画面からハミだしていてもエラーにはならないのではないでしょうか?
といっても上で書いたスクリプトではルビなしの文字は普通に表示されてますので、それはないと思います。
で、strspとlogsp2を使ったのですが同じ結果に…エラーで落ちましたorz
0769名前は開発中のものです。
2006/11/23(木) 20:27:41ID:8R3nnNNJちゃんとY軸の字間をルビの大きさ分だけ空けてる?
それがきちんと指定してあれば落ちないと思うんだけど。
0770名前は開発中のものです。
2006/11/23(木) 20:36:57ID:TkisxaMT空けています。
というか>>756のスクリプトは他の方の場合落ちないのでしょうか?
0771名前は開発中のものです。
2006/11/23(木) 20:39:11ID:QibBHxQpただ、スプライトの文字サイズや間隔、座標を変えると普通に行くから、
やっぱりその辺じゃないかと思うんだが・・・
ちなみに、通常のテキスト表示の座標は(60,90)ではないぞ
0772名前は開発中のものです。
2006/11/23(木) 20:44:11ID:QibBHxQpこれでやってみたら上手く行った
多分>>769の言った通りのことだな
setwindowで最初から行間隔を空けておけば(デフォルトで文字サイズ高さの半分)
logspでも上手く行きそうな気がするけど
0773名前は開発中のものです。
2006/11/23(木) 21:13:41ID:TkisxaMT物の理解が悪くてお手間を取らせて済みません。
詳しく解説して下さり有難うございます。
本当に助かりました。
0774名前は開発中のものです。
2006/11/23(木) 23:46:08ID:0MSABiha0775名前は開発中のものです。
2006/11/24(金) 20:54:42ID:eD7g1OSn0776名前は開発中のものです。
2006/11/24(金) 20:59:44ID:TrI+O8fa気になるの分かるが我慢しとけw Nスクとは全く無関係のスレ違いだから。
でも物凄い片思いだよなあれ。構ってくれオーラ出し過ぎ。
0777名前は開発中のものです。
2006/11/24(金) 21:06:28ID:FioLl833つttp://members.jcom.home.ne.jp/w3c/
0778名前は開発中のものです。
2006/11/24(金) 21:07:51ID:1h0SZPsY0779名前は開発中のものです。
2006/11/24(金) 21:53:32ID:aW0T3qaC勝手にやってくれと言いつつガチで組み合ってるのがまったくイミフで
なんだかなあ
0780名前は開発中のものです。
2006/11/24(金) 22:17:23ID:kGz8FYbF0781名前は開発中のものです。
2006/11/25(土) 00:29:18ID:38Sfw1MI一旦ロードしてセーブし直すしか無いのかな
0782名前は開発中のものです。
2006/11/25(土) 10:40:50ID:bbX0ia+60783名前は開発中のものです。
2006/11/25(土) 13:24:21ID:+5uopM/Hごく普通に動いてるようにしか見えないんだが……。
みんなはどうさね?
0784名前は開発中のものです。
2006/11/25(土) 13:31:23ID:jw3GNH+Xif文の中なら別だろうけど、それだってやりようはいくらでもあるし
:の前に2バイト文字入れておかしくなったとか、そういう話なんじゃないの?
というか、そもそもjumbb/jumpfなんて
ラベル管理きっちりしてればそうそう使う命令でもないと思うんだが…
0785名前は開発中のものです。
2006/11/25(土) 13:55:26ID:xtJSADFV0786名前は開発中のものです。
2006/11/25(土) 14:18:02ID:XmU8+toW皆そういった経験を踏まえて製作している
0787名前は開発中のものです。
2006/11/25(土) 14:27:09ID:+5uopM/H0788名前は開発中のものです。
2006/11/25(土) 14:31:14ID:JhFwFuD00789名前は開発中のものです。
2006/11/25(土) 17:11:01ID:l6bXObw1「spstr "C○"」って、cspじゃなくて「vsp ○,0」と同じってことでいいんだよね?
spstrで消した画像をvspで表示したら表示できたし。
スプライト○〜△番をまとめてcspしたい場合の命令はあったかな?
0790名前は開発中のものです。
2006/11/25(土) 17:26:27ID:+5uopM/Hあと、cspもvspも全部for nextで書けば円満解決。
長くなるの嫌ならdefsubで作るべし。
0791名前は開発中のものです。
2006/11/25(土) 17:30:24ID:l6bXObw1そうか、for nextで数をずらしながら○〜△まで消していくのか。
for文ほとんど使ったことないorz 地道に組んでみます。
0792名前は開発中のものです。
2006/11/25(土) 17:49:35ID:jw3GNH+Xよく使う便利な命令はサブルーチン化して切り離しておくと楽だぞ
ちなみに、printと打つのが面倒でpに省略している俺は超面倒くさがり
0793名前は開発中のものです。
2006/11/25(土) 23:14:50ID:e6vfEiYa0794名前は開発中のものです。
2006/11/26(日) 06:49:02ID:ML/b57yC移動させる物を作ってみようと思ったのですが難しい…。
void Drawでfor文とRenderSpriteを使って回せばいいっぽいんですが、
BOOL TimerとBOOL Messageの意味がさっぱり。
どなたかサンプルもしくはご教授頂けないでしょうか?
0795名前は開発中のものです。
2006/11/26(日) 17:08:30ID:vqJLN4cH分からなければ、
BOOL Timer(void){return TRUE;}
Message()は省略でいいんじゃない?
一抹の不安を感じるのは、for文で回すという表現・・・
複数スプライトということだよね? ね?
あとはT2氏にでも聞いてくれぃ
0796名前は開発中のものです。
2006/11/29(水) 14:30:36ID:N0ZZX3Zqbtnwait命令の後も定義が消えずに残る。
btntime 10000
btnwait %0
もう一度。
btnwait %0
if %0 = -2 end
\
二度目のウェイトで10秒待つと、何故か-5が代入される。
0797名前は開発中のものです。
2006/11/29(水) 15:20:32ID:mxgigb7U一度目の btnwait %0 の次行に btndef clear を入れたらタイマーちゃんと消える。
クリック待ちの設定は一度使った後にちゃんと消す習慣付けた方がいいよ。
あと時間切れで-5ってことはusewheel使用なんだろ? その検証スクリプト不親切すぎ。
btnwaitとbtnwait2の違いはボタン定義をクリアするか否かの違いだけど、
ボタン定義ってのはspbtnやexbtnのところであって、他の設定はクリアされない。
まあ何だ。自分で検証すればすぐ洗い出せるってこった。
0798名前は開発中のものです。
2006/11/29(水) 17:09:25ID:N0ZZX3ZqAPIのbtntime説明に『この命令を使った直後の……』とあるので、タイマーは直後のbtnwaitにしか効かないのかと思ってました。
-5は……、修正するの忘れてました。
(一旦-5で検証し、途中でusewheel付け忘れていることに気付いてスクリプトのifを-2に変えたが、その後文章を書く際にいつもの癖で-5と書いてしまった)
ともあれ、thxです。
0799名前は開発中のものです。
2006/12/03(日) 17:33:17ID:9p424y0t「こんにちわv」
と同時にごく短い音
「ピピピピピ」(言葉と同じ数)
を入れて、ボイス風にしたいなあと思ってるんですが、
「こwave"pi.wav":んwave"pi.wav":にwave"pi.wav":ちwave"pi.wav":わvwave"pi.wav"」
とやるしか思いつかないんです;;;;;;
何か他に良い方法はないものでしょうか?
0800名前は開発中のものです。
2006/12/03(日) 18:02:39ID:fn8YKsNw; ------------
dwaveloop 2,"pi.wav"
「こんにちわv」
dwavestop 2
; ------------
とやるけど?
0801名前は開発中のものです。
2006/12/03(日) 18:21:32ID:y+daOw1x過去ログ読んでみれば、何か分かるかも
0802名前は開発中のものです。
2006/12/03(日) 18:27:12ID:9p424y0tdですvv
0803名前は開発中のものです。
2006/12/03(日) 20:03:08ID:SJJz0gGb文字数測ってその回数分鳴らせばいいだけだし。
0804799
2006/12/03(日) 21:54:24ID:9p424y0tそれが一番楽でかつ無駄がないかも。やってみる。
文字数数えて変数に代入して、for文で変数の数だけ繰り返し音を鳴らせばいいんだよね?
dです。
0805名前は開発中のものです。
2006/12/03(日) 22:59:42ID:2EIIicKTカーソルキーでキャラを上下左右に動かすスクリプトを組みたいのですが、
キーの押しっぱなしを拾う方法ってないでしょうか?
下記のように組んだら一歩一歩止まってしまいます・・・orz
;---
btndef clear
getcursor
btndown 1
*loop
btnwait %0
if %0==-40 gosub *ue ;上移動
if %0==-41 gosub *migi ;右移動
if %0==-42 gosub *sita ;下移動
if %0==-43 gosub *hidari ;左移動
goto *loop
0806名前は開発中のものです。
2006/12/04(月) 09:39:05ID:TEFzC6i00807名前は開発中のものです。
2006/12/04(月) 18:21:27ID:VZVcvksQそれマウスの左だけじゃなかったっけ?違ったらスマン
0808名前は開発中のものです。
2006/12/04(月) 18:37:53ID:sUYGUBr70809名前は開発中のものです。
2006/12/04(月) 21:42:00ID:lc791S0aisdownでも無理みたい・・・orz
0810名前は開発中のものです。
2006/12/04(月) 21:54:42ID:guiZFhtv0811名前は開発中のものです。
2006/12/04(月) 22:05:59ID:lc791S0aそれだ!
なんで気付かなかったんだ自分・・・orz
ありがとうございます!m(_ _)m
0812806
2006/12/04(月) 22:54:28ID:2OuCIxzJつか、押しっぱなし判定しなくても止まらず普通に動くと思うんだけどなぁ。
逆に何で止まるのか知りたくなってきたかも。
*define
game
*start
lsp 0,":s#ffffff文字列",200,200
btndef clear:getcursor
*loop
btnwait %0
if %0==-40 gosub *ue ;上移動
if %0==-41 gosub *migi ;右移動
if %0==-42 gosub *sita ;下移動
if %0==-43 gosub *hidari ;左移動
goto *loop
*ue
msp 0,0,-10,0:print 1:return
*migi
msp 0,10,0,0:print 1:return
*hidari
msp 0,-10,0,0:print 1:return
*sita
msp 0,0,10,0:print 1:return
0813805
2006/12/05(火) 00:22:57ID:TiowdF+Mどうもthxです。
各動作ルーチンの中で
; -------------
*sita
mov %3,0
mov %1,%51
for %51=%1 to %1+24 step 4
resettimer:waittimer 30
if %3==0 lsp 1,":l;data\chara\001_D_01.bmp",%50,%51:print 1:mov %3,1:goto *sita_next
if %3==1 lsp 1,":l;data\chara\001_D_03.bmp",%50,%51:print 1:mov %3,0:goto *sita_next
*sita_next
next
return
; -------------
って感じの動作処理を入れて動かしてるんですけど、
それだと綺麗な動作にならずに一歩一歩止まってしまうんですorz
試しに左クリックで飛ばしてみると止まらずにスムーズに動くので
たぶん、キーボードの押しっぱなし判定は拾えてない気がします。。。
0814805
2006/12/05(火) 00:25:40ID:TiowdF+M動くことは動きますけれど、途切れ途切れで綺麗に動かないという意味です。
分かりにくくてすいません。。。
0815名前は開発中のものです。
2006/12/06(水) 16:18:21ID:0C2kjNYy0816名前は開発中のものです。
2006/12/06(水) 17:16:06ID:CTG7k8IZ*start
|
├┐
1 2
├┘
|
*end
こんな感じで一本道から二本道にgosubでシナリオを分岐させていたんですが、
「2」のシナリオ中にカスタマイズメニューで作った*startに戻る処理(goto処理)を実行させると
gosubネストがスタックしてしまいますよね?
ぽまいらはどうやって上記のようなシナリオを上手く処理しているのか、是非教えて下さいm(_ _)m
分岐
質問です。
NScripterの*start
0817名前は開発中のものです。
2006/12/06(水) 17:16:52ID:CTG7k8IZ0818名前は開発中のものです。
2006/12/06(水) 17:53:41ID:QkW9qfn+中には怒るプラグインがあるかも
俺は動けば怒らんけど
動かなくても怒るほど感性豊かじゃないけどな
0819名前は開発中のものです。
2006/12/06(水) 18:32:32ID:GHYK1kcQスタックを削りつつgoto文と同じ感覚で飛ばせる
本当に*startに戻したいだけだったらresetすりゃいい気もするが
0820名前は開発中のものです。
2006/12/06(水) 18:39:52ID:NHJUEQZp大抵はgotoで処理できるんだけどな
というか、シナリオ分岐ならgosubじゃなくてgotoでいいじゃん・・・
resetでもいいけど、タイトルや戻り先にラベル指定してgotoで飛ばせばいいだけ
0821名前は開発中のものです。
2006/12/06(水) 19:40:02ID:8JPJe2atでも例えば、シナリオをシーンごとにわけておいて
主処理ではそれをgosubで拾っていくって形にしてるなら、
やっぱStartへ戻す処理をresetかdefineresetにするのが常道だろう。
(俺はこっちをやってる)
0822名前は開発中のものです。
2006/12/06(水) 19:52:01ID:CTG7k8IZ例では簡単に書きましたが、現在作っているものは既存のギャルゲーよりも
シナリオマトリクスがかなり複雑なものでgotoではやり辛かったんです。
(出来ることは出来ますが、フラグで飛び先を管理する事を考えるとgosubジャンプはかなり楽なので…)
という訳で>>821さん良い命令をありがとうございます。
0823名前は開発中のものです。
2006/12/09(土) 00:03:05ID:9SY8F3UT0824名前は開発中のものです。
2006/12/09(土) 00:19:44ID:wM5/090q0825名前は開発中のものです。
2006/12/09(土) 17:39:51ID:5PLhcp5U複数のbarをパラメーターを弄らず一時的に消したいのですが該当する命令ってあります?
使用箇所としては、RPGの戦闘画面でbarをライフポイントとして使用しているのですが、セーブ画面、ロード画面をlspで表示している時だけ非表示。
セーブ画面、ロード画面から戻った時。RPGの戦闘画面に戻ったら再表示という形です。
セーブ・ロード画面に行く時にbarclearかけて、戻る時に再度パラメーター指定してバー表示しなきゃ駄目かな?
0826名前は開発中のものです。
2006/12/09(土) 18:02:08ID:j7BiLCsa俺もそれやりたいんだけど、一旦クリアして戻ったら再描画するしか無いみたいだ。。。
せめてbarをスプライトよりも後ろに表示できれば
スプライトを上に乗せて隠すことも出来るんだけどなー・・・orz
0827名前は開発中のものです。
2006/12/09(土) 18:09:55ID:0CsgNBHw確かにNscで、一度メニュー画面にしてから復帰した時って
画面の復元とかって面倒だよね。
俺もそれと似たような悩みがあった。
結局俺は画面切り替える時に自動セーブして、
復帰する時にロードで復帰させるようにした。
けど、テキストもページ先頭に戻っちゃうので工夫が必要になる。
オススメできない。
■ このスレッドは過去ログ倉庫に格納されています