Actions
機能 #7
closedGem Questの時間を表示する
Start date:
12/30/2018
Due date:
% Done:
100%
Estimated time:
Description
Gem Questの5分前からQuestが終了するまで、Gem Questの開催がわかる表示をする。
Updated by mole lord about 4 years ago
- Status changed from 新規 to 進行中
- % Done changed from 0 to 10
開催がわかる表示をするのはやめて、右下の時計をマウスオーバしたときにGem Questのタイムテーブルが表示されるようにする。
ただし、他地域のローカルタイムでやっているイベントが自分のローカルタイムで何時になるかを求めるのは難しそう。夏時間と通常時間の切り替わりも考慮する必要がある。
Updated by mole lord about 4 years ago
- Status changed from 進行中 to 終了
- % Done changed from 10 to 100
コミット fe533cf で修正を済ませた。
アルゴリズムは以下の通り。
- 現在の時刻からInstant currentTimeを得る。
- currentTimeを15分刻みの時間に切り上げる。15分なのは、時差の最小単位が15分だから。
- currentTimeをゲームサービスのローカル時刻(nutakuならAmerica/Los_Angeles)に変換し、zoneTimeを得る。
- zoneTimeを15分ずつ増やし(一週間ぶん繰り返す)、ジェムクエストの時刻と一致するか調べる。
- 一致したら、zoneTimeをいちどInstant型に変換し、さらに自分のローカルタイム(ZoneId.systemDefault())に変換した後、ローカル時刻表に書き込む。
- ローカル時刻表を表示する。
Actions