teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

雰囲気コード追加

2017/02/03 04:57

投稿

ozwk
ozwk

スコア13553

answer CHANGED
@@ -11,4 +11,27 @@
11
11
  次の状態を算出し、
12
12
  算出した次の状態から外部への出力(LCD、音)を求め(実行)ます。
13
13
 
14
- 特に状態遷移と外部出力を分けることで、コードがわかりやすくなります。
14
+ 特に状態遷移と外部出力を分けることで、コードがわかりやすくなります。
15
+
16
+ ---
17
+ ループ処理の状態更新部分は雰囲気こんな感じです。あくまで雰囲気。
18
+
19
+
20
+ ```C
21
+ if(!System.ShouldUpdate) // 100Hzとかで状態更新 周期はどこかに定数で持っておくと楽
22
+ return;
23
+
24
+ if(Input.ButtonReload && !PreviousState.IsReloading){
25
+ State.IsReloading = true;
26
+ State.TimeToReload = (int)(ReloadTime_ms / SystemTimerInterval_ms); // [ms] / [ms/update]
27
+ }
28
+ if(PreviousState.IsReloading){
29
+ State.TimeToReload = PreviousState.TimeToReload - 1;
30
+ }
31
+
32
+ /*
33
+ ...
34
+ */
35
+ PreviousState = State;
36
+ ResetFlag()
37
+ ```