トップページgamedev
984コメント340KB

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
長文テキストを !s0 ではなくて、ノーウエイト表示させたいのだけど
文字スクリプトでやるしかないの?
0729名前は開発中のものです。2006/11/21(火) 17:29:59ID:mqj4ppQ9
というか言ってる意味がワカラン
何がしたいんだ

textspeedじゃダメなのか?
0730名前は開発中のものです。2006/11/21(火) 17:36:34ID:iWd5Aeef
>>729
textspeed でも同じことでしょ。
例えば、

!s0おはようございます。

で表示させると瞬間表示じゃないので残像感が出る。
その残像感を無くして表示させたいんだ。
0731名前は開発中のものです。2006/11/21(火) 18:55:02ID:cNtirGKz
textspeed 0でまだ気になるようだったら文字スプライトか?
つか、瞬間表示については過去に要望があったからtextspeed 0でできるはず。
0732名前は開発中のものです。2006/11/21(火) 18:59:27ID:5y+f+3WN
だな。0でちゃんと瞬間表示になってるから俺も使ってる。
少なくともv2.72以降はそれでいけるから最新版DLしてみたら?
0733名前は開発中のものです。2006/11/21(火) 19:47:14ID:iWd5Aeef
>>729>>731-732
最新版でいけました。
アリガトウ
0734名前は開発中のものです。2006/11/21(火) 20:29:11ID:rYbI7K49
だから‥‥最新版も試さず、自分のスクリプトも疑わずNスクのせいにするのやめろっつうに。
0735名前は開発中のものです。2006/11/21(火) 21:21:04ID:hPuiIVBn
つ旦
0736名前は開発中のものです。2006/11/21(火) 23:14:29ID:i+1tZ0aY
グローバル変数の保存タイミングってわかる方います?
グローバル変数に数値を代入しても、defineresetを行うと数値代入が「無かったこと」にされてしまいます。
これは恐らくグローバル変数に保存が成されていないからだと思われるのですが……。

それがわかれば、前にでていた、「マウスカーソルを、何種類かの中からユーザーが選べる」ってのが可能になるのですけれども……。
0737名前は開発中のものです。2006/11/21(火) 23:28:27ID:W1ivrTuU
どうだろうなぁ。

今簡単なスクリプトで試してみたところ、
@
の改行待ちでしばらく放っておくとファイルが作成されて
グローバル変数に保存されたみたいだが……。
0738名前は開発中のものです。2006/11/21(火) 23:30:59ID:mqj4ppQ9
>>736
define節で変数リセットとかしてないよね?
saveoffとか関係ないしなぁ・・・

グローバル変数に反映されないのって、
その変更した部分だけ?
0739名前は開発中のものです。2006/11/21(火) 23:38:27ID:W1ivrTuU
>>738

俺が今試したスクリプトは以下の通りで、
何も考えずに、トントン進めるだけだとファイルも作られず変数も反映しないが、
前述したように、少し入力をしないで放っておくと保存されるみたい。


*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/
defineresetのバグっぽい。一旦閉じて再起動なら反映されるし。
http://www.nscripter.com/bbs/wforum.cgi?mode=allread&no=680&pastlog=0002&act=past
これかな?

一応公式に貼っといてみます。
0744名前は開発中のものです。2006/11/22(水) 01:52:38ID:T7rLUjMq
なるほど、defineresetの不具合の可能性が高いか
よろしく頼んだ
07457362006/11/23(木) 01:45:30ID:Ph7tgktG
>おそらくグローバル変数の保存はクリックを待ち始めてある程度時間が経ってから行われるんじゃなかろうか。
>なるほど、defineresetの不具合の可能性が高いか

なる。
となると、グローバル変数とdefineresetは併用しないほうが良さそうですね。
とんでもないクリック速度で文を進めるユーザー、または「次の選択肢スキップ」でバグが出来てしまう……。

……、defineresetって何の意味があるねん……。
0746名前は開発中のものです。2006/11/23(木) 01:51:44ID:GE1po9uo
>……、defineresetって何の意味があるねん……。

デバッグw


いつでもdefineresetできる(タイトルへ戻る)ようにカスタマイズしておいて、
1:プレイしながらチェック
2:修正箇所見つけたら別窓のエディタでテキストorスクリプト修正、上書き保存
3:リセット
4:1へ戻る。
0747名前は開発中のものです。2006/11/23(木) 01:54:42ID:CCdyyZg+
そもそも制作段階でしか使わん命令だと思うが。
ユーザーにプレイさせるスクリプトに何故混ぜる。
07487362006/11/23(木) 02:10:51ID:Ph7tgktG
>>746
なるほど、そうか、そう言われればすごい納得。

>>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/3
通常・倍速・カットの選択だけなら
seteffectspeedで事足りると思うんだが・・・
07507362006/11/23(木) 02:51:00ID:Ph7tgktG
まあ、上記のエフェクト例はあくまでも例なので。……ってか、seteffectspeedなんて命令あったのですね。
ええと、取り敢えず例の場合、スクリプトの形にするとこんな感じでしょうか。
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待ちで待たなきゃglobalは保存されない」って言ってたばかりなのに、いきなりclick付け忘れたり、他にも色々と間違えてました。
しかし、地道な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/3
あー、
if %501=0 seteffectspeed 0 ;%501=0の時エフェクト通常
if %501=1 seteffectspeed 2 ;%501=1の時エフェクトカット
の部分はdefine節に入れといた方が良かったな

definereset使わず、セーブ&ロードもしないようにした
これ以上説明する気にはなれんので、あとは適当にやってくれ
0754名前は開発中のものです。2006/11/23(木) 10:01:33ID:ihQ9qcfB
メニューを killmenu で消して definereset 使うとメニューがドンドン消えてくよねw
0755名前は開発中のものです。2006/11/23(木) 10:45:18ID:+mILf++1
> seteffectspeed

( ゚д゚)
0756名前は開発中のものです。2006/11/23(木) 13:55:31ID:TkisxaMT
*define
rubyon
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ダンジョンRPGって既出の話題?
確かこのスレでも3Dダンジョン作ってたような気がする。
0758名前は開発中のものです。2006/11/23(木) 17:32:12ID:hWBe7GYc
別に3Dダンジョンなんて珍しくも無い
0759名前は開発中のものです。2006/11/23(木) 17:47:44ID:Tq1lca9g
必要なパターン書き出して埋め込むだけだからな
まぁそれが面倒だったりするけど
0760名前は開発中のものです。2006/11/23(木) 18:14:17ID:gbK7wHXD
3Dダンジョンてーと、あれか。ウルティマとかか
0761名前は開発中のものです。2006/11/23(木) 18:40:09ID:tcBNhyYZ
>>751>>756がどう見ても同一人物の件

つかスルーした方がいいのか?
0762名前は開発中のものです。2006/11/23(木) 18:43:50ID:+mILf++1
なぜ同一人物と思ったのか、わかりやすく説明しなさい。
0763名前は開発中のものです。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
>>766
本当に別人なのか…早とちりして申し訳ない

logspで表示するスプライトの座標、テキストウィンドウの表示位置と合ってる?
スプライトが画面をハミ出してエラーになってるんじゃないかって気がするんだが・・・

それで駄目だったら、logsp使わずにstrsp(現在の推奨)かlogsp2にしてみたらどうだろう
0768名前は開発中のものです。2006/11/23(木) 20:09:01ID:TkisxaMT
>>767
いえいえ。

えっとスプライトは元々画面からハミだしていてもエラーにはならないのではないでしょうか?
といっても上で書いたスクリプトではルビなしの文字は普通に表示されてますので、それはないと思います。

で、strspとlogsp2を使ったのですが同じ結果に…エラーで落ちましたorz
0769名前は開発中のものです。2006/11/23(木) 20:27:41ID:8R3nnNNJ
>768
ちゃんとY軸の字間をルビの大きさ分だけ空けてる?
それがきちんと指定してあれば落ちないと思うんだけど。
0770名前は開発中のものです。2006/11/23(木) 20:36:57ID:TkisxaMT
>>769
空けています。
というか>>756のスクリプトは他の方の場合落ちないのでしょうか?
0771名前は開発中のものです。2006/11/23(木) 20:39:11ID:QibBHxQp
いや、俺のところでも落ちる
ただ、スプライトの文字サイズや間隔、座標を変えると普通に行くから、
やっぱりその辺じゃないかと思うんだが・・・

ちなみに、通常のテキスト表示の座標は(60,90)ではないぞ
0772名前は開発中のものです。2006/11/23(木) 20:44:11ID:QibBHxQp
logsp2 1,$0,60,90,26,26,0,13

これでやってみたら上手く行った
多分>>769の言った通りのことだな

setwindowで最初から行間隔を空けておけば(デフォルトで文字サイズ高さの半分)
logspでも上手く行きそうな気がするけど
0773名前は開発中のものです。2006/11/23(木) 21:13:41ID:TkisxaMT
なるほど、そういう事でしたか。
物の理解が悪くてお手間を取らせて済みません。
詳しく解説して下さり有難うございます。
本当に助かりました。
0774名前は開発中のものです。2006/11/23(木) 23:46:08ID:0MSABiha
あ、ちなみに>>764はbrで前に空行を作るってこと…
0775名前は開発中のものです。2006/11/24(金) 20:54:42ID:eD7g1OSn
ブログで暴れてる旧かな使いってなに?
0776名前は開発中のものです。2006/11/24(金) 20:59:44ID:TrI+O8fa
>>775
気になるの分かるが我慢しとけw Nスクとは全く無関係のスレ違いだから。
でも物凄い片思いだよなあれ。構ってくれオーラ出し過ぎ。
0777名前は開発中のものです。2006/11/24(金) 21:06:28ID:FioLl833
>>775
つttp://members.jcom.home.ne.jp/w3c/
0778名前は開発中のものです。2006/11/24(金) 21:07:51ID:1h0SZPsY
あそこは私的なページなんだから触れるのも暴れるのも話題に出すのも禁止
0779名前は開発中のものです。2006/11/24(金) 21:53:32ID:aW0T3qaC
あほの相手してる時間あるなら更新に充ててクレヨン
勝手にやってくれと言いつつガチで組み合ってるのがまったくイミフで
なんだかなあ
0780名前は開発中のものです。2006/11/24(金) 22:17:23ID:kGz8FYbF
>>776>>778と2本も釘を刺されたというのにレスしちゃう人に言われてもなぁ
0781名前は開発中のものです。2006/11/25(土) 00:29:18ID:38Sfw1MI
savegame2で保存した文字列を書き換える方法ってない?
一旦ロードしてセーブし直すしか無いのかな
0782名前は開発中のものです。2006/11/25(土) 10:40:50ID:bbX0ia+6
そうね。
0783名前は開発中のものです。2006/11/25(土) 13:24:21ID:+5uopM/H
公式で:噛ませた後のjumpfが動作しないって話があるけど、
ごく普通に動いてるようにしか見えないんだが……。
みんなはどうさね?
0784名前は開発中のものです。2006/11/25(土) 13:31:23ID:jw3GNH+X
それが本当だとしても、2行に分ければいいだけって気がする
if文の中なら別だろうけど、それだってやりようはいくらでもあるし
:の前に2バイト文字入れておかしくなったとか、そういう話なんじゃないの?

というか、そもそもjumbb/jumpfなんて
ラベル管理きっちりしてればそうそう使う命令でもないと思うんだが…
0785名前は開発中のものです。2006/11/25(土) 13:55:26ID:xtJSADFV
全角入れるとおかしくなるとかそういうのおおすぎ
0786名前は開発中のものです。2006/11/25(土) 14:18:02ID:XmU8+toW
だから自分のスクリプトが悪いのをNスクのせいにするなと何度
皆そういった経験を踏まえて製作している

0787名前は開発中のものです。2006/11/25(土) 14:27:09ID:+5uopM/H
やっぱ普通に動くよなあ。なんでNスクのせいにすんだろ。
0788名前は開発中のものです。2006/11/25(土) 14:31:14ID:JhFwFuD0
それでいて公式の奴スルーしとくお前らワロス
0789名前は開発中のものです。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
また奇特な組み方するやつだなw
よく使う便利な命令はサブルーチン化して切り離しておくと楽だぞ

ちなみに、printと打つのが面倒でpに省略している俺は超面倒くさがり
0793名前は開発中のものです。2006/11/25(土) 23:14:50ID:e6vfEiYa
いろんなこと実現していくとfor文が大量に出てくよね
0794名前は開発中のものです。2006/11/26(日) 06:49:02ID:ML/b57yC
DLLレイヤ機能サンプルを元に右から左みたいな簡単なスプライトを
移動させる物を作ってみようと思ったのですが難しい…。

void Drawでfor文とRenderSpriteを使って回せばいいっぽいんですが、
BOOL TimerとBOOL Messageの意味がさっぱり。
どなたかサンプルもしくはご教授頂けないでしょうか?
0795名前は開発中のものです。2006/11/26(日) 17:08:30ID:vqJLN4cH
サンプルって・・・DLLレイヤ機能サンプルがサンプルだと思うけどなぁ^^;

分からなければ、
BOOL Timer(void){return TRUE;}
Message()は省略でいいんじゃない?

一抹の不安を感じるのは、for文で回すという表現・・・
複数スプライトということだよね? ね?

あとはT2氏にでも聞いてくれぃ
0796名前は開発中のものです。2006/11/29(水) 14:30:36ID:N0ZZX3Zq
ん、btntime(btntimer)ってバグってる?
btnwait命令の後も定義が消えずに残る。

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:N0ZZX3Zq
ああ、なるほど。どうもです。
APIの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:9p424y0t
>>800&801
dですvv
0803名前は開発中のものです。2006/12/03(日) 20:03:08ID:SJJz0gGb
何度も使いそうだしサブルーチン組めば?
文字数測ってその回数分鳴らせばいいだけだし。
08047992006/12/03(日) 21:54:24ID:9p424y0t
>>803
それが一番楽でかつ無駄がないかも。やってみる。
文字数数えて変数に代入して、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:TEFzC6i0
つisdown
0807名前は開発中のものです。2006/12/04(月) 18:21:27ID:VZVcvksQ
>>806
それマウスの左だけじゃなかったっけ?違ったらスマン
0808名前は開発中のものです。2006/12/04(月) 18:37:53ID:sUYGUBr7
うん807が違う
0809名前は開発中のものです。2006/12/04(月) 21:42:00ID:lc791S0a
>807で合ってるんじゃ?
isdownでも無理みたい・・・orz
0810名前は開発中のものです。2006/12/04(月) 21:54:42ID:guiZFhtv
T2氏のプラグイン使えばいいんじゃない?
0811名前は開発中のものです。2006/12/04(月) 22:05:59ID:lc791S0a
>>810
それだ!
なんで気付かなかったんだ自分・・・orz
ありがとうございます!m(_ _)m
08128062006/12/04(月) 22:54:28ID:2OuCIxzJ
isdownで押しっぱなし取得出来ると思ってたけど自信なくなってきた…。
つか、押しっぱなし判定しなくても止まらず普通に動くと思うんだけどなぁ。
逆に何で止まるのか知りたくなってきたかも。

*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
08138052006/12/05(火) 00:22:57ID:TiowdF+M
>>812
どうも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
試しに左クリックで飛ばしてみると止まらずにスムーズに動くので
たぶん、キーボードの押しっぱなし判定は拾えてない気がします。。。
08148052006/12/05(火) 00:25:40ID:TiowdF+M
「止まる」というか、
動くことは動きますけれど、途切れ途切れで綺麗に動かないという意味です。
分かりにくくてすいません。。。
0815名前は開発中のものです。2006/12/06(水) 16:18:21ID:0C2kjNYy
プラグインって実行ファイルと同じ場所に置いとかないと、みんな怒っちゃう?
0816名前は開発中のものです。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:CTG7k8IZ
コピペのゴミが…スマソorz
0818名前は開発中のものです。2006/12/06(水) 17:53:41ID:QkW9qfn+
>>815
中には怒るプラグインがあるかも
俺は動けば怒らんけど
動かなくても怒るほど感性豊かじゃないけどな
0819名前は開発中のものです。2006/12/06(水) 18:32:32ID:GHYK1kcQ
return *xxx
スタックを削りつつgoto文と同じ感覚で飛ばせる
本当に*startに戻したいだけだったらresetすりゃいい気もするが
0820名前は開発中のものです。2006/12/06(水) 18:39:52ID:NHJUEQZp
returnでラベルに戻す必要があるのはよっぽど特殊な処理だけで、
大抵はgotoで処理できるんだけどな

というか、シナリオ分岐ならgosubじゃなくてgotoでいいじゃん・・・
resetでもいいけど、タイトルや戻り先にラベル指定してgotoで飛ばせばいいだけ
0821名前は開発中のものです。2006/12/06(水) 19:40:02ID:8JPJe2at
普通シナリオ分岐はgoto使うよな。

でも例えば、シナリオをシーンごとにわけておいて
主処理ではそれをgosubで拾っていくって形にしてるなら、
やっぱStartへ戻す処理をresetかdefineresetにするのが常道だろう。
(俺はこっちをやってる)
0822名前は開発中のものです。2006/12/06(水) 19:52:01ID:CTG7k8IZ
皆さんレスありがとうございます。m(_ _)m
例では簡単に書きましたが、現在作っているものは既存のギャルゲーよりも
シナリオマトリクスがかなり複雑なものでgotoではやり辛かったんです。
(出来ることは出来ますが、フラグで飛び先を管理する事を考えるとgosubジャンプはかなり楽なので…)

という訳で>>821さん良い命令をありがとうございます。
0823名前は開発中のものです。2006/12/09(土) 00:03:05ID:9SY8F3UT
更新こねー!
0824名前は開発中のものです。2006/12/09(土) 00:19:44ID:wM5/090q
ねー
0825名前は開発中のものです。2006/12/09(土) 17:39:51ID:5PLhcp5U
スプライトで言うallsphideとallspresumeのように
複数のbarをパラメーターを弄らず一時的に消したいのですが該当する命令ってあります?

使用箇所としては、RPGの戦闘画面でbarをライフポイントとして使用しているのですが、セーブ画面、ロード画面をlspで表示している時だけ非表示。
セーブ画面、ロード画面から戻った時。RPGの戦闘画面に戻ったら再表示という形です。
セーブ・ロード画面に行く時にbarclearかけて、戻る時に再度パラメーター指定してバー表示しなきゃ駄目かな?
0826名前は開発中のものです。2006/12/09(土) 18:02:08ID:j7BiLCsa
>>825
俺もそれやりたいんだけど、一旦クリアして戻ったら再描画するしか無いみたいだ。。。
せめてbarをスプライトよりも後ろに表示できれば
スプライトを上に乗せて隠すことも出来るんだけどなー・・・orz
0827名前は開発中のものです。2006/12/09(土) 18:09:55ID:0CsgNBHw
俺はバーは使った事無いけど、
確かにNscで、一度メニュー画面にしてから復帰した時って
画面の復元とかって面倒だよね。

俺もそれと似たような悩みがあった。

結局俺は画面切り替える時に自動セーブして、
復帰する時にロードで復帰させるようにした。
けど、テキストもページ先頭に戻っちゃうので工夫が必要になる。
オススメできない。
■ このスレッドは過去ログ倉庫に格納されています