投稿
まさと BigTheBudou
このスライムが何回も画面を右から左に行くにはどうしたらいいですか? 作ったプログラムを見てください。 公開キー【CA5NQ39J】
0そうだね
プレイ済み
返信[1]
親投稿
あきと SideBurnsM
何度かまさとさんの質問に答えたのですが、もう少し自分で考えて組んでみてから質問した方がいいですよ。背景も反転できてないようですし。
0そうだね
プレイ済み
返信[2]
親投稿
まさと BigTheBudou
はい。わかりました。自分で考えても無理だったのでやってたつもりですがやっぱり何でも頼ってしまうのは良くないですね。今後気を付けます。
0そうだね
プレイ済み
返信[3]
親投稿
こうやま kouyama1967
 あきとさんと同じ事を考えていたのですが、毎回毎回すべての実装希望が、質問になっちゃっていますね。  こういう場合、この場所のように不特定多数の人が読み書きできる場所でなく、誰か一人を師匠にして質問攻めにするのが一番いいのですが、恐らくプログラムで質問に回答出来る人が、まわりにまったくいないのだと思います。  メール、電話、ごく一部の仲間だけで文章の交換ができるネットシステムなどで、教えてくれる人を見つける方法が、一番いいと思います。
0そうだね
プレイ済み
返信[4]
親投稿
あきと SideBurnsM
キツイ言い方になってしまってごめんなさい。 本当に考えて書いてみたけど動かなかったと言うのであれば、やりたいことを細かく分けていくのがいいと思います。 スライムは最初から画面にいるのでしょうか?しばらく経つと出現するのでしょうか。 しばらく待つのであれば「2秒待ってから」を実現するための変数が必要になります。 スライムか左右に動くということは「左向きに移動している時」と「右向きに動いている時」があります。 どうなったら向きを変えるのでしょうか、多分画面の端で向きを変えるのですよね。画面の端になっているのを判定するのはどうすればいいのか考えてみるといいと思います。
0そうだね
プレイ済み
返信[5]
親投稿
printf printf
実現する方法はいろいろあると思いますよー X座標が画面の左端(スプライトの大きさも考慮して-64より小さいか)を判定するのも一つの方法ですが、このプログラムではSPANIMを使って画面の左端に消えるように指定しているので、SPCHK()を使ってスプライトの移動アニメーションが終ったかどうかで判定するのがとっても簡単かもしれませんねー で、その判定ができてしまえば後は簡単、再びスプライトを右端にセットし直してもう一度SPANIMを使えばまるっと解決!ですねー
0そうだね
プレイ済み
返信[6]
親投稿
printf printf
例えば、こんな感じで
0そうだね
プレイ済み
返信[7]
親投稿
printf printf
SPCHK()が何故こんな判定をしているかというと... ザックリいうとSPANIMの「XY移動」が終ったかどうかの情報がSPCHK()が返す値の1ビット目にセットされているからなんですよー まぁ、いろいろ数字をいじくって試行錯誤しながら理解を深めるのが一番良いかもしれませんねー
0そうだね
プレイ済み
返信[8]
親投稿
まさと BigTheBudou
的確な指摘と貴重なアドバイスをありがとうございました。
1そうだね
プレイ済み