プレイ日記
shoum shoum0403
AとBの数値が同じだった場合、 リーーチという文字を左の画面外から 右の画面外にながすには、どこをどうしたらいいですか?
2そうだね
プレイ済み
返信[1]
親投稿
この処理って、スプライトなら動的にアニメーション(移動)させる命令とかあるのでシンプルに書けますが、テキストの場合は意外と面倒なんですよね。 処理的な流れとしては、 1 「リーチ」と表示する為の位置の変数を用意して初期化しておく。また同じだったかどうかのフラグを用意して初期化しておく。(このフラグは位置用の変数と共用する方法もあるけど) 2 2つの数字が揃ったらフラグを立てる。 3 フラグが立っていたら「リーチ」を表示する。表示中は位置の変数を加算して右に流れるようにする。一番右まで流れたらフラグをオフにする。 という感じですね。オフにしたフラグが再度オンにならないような工夫やリーチの文字を完全に画面外からスタート(部分的に表示される事もある)のだとしたら、その辺も処理する必要があり、さらに面倒になります。 と言うのが一応の流れです。
1そうだね
プレイ済み
返信[2]
親投稿
みむ*mim hidemimtp
PRINT文でやろうと思ったら、画面外から画面外へ、だとちょっと複雑ですね。 FORやWHILEなどのループを使いつつ、 ・最初は「チ」、次に「ーチ」・・・ ・途中は「リーーーチ」を移動、 ・最後のほうは「リーーー」「リーー」のように減らしていく となるような処理が必要です。MID$,LEFT$,RIGHT$などを使いながら。 スプライトえば簡単!と言いたい所ですが、最初は覚えることが多くて逆に難しいかもしれませんし、コンソール(PRINTなどで扱う文字列)でやるのは勉強になるし別の楽しさがあります(^^*
1そうだね
プレイ済み
返信[3]
親投稿
作ろうとしたが作れなかった(汗
0そうだね
プレイ済み
返信[4]
親投稿
TERA(LL) tera0413
右から左で、他に何も表示されてないという条件なら、そんなに難しくもないですが・・・
0そうだね
プレイ済み
返信[5]
親投稿
Hanzo rzsense
"リーーーーチ"の左右それぞれに50個のスペースをくっつけた文字列を用意しておき、その文字列から50文字を切り出して、画面の左端に表示させます。50文字切り出しの開始点を、文字列の右から左にずらして繰り返せば、文字列が左から右に流れているように見えます。 添付をご参照ください。
2そうだね
プレイ済み
返信[6]
親投稿
otta777 otta777a
もう少し簡潔に出来るかも知れませんが、とりあえず動きます。
1そうだね
プレイ済み
返信[7]
親投稿
みむ*mim hidemimtp
思わぬ良スレ! Hanzoさんのやり方、賢いなぁ。
0そうだね
プレイ済み