Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
177 78 79 80 81 82 83 84 85 86 87 88
次のページ(過去)
返信[28]
親投稿
Hanzo rzsense
○秒タッチし続けたら、タッチを放していなくても強制的にタッチを放したことにして処理を行い、その後実際にタッチを放しても無視する、ということでしょうか? だとすれば、私の提示例におけるIF文を次のようにしてみましょう。 IF(PTM>0 && PTM<60 && TM==0)¦¦ TM==60 THEN・・・ 1秒以上タッチしていたら、タッチを放さなくてもBEEP音を鳴らし、以降、実際にタッチを放しても無視します。 タッチ状態を想定し、それぞれの変数やIF条件判定がどうなるのか、紙に書き出すなどしてシミュレートしてみることをおすすめします。
0そうだね
プレイ済み
返信[14]
親投稿
Hanzo rzsense
速い方の弾速がデフォルトなんですね。恐縮です。 加齢のせいか、速い弾と遅い弾が混在していると、それぞれに適応するのが極めて難しいのですが、弾速が一定なら、昔取った篠塚と言うやつで、ある程度速くても、何とかできる気はしています。
0そうだね
プレイ済み
返信[25]
親投稿
Hanzo rzsense
○秒以上タッチしていたら、タッチを放しても反応しないようにする、ということでしょうか? それならば、添付をご参照ください。 添付では、1秒(60フレーム)以上タッチし続けていると、タッチを放してもBEEP音を出しません。
0そうだね
プレイ済み
返信[24]
親投稿
Hanzo rzsense
私の例のPTMは、ナツキさんの例のPREVSTTMと全く同じで「1フレーム前のタッチ状態」を表します。 PTM=-1は、実はPTM=0でもよいのですが、PTM=正の値ではダメです。なぜか?それは、実際にPTM=-1をPTM=1にしてみればわかりますが、ループに入ったばかりの段階で、PTMが正すなわち1フレーム前はタッチされていたことになり、判定を誤ります。
0そうだね
プレイ済み
返信[12]
親投稿
Hanzo rzsense
これはいいですね!敵や背景が変化に富み、スクロール速度も緩急があってプレイヤーを飽きさせません。やられても「クソッ!もう一回!」と言ってついついリプレイしてしまう、ホリックの名は伊達ではありませんね。 不満があるとすれば、ご自身でもお気づきと思われるとおり、遠方の敵から発射される弾速が速すぎることです。三角関数が解らないとのことですが、実は三角関数を一切使わずとも、弾速を一定にできます。具体的には、次のとおりです。 (652,653行目を消すかコメントアウトしておき、その部分に次のコードを追加) DX=PX-EX[I]:DY=PY-EY[I] PED=SQR(DX*DX+DY*DY) ETUX[II]=8*DX/PED ETUY[II]=8*DY/PED 定数8の部分を大きくすると弾速が速くなり、小さくすると遅くなります。
2そうだね
プレイ済み
返信[1]
親投稿
Hanzo rzsense
スプライトは画面中央で固定ですよね? ならば、恐らく SPOFS 0,X,Y BGOFS 0,X,Y を SPOFS 0,200,120 BGOFS 0,X-200,Y-120 と変更すれば行けると思います。
2そうだね
プレイ済み
返信[17]
親投稿
Hanzo rzsense
「タッチペンが放されたときの処理」は、例えば添付リストをご参照ください。添付では、タッチして放すと、BEEP音が鳴ります。なお、タッチ状態(ボタン状態も)は、1フレームの間保持されるので、TOUCH OUTの実行は、最低1フレーム(VSYNC)空ける必要があります。
1そうだね
プレイ済み
返信[2]
親投稿
Hanzo rzsense
クッキーさんの手法がスマートと思いますが、一応「別解」を提示致します。40個の数列の中からランダムに1つを選んだら、次は先程選んだ以外の39個から1つを選んで・・・と言う手順を40回繰り返します。
0そうだね
プレイ済み
返信[1]
親投稿
Hanzo rzsense
プログラムリストの見えている範囲だけで判断する限り、ビット演算結果を判定している部分が正しくないように思います。以下のようにしてみたらいかがでしょうか。(ちなみに、変数IDはBUTTON()の結果を代入している変数と理解して正しいですか?) [誤] ID AND 1 → [正] (ID AND 1)!=0 [誤] ID AND 2 → [正] (ID AND 2)!=0 [誤] ID AND 4 → [正] (ID AND 4)!=0 [誤] ID AND 8 → [正] (ID AND 8)!=0 [誤] (ID AND 2)!=1 → [正] (ID AND 2)==0 [誤] (ID AND 4)!=1 → [正] (ID AND 4)==0 [誤] (ID AND 8)!=1 → [正] (ID AND 8)==0
1そうだね
プレイ済み
返信[4]
親投稿
Hanzo rzsense
ご質問の意図と異なっていたら恐縮ですが、添付リストのような方法もあります。 添付では、キーボードからの入力がない状態で5秒以上経過するとブザーが鳴り出し、キーボード入力を再開するとブザーが止まります。
0そうだね
プレイ済み
返信[4]
親投稿
Hanzo rzsense
そうでしたか! 淵根三豪RPGの早期完成を願ってはいますが、無理をせず、ご自身のペースで製作を続けてください。これからも応援させていただきます。
1そうだね
プレイ済み
返信[4]
親投稿
Hanzo rzsense
添付プログラムのようなことでしょうか?
0そうだね
プレイ済み
返信[5]
親投稿
Hanzo rzsense
現リストの32~35行目の部分は、プログラム起動後1回だけ実行すればよい初期化部分だと思われるので、元の位置から移動する必要はなかったです。 39~45行目は現在位置でOKです。 問題は38行目です。この行は、条件に応じて39行目以降の@TEKIDERUサブルーチンを呼び出す役割があるので、@TEKIDERUサブルーチンの直上にあるのでは無意味です。38行目は本来、@MAINループの中にあるべきと思います。当方の思い違いであればご容赦ください。 なお、蛇足かも知れませんが念のために申しますと、BASICプログラムは、GOTOやGOSUBでジャンプする場合を除けば、行番号の若い方から順繰りに実行されます。
0そうだね
プレイ済み
返信[3]
親投稿
Hanzo rzsense
10行目のIF分岐を@MAINループ内に移動したとしても、@TEKIDERUサブルーチン(@TEKIDERUからRETURNまでの部分)が現在の位置にあると、結局GOSUBで呼び出される前に実行されてRETURN without GOSUBエラーが出るので、@TEKIDERUサブルーチンは@MAINループ外、かつ@MAINループよりも下に置く必要があると思います。
1そうだね
プレイ済み
返信[2]
親投稿
Hanzo rzsense
17行目でRETURN without GOSUBエラーが出るのでは? @TEKIDERUサブルーチンを呼び出している10行目は、本来@MAINループの中のどこかに入れるべき処理だと思いますが・・・
1そうだね
プレイ済み
返信[2]
親投稿
Hanzo rzsense
下画面にBGでボタンなどを描いておき、任意の点をタッチしたらBGGETでタッチした点のスクリーンデータをを読み取り、その値に応じた処理を実行するという方法もあります。例えば、添付リストをご参考ください。
0そうだね
プレイ済み
返信[4]
親投稿
Hanzo rzsense
添付のRNDR関数は参考になりますでしょうか。RNDR(A,B)で、AからBまでの範囲の乱数が得られます。
1そうだね
プレイ済み
返信[1]
親投稿
Hanzo rzsense
13行目「LOCATE SY,SY」を「LOCATE SX,SY」とすれば、とりあえずミサイルは飛びますよ。添付のようにすれば、主人公のはみ出しや、ミサイル発射ボタンの応答などが改善されると思いますので、ご参考まで。
0そうだね
プレイ済み
返信[2]
親投稿
Hanzo rzsense
本作は全4ステージ構成で、各ステージの最後にボスが待ち構えており、ボスを倒すと次のステージに進むことができます。当節流行の弾幕系STGには遠く及ばないものの、本作でも、敵や敵弾をかわし続けるには、それなりのテクニックが要求されますので、心してプレイしてください。
0そうだね
プレイ済み
返信[1]
親投稿
Hanzo rzsense
私のプロフィールに記載の公開キーにて「HNZPJ0」と言うプロジェクトをダウンロードしていただき、その中の「HNZ3GO」をRUNすれば、本作をプレイいただけます。十字ボタンまたはスライドパッドで主人公の移動、Aボタンで剣を振ります。タイトル画面の「RAPID SWORD」を「ON」にし、剣を連射状態にしておくことを推奨致します。たまに主人公の妹「仁羽」が画面上部を横切り、星形アイテム(時限的かつ段階的に剣を強化)または風船形アイテム(一定時間敵や敵弾の接触を無効化)を投擲します。
0そうだね
プレイ済み