あー!全く参考にされてないー!_| ̄|○ 説明悪かったかな…。
スクリプト提示ありがとうございます。
しかし…、そういうことですか。スクリプト、納得しました。
「画面の初期化」を「ウィンドウの初期化」と勘違いしたわけですね。
「画面の初期化」というのは、要するに見た目の話で、ウィンドウ内を単一色で塗りつぶして絵や文字を消してしまうことです。
ループ内でscreen命令で「ウィンドウを初期化」することではありません。
画面のちらつきはループ内で何度もウィンドウを初期化していることが原因です。
やっぱり画像ファイルを使った場合の解説もHSP開発Wikiに加えないといけないですね。後日やっときます。
それと、T.Kさんはbuffer(仮想画面)の概念が理解できていないようですね。
これも説明加えとこう…。
今回はとりあえずサンプル書いたので、これをいじりつつ、このスレッドのレスを参考にしつつ、意味をよーく考えてみてください。
;ウィンドウID 1
;buffer 1 ;「screen 1」をコメントにして、この行のコメントを外すと余計なウィンドウは見えません。
screen 1 ;buffer命令の代わりにscreen命令に置き換えると理解しやすいです。
picload "picutya//haikei.bmp",1
;ウィンドウID 0
screen 0
;メインループ
repeat
redraw 0
;画面の初期化(背景画像で初期化)
pos 0,0
gcopy 1, 0, 0, 640, 480
;自機の操作
getkey u, 38
getkey s, 40
getkey m, 39
getkey h, 37
if u==1:y=y-3
if s==1:y=y+3
if m==1:x=x+3
if h==1:x=x-3
;自機の描画
pos x, y
mes "aa"
redraw 1
await 1
loop
このスレッドはHSP開発Wikiの記事改善におおいに役立ちそうです。
T.Kさんに感謝。