いんでぃーづスマートフォン用の表示で見るいんでぃーづゲームメインのブレブレブログ。C#最近UniRxにハマっていまして、今回はアドベンチャーゲームなど汎用的に使えるテキストシステムをUniRxで書いてみました。以下のような動作になります。"それっぽく"見えるでしょう。ソースとりあえずソース貼ります。}}以下のステップで使えば動きます。関数を呼ぶ以下につらつらと書いてあるワタクシのつたない解説は読まなくていいんですけど自分の中で消化するために書きます。解説テキストを全部表示させる待ちを作るまずテキストが流れている最中にクリックした場合の、残りのテキストを一気に表示するための待ちを作ります。Observable.EveryUpdate()〜これをあらかじめ作っておくのは、クリックせずにテキストが全て流れた後に、この待ちをキャンセルする必要があるためです。一定のインターバルでテキストを表示させていくストリームを作るObservable.Interval(TimeSpan.FromMilliseconds(300))から始まる一連の処理で行います。メソッドチェーンのTakeUntilの中でさらにObservableを作り、テキストが全部表示し終わったら終わりという判定を作っています。Subscribeの第二引数には、テキスト全部表示した際に一度だけ呼ばれるコールバック処理を食わせています。この中では最初に作成した待ちをキャンセルする処理と、クリックを促すためにアイコンを点滅させるObservableをさらに作成しています。アイコン点滅Observable.Interval(TimeSpan.FromMilliseconds(200))〜から始めるアイコン点滅処理のメソッドチェーンでもクリックを判定しており、この中からテキスト表示処理を再度開始すると、上記までのテキスト処理がループすることになります。突貫工事ですがまあまあ上手くできたかなと。Rxは奥が深くておもしろいです。uGUIにフリーフォントを適用するゲーム内のテキストがデフォルトフォントだとがっかりしますよ...2017-01-08クッキークリッカーをスクリプト1行で再現する「雑再現」シリーズ第三弾。はてなブログProインディーゲーム開発してます。ゲーム開発のことやらUnityまわりのことをつらつらと。当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。すべて自己責任でお願いします。スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。