表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

149/210

RxJSとはなんぞや?⑤ サイコロ連打の記録に挑戦

すこしイメージがつかめてきたRxJSですが、ゲームブックアプリで使えそうな部分は


・戦闘イベントでサイコロを短時間で振りまくった時の統計情報を記録保存


位かと思います。


Cookie Clicker的なアプリを作る際にも役に立つかも?


幾つか予想されるトラブルもありますが、試してみましょう。


さて、まずは目的(とその状況)を考えていきます。


・画面上に2つのサイコロが表示され、ボタンを押すことで出目が(ランダムに)変わる

・2つのサイコロのそれぞれの目(1~6)と合計値(2~12)の出現回数を記録する

・記録変更するデータベースは、貧弱な性能で処理と応答に時間がかかるかもしれない


上の2つの条件だけならばRxJS使うまでもないように思いますが、3番目の条件が入ると導入の価値はあるんじゃないかと思います。


次に、思い付きで仕様を考えてみます。


・サイコロを振るごとに出目を配列の末尾に追加

・振った回数が、例えば100回ごとに集計してデータベースの変更を行う

・その際に配列の先頭100を削除(例:Arr.splice(0, 100))

・一定時間(例えば1秒)サイコロが振らなければ、その時点の配列をコピーして集計、DB変更

・その場合、集計したデータ数分だけ配列の先頭から削除

・サイコロを使う画面が他の画面に変わる時、配列の集計とDB変更。配列初期化。


エラー処理とかは無いですが大筋は行けそうな気がします。


"fromEvent"と"interval"の2種類のObservableのマージも使うし”ちゃんとした”RxJSのサンプルになるかも?


このまま続きを書く予定ですが、ここで一旦投稿です。




帰宅しました。


外出中、上の仕様考えなおしました。


"interval"、要らないですよね?


覚えたばかりのテクニックをつい使いたくなるという奴です。


規定回数サイコロを振ったら書き込むとサイコロ使用画面の終了で書き込むだけでよく、画面の終了をチェックボックスか何かでチェンジイベント発生を監視すれば事足ります。


ただMouseMoveでイベントがあっさり拾えた事に油断していました。


fromEventによるチェンジイベントの発生の監視がうまく行かない。


しばらく取り組んでみます。投稿

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ