投稿
レやぐら igneet-8610
変数Aが一秒ごとにZ増えるっていうプログラムと、Uが1増えたとき、○○を実行する。 というプログラムを教えてください。 自分でもやってみましたが、できませんでしたorz
1そうだね
プレイ済み
返信[1]
親投稿
こうあん kou051213
1秒のほうは、 Z=2'Zが2のばあい @LOOP WAIT 60'1びょうまつ A=A+Z GOTO @LOOP
0そうだね
プレイ済み
返信[2]
親投稿
何時何分何秒?(TMREAD)って命令があるのでそれで秒を調べて、前と変わっていたかを調べればできます。 「Uが1増えたとき、○○を実行する。」 これも、前と変わっていたかを調べればできます。 前と変わっていたかを調べる方法は… たとえば今日食べた夕飯は明日から見ると「昨日食べた夕飯」になるよね。
0そうだね
プレイ済み
返信[3]
親投稿
「"今の値"を"さっきの値"にコピーしてから、"今の値"を新しくして「もし さっきの値 と 今の値 が 違う なら~」 「もし さっきの値 と 今の値 の 差が 1 なら~」 言葉だとわかりにくいけど OU=U U=計算式 ここでいろいろなことをやる IF U-OU==1 THEN Uが1増えたらやること 一番上の行に戻る(GOTOとか) OUが"さっきの値"を入れるためのもの 今の値(U)をさっきの値(OU)にコピーしてから「もし(IF)」で増えているか調べる
1そうだね
プレイ済み
返信[4]
親投稿
ΖΕΧ ZEX256
Z=123459WHILE 1WAIT 60INC A,Z WEND B=U 何か IF U-B==1 THEN ○○
0そうだね
プレイ済み
返信[5]
親投稿
マギー M191246
「Uが1増えた時」というのは、 Uに対する増分が小数ということでしょうか? もし、その増分を整数倍して ちょうど1にならない場合もあるとしたら、 IF U>=保存値+1 THEN… としたらいいかと思います。
0そうだね
プレイ済み
返信[6]
親投稿
マギー M191246
「Aが1秒ごとにZ増える」というのは、 その1秒の間、 別の作業をするということでしょうか? 時間をチェックする処理の間隔が 1秒未満であることがわかっているときは、 単純にTIME$そのものを保存していても いいかも知れません。 変化していれば、1秒経っていると言えます。
0そうだね
プレイ済み
返信[7]
親投稿
マギー M191246
より正確にするなら MAINCNTを使って比較する方法もあります。
1そうだね
プレイ済み
返信[8]
親投稿
MIKI ifconfig
クッキークリッカー作ってるみたいだから、メインループは1/60周期で回さないとダメだと思う。 1秒はmaincnt mod 60 == 0で判定するのがいいかな。 u 変化検出はあまさとしおんさん方式がいいでしょう。 ou = u while 1 vsync if maincnt mod 60 == 0 then 一秒毎の処理 u = u再計算 if u != ou then ou = u: u変化した時の処理 wend
0そうだね
プレイ済み
返信[9]
親投稿
BANシロウ noodle777123
このゲーム結構ハイレベルなんですね…
0そうだね
未プレイ
返信[10]
親投稿
レやぐら igneet-8610
皆さんありがとうございます。 結構できました!
0そうだね
プレイ済み