Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
1 2 3 4 5 6 7 8 9 10 11 12 13
次のページ(過去)
返信[1]
親投稿
おにぎり EasyPuzzler65
69,70行目のIF文、ANDじゃなくてORにしてください。条件式同士のORをとるので||のほうがもっといいです。 こんなやり方もありますよ INAREA=(276<X)&&(X<292)&&(92<Y)&&(Y<108) IF !INAREA GOTO @MAIN INAREAはX,Yが(277,93)-(291,107)の四角形の中に あればTRUE,外ならばFALSEになりますから、 FALSEのときに出れば望みの動きになります。
0そうだね
プレイ済み
返信[7]
親投稿
おにぎり EasyPuzzler65
バグがあったので更新.L47X83Q4.
0そうだね
プレイ済み
返信[8]
親投稿
おにぎり EasyPuzzler65
リプライ遅くなりました。アドバイスにしたがって、表示が乱れないように工夫してみました。どうもありがとうございました。公開コードNKX3E4ZS。
0そうだね
プレイ済み
返信[7]
親投稿
おにぎり EasyPuzzler65
弾のスピードは一定と考えて、弾が出現してからのフレーム数で決めたらどうでしょう.(遠ざかって見えなくなったと考える.)弾は無敵で、敵に当たっても軌道をかえずにぐいぐい進むと思っているんですよね?
0そうだね
プレイ済み
返信[5]
親投稿
おにぎり EasyPuzzler65
「弾が奥に行き当たったとき」の条件が書ければできるんじゃないでしょうか。うまく考えて決めないと…
0そうだね
プレイ済み
返信[6]
親投稿
おにぎり EasyPuzzler65
公開コードNK45Z3X3です。
0そうだね
プレイ済み
返信[5]
親投稿
おにぎり EasyPuzzler65
2番キャラ以外のところは入れなくしたバージョン。
0そうだね
プレイ済み
返信[4]
親投稿
おにぎり EasyPuzzler65
× AND 4096 ○ AND 4095 まちがえました.ごめんなさい.
1そうだね
プレイ済み
返信[3]
親投稿
おにぎり EasyPuzzler65
その場合はまず、キャラクタ(SP)の範囲と背景(BG)の領域とがぴったり重なるように移動させないといけないと思います.動きのオフセットを3にされていますが、これを16の約数にする必要があります。その上で、BGの左上位置がXYとも16の倍数になっているときだけ、キャラの上下左右に隣接するBGの情報をとってきて判定をするようにします。BGの縁の部分でBGがないところをBGGETしたときエラーになるかどうか、確認していませんが気になります。BGGETの返り値は, AND 4096すればキャラ番号だけが残るようなので、それで判定できるかと思います。
1そうだね
プレイ済み
返信[2]
親投稿
おにぎり EasyPuzzler65
SPX=192:SPY=112はこの上の方でしてあると思ってください。25x15のBGの上からはみ出ないということであればこのプログラムでいいと思いますが、おそらく狙っているのは山は通れない、みたいに、キャラの下にさしかかったBGの状態で判定したいのだろうと思います。(つづく)
1そうだね
プレイ済み
返信[1]
親投稿
おにぎり EasyPuzzler65
詳しい説明は次のコメントで。
1そうだね
プレイ済み
返信[5]
親投稿
おにぎり EasyPuzzler65
13行以降で2つのキャラクタに動きをつけておられますね. それで,どこかの時点でSPHITSP命令を使って,2つのスプライトが衝突しているかどうかを調べて,衝突していたらそのtきのプログラムを書かないといけないです.かってに一方のスプライトが他方のスプライトの動きを邪魔する,というふうにはならないです.あくまでプログラム内で当たりを判定して,互いに邪魔をしあう動きをプログラムとして書かないといけないです.
0そうだね
プレイ済み
返信[3]
親投稿
おにぎり EasyPuzzler65
なんどもすいません.もとのソースの意図(拡大縮小であたり判定の大きさもかえる)ということであれば SPCOL 1,0,0,16,16,1 SPCOL 0,0,0,16,16,1 (最後の1はTRUEでもよい) となるでしょうか。
0そうだね
プレイ済み
返信[2]
親投稿
おにぎり EasyPuzzler65
アッ間違えた。正しくはこうです。 SPCOL 1,0,0,16,16 SPCOL 0,0,0,16,16 ごめんなさい。
0そうだね
プレイ済み
返信[1]
親投稿
おにぎり EasyPuzzler65
10行目と11行目をこうしてみてください。 SPCOL 1,0,0,16,16 SPCOL 0,1,1,16,16 これでSPHITSP(0,1)で当たり判定ができるようになると 思います。
0そうだね
プレイ済み
返信[8]
親投稿
おにぎり EasyPuzzler65
ありゃ本当だ勘違い。orz
1そうだね
プレイ済み
返信[1]
親投稿
おにぎり EasyPuzzler65
スプライトを出すときはSPSET スプライトを動かすときはSPOFS しっかりマスターしよう 大きく小さくはSPSCALE ぐるぐるまわすはSPROTとSPHOME ここもこつがひとつある(中心の決め方とキャラの選び方) 次に覚えたいのが当たり判定 SPCOLとSPHITSPのセットだね SPANIMは複雑で細かい芸をさせたいときに便利だけど けっこう使いこなすには細かい技が入ります SPLINKはつかえるとおしゃれだけどSPANIMのあとでもいいかな
0そうだね
プレイ済み
返信[5]
親投稿
おにぎり EasyPuzzler65
絶対座標でなく相対座標で回すと、ドラムが半分まわって止まる感じになるので、壊れてる感は演出されますw。で、0のところでもどる。
0そうだね
プレイ済み
返信[4]
親投稿
おにぎり EasyPuzzler65
その90秒ごとの出来事は興味深い…ドラムが回りきったところで秒カウントに合わせたいので、time$を使う限り1秒前からアニメを始めているので、ご指摘のことがあるとタイミング合わないですね。最初の1ドット問題も秒切り替えの頭出しをするために やむなくといったところです。ちょっとだけアニメを短くするという逃げも考えたのですが、それより表示乱れの方が大きい問題なので、そっちを先に、という考えでした。
0そうだね
プレイ済み
返信[1]
親投稿
おにぎり EasyPuzzler65
GRP4(ほんらいのスプライト面)から必要な文字だけをGRP0にコピーして、SPPAGE 0でGRP0をスプライト面に指定し、 SPSET 管理番号,U,V,W,Hの形を使って直接管理番号に位置と大きさのデータを登録している.SPANIMでUVの位置を動かして、ドラム式の表示を作っている。文字を横に並べておいて横スクロールするドラムにしても面白いと思うし、スロットマシンの絵柄がくるくるまわる動きにも使えると思う。だんだんドラムの回転がゆっくりになるところをどう表現するかが難しそうだけど。
0そうだね
プレイ済み