Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
140 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 6072
次のページ(過去)
返信[3]
親投稿
otta777 otta777a
SYSプロジェクトからMAPデータのファイルをコピーして コピーしたMAPデータを読みこむのではダメですか? DIRECTモードでSMILEボタンに割り当てたプログラムの あるプロジェクトに切り替えてから下記のプログラムを 実行してMAPデータのファイルをコピーして SMILEボタンからスマイルツールメニューを起動し 更にマップエディタを起動しMAPデータをロードする という方法です。かなりの力業ですが^^;;; DIM BUF[0] LOAD "DAT:SYS/GAME3",BUF SAVE "DAT:MAP_GAME3",BUF
0そうだね
プレイ済み
返信[10]
親投稿
otta777 otta777a
15行から18行までのIF命令で画面からはみ出ないように する所も数値の変更をする必要があります。 3行目でSPOFSを、21行目でSPSETをしていますが 3行目でSPSET、21行目でSPOFSをするように変更して 下さい。 SPSET命令はスプライトの初期化でSPOFS命令が スプライトの表示位置の指定です。
0そうだね
プレイ済み
返信[7]
親投稿
otta777 otta777a
20行目はSPOFS 0,X,Yとすればスプライトが移動して いるように見えますが、X,Yの数値を制限している ところが文字単位の座標になっているためスプライトの 座標に対応した数値に変更する必要があります。 49→383 29→223 に変更して下さい。
0そうだね
プレイ済み
返信[6]
親投稿
otta777 otta777a
スプライトの表示位置を指定するにはSPOFS命令を 使用します。20行目でLOCATE X,Yとしていますが これはPRINT命令で表示する文字の位置を指定する 命令です。 SPSET命令はスプライトの初期化命令なのでループの 外(@Aより前)に記述して下さい。
0そうだね
プレイ済み
返信[2]
親投稿
otta777 otta777a
こういうやり方はどうですか?配列変数に位置を記憶して表示するスプライトによって参照する配列変数を変えるとこんな動きができます。
1そうだね
プレイ済み
返信[5]
親投稿
otta777 otta777a
まずどの命令でエラーになっているかは分かりますか? 9行目のLOCATE X,Yだと思います。 このLOCATE命令のヘルプを見ますと引数の解説に 座標X,Yには文字単位の座標(X:0~49,Y:0~29)と あります。この範囲を外れるとエラーになるので、 IF命令でこの範囲を超えないようにLOCATE命令の 前に入れてみて下さい。 IF X<0 THEN X=0 IF X>49 THEN X=49 変数Yについても同様です。
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
変数Hの数値で上下左右のどちらに移動中であるか 判定していますよね? で、変数Hの値が移動方向と一致しないときにSPANIMを 実行してその『後に』エンカウントするかどうか判定して いるため移動方向が変わる一瞬しかエンカウントの 判定をしていません。
0そうだね
プレイ済み
返信[23]
親投稿
otta777 otta777a
WIDTH 16の時に8×8ドットフォントの拡大では無く 16×16ドットフォントも表示できるようにして いただきたいです。 ファイル操作系の命令でファイル名の指定で プロジェクト名から指定できるように できないでしょうか? CHKFILE("TXT:プロジェクト名/ファイル名")で ファイルの有無がチェックできるのに LOAD "TXT:プロジェクト名/ファイル名" OUT 文字列変数 がエラーとなってしまいます。
2そうだね
プレイ済み
返信[2]
親投稿
otta777 otta777a
まずプチコン3号のCLEAR命令はダイレクトモード専用の 命令でプログラム中では使えません。 CLEARの範囲を限定したいということはその変数の名前は 分かっているということでよろしいでしょうか? その場合には変数の中身をクリアするサブルーチンか ユーザー定義命令を作成し範囲限定のCLEARをしたいときに そのサブルーチンか命令を呼び出すという手が考えられます。 ただこの方法では配列変数を配列変数として未定義の状態には できないのでCLEARしたのとは同じにはできません。
0そうだね
プレイ済み
返信[10]
親投稿
otta777 otta777a
LOAD "DAT:"でバイナリファイルを読みこむ対象になる 変数は数値配列変数です。 Type mismatchとなるのは数値変数を指定しているため その方の変数は扱えませんとエラーになります。 同じ事をしようとするなら DIM BUF[1] LOAD "DAT:GORLD",BUF,FALSE MANEY=BUF[0] となります。詳しくはLOADのヘルプを参照して下さい。
0そうだね
プレイ済み
返信[12]
親投稿
otta777 otta777a
作品を見させていただきました。 社長さんも大喜利テーマの解釈は人それぞれ、 あっと驚くような作品も待ってるっておっしゃってましたんで 3D機能をネタにした漫画もよいと思いますよ~。 イラストのタッチも好みですしキャラも可愛いですね。
0そうだね
プレイ済み
返信[7]
親投稿
otta777 otta777a
プチコン3号ではEND命令、またはプログラムが最終行まで 実行されると変数が破棄されるようですね。 昔使っていたマイクロソフトBASICではEND命令や プログラムが最後まで実行されても変数は破棄されて いませんでしたね。
0そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
上記のようにバイナリファイルでセーブした場合は 一度数値配列変数に読み込んだ後にそれぞれの変数に 代入します。 DIM BUF[4] LOAD "DAT:STATUS",BUF KOKUGO=BUF[0] SANSU=BUF[1] RIKA=BUF[2] SYAKAI=BUF[3]
0そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
数値だけで良ければ配列変数に記録したい変数を代入して 配列変数をバイナリファイルとしてセーブできます。 DIM BUF[4] BUF[0]=KOKUGO BUF[1]=SANSU BUF[2]=RIKA BUF[3]=SYAKAI SAVE "DAT:STATUS",BUF 詳しくはSAVE命令のヘルプを参照して下さい。
0そうだね
プレイ済み
返信[5]
親投稿
otta777 otta777a
BREPEATはループ処理の前に行って下さい。 ループ中にBREPEATを記述すると上手く動作しないようです。
1そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
GPSETで描いたグラフィックはBGANIM命令では表示位置を 変えられません。 BGPUT命令でBGの722のスクリーンデータを置くように 変更して下さい。 
0そうだね
プレイ済み
返信[5]
親投稿
otta777 otta777a
雨を描画した後に時計の描画が1秒に1回しか行われないため 時計の上に雨が残ってしまってますね。 雨を描画するときに時計の範囲に入る場合は描画をしない ようにすれば解決できると思いますがどうですか?
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
BG画面に星のBGを表示してBGOFS命令でXの表示オフセットを 変化させると星が横に流れて見えます。
0そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
訂正 IF TI$!=TIME$ THEN TI$=TIME$ 時計表示処理 ENDIF WHILE~WENDなどのループで毎回時計の表示処理をすると 処理が間に合わないかもしれないので表示内容が 更新されたとき(秒が加算されたとき)に表示処理を 行うと処理落ちしづらくなるかもしれません。
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
時間が切り替わったときだけ表示するのはどうですか? IF TI$!=TIME$ THEN LOCATE 0,0:PRINT TIME$;:TI$=TIME$
0そうだね
プレイ済み