|
|
2007/12/12(Wed) 00:17:01|NO.12774
始めまして。
プログラミングを始めたばかりの者ですが、
現在以下のようなスクリプトで黒い背景画面に表示窓をつけて、
その中を文章が文字色を変えて(ある単語は赤で他は黒のように)
右から左へスクロールします。
しかし、moji,col,shiの変数量が116になり、
そのせいか文字が流れるように動かなくなりました。
滑らかに動くようにする方法はあるでしょうか。
pre screen 0,1020,1000,0,0,0
sdim moji,2000
dim col,2000
dim shi,2000
x=900
dx=90
font msgothic,35,0
moji(1)"○○"
moji(2)""
・
・
col(1)
・
・
shi(1)
・
・
*meinloop
redraw 0
color 255,255,255
boxf
x=x-dx
aa=1
bb=0
repeat 116
color col(aa),0,0
pos x +bb, 300
mes moji(aa)
aa=aa+1
bb=bb+shi(aa)*5
color 0,0,0
redraw 1
await 16
goto *meinloop/pre
|
|
2007/12/12(Wed) 07:56:35|NO.12775
aoiさん、こんにちは。
aoiさんが提示されたスクリプトはこのままでは動作しないので、こちらで動作させて検証することができません。
特に「repeat 116」に対応する「loop」が無いのが問題です。転記ミスでしょうか?
さて「color 0,0,0」の位置に「loop」があると仮定した上での回答ですが、dxの値が大きすぎるだけではないかと思います。
dxの値を調節してみてください。
moji = "HSPは","Hot Soup Processor","の略称です。"
col = 0, 255, 0
x = ginfo_winx
dx = 3 // この程度で充分だと思います
font msgothic, 35
*main
x -= dx
bb = 0
redraw 0
color 255, 255, 255 : boxf
foreach moji // この場合は「repeat 3」と同じ
pos x + bb, 300
color col(cnt), 0, 0
mes moji(cnt)
bb += ginfo_mesx
loop
redraw 1
await 16
goto *main
解釈したものを私なりにまとめるとこんな感じになりました。
ginfo_mesxは便利ですので、もしご存知でなければワンキーヘルプなどで調べてみてください。
|
|
2007/12/12(Wed) 13:42:48|NO.12776
ellerさん
ご回答ありがとうございます。
提示していただいたスクリプトで作ってみたところ、文字がスムーズに動きました。
しかし、表示窓を作ろうとして
以下のように書いたところ(少し長くなってしまいましたが)
文章が提示されなくなってしまいました。
ドットの位置は合っていると思うのですが何が原因でしょうか。
screen 0,1020,1000,0,0,0
moji = "HSPは","Hot Soup Processor","の略称です。"
col = 0, 255, 0
x=ginfo_winx
dx=3
font msgothic,35
color 255,255,255
boxf
color 0,0,0
boxf 0,0,390,900
boxf 630,0,1020,900
boxf 390,0,630,290
boxf 390,340,630,900
*main
x -= dx
bb = 0
redraw 0
color 255, 255, 255 :boxf
foreach moji
pos x + bb, 300
color col(cnt), 0, 0
mes moji(cnt)
bb += ginfo_mesx
color 255,255,255
boxf
color 0,0,0
boxf 0,0,390,900
boxf 630,0,1020,900
boxf 390,0,630,290
boxf 390,340,630,900
loop
redraw 1
await 16
goto *main
|
|
2007/12/12(Wed) 14:01:14|NO.12777
スクリプトを見直して、「描画する順序」をよく調べてみてください(コメントを使うとやりやすいと思います)。
文字を描画した上に何かを上書きしていませんか?
また、「1回だけ実行すれば良い処理」はループの外に出すと良いですよ。
|
|
2007/12/12(Wed) 15:51:04|NO.12783
ellerさん
ありがとうございます。
とても参考になりました。
ご指摘の通りやってみたいと思います。
|
|