簡単な状態遷移って switch でやることが多いと思うんだけど
決まった順序で遷移する状態を switch でやると流れが分かりにくい。
int state;
switch(state) {
case IN: in(); break;
case LOOP: loop(); break;
case OUT: out(); break;
}
IN->LOOP->OUT の順番は決まってる。
in();
while(is_loop()) {
loop();
}
out();
みたいに書けないかなと思っていたらこんなの見つけた。
ttp://f3.aaa.livedoor.jp/~gsyoku/index.php?[[Fiber]]#content:3
機能をゴリゴリ削って使うところだけ自分なりに実装してみた。
ttp://github.com/happana/srpg/blob/master/srpg/base/flow.hpp
ttp://github.com/happana/srpg/blob/master/srpg/scene/battlescene.cpp#L36
探検
ニュース
- 【地震速報】青森県で震度6強 沿岸部に津波警報 ★2 [ぐれ★]
- 【速報】高市総理が官邸入り [Hitzeschleier★]
- 【震度6強】政府 危機管理センターに官邸対策室を設置 [ぐれ★]
- 「日の丸にバツ印」掲げた大学生 あいまいな国旗損壊罪に「怖い」 The Mainichi [少考さん★]
- 高市内閣「支持」64%「不支持」19% NHK世論調査 ★2 [少考さん★]
- 東北電力、女川原子力発電所の安全設備に異常は確認されていないと投稿 午後11:52 [少考さん★]
- 地震 ★2
- 【速報】高市早苗、起床 [779938112]
- このタイミングで、日経先物マイ転、円安進展、 [219241683]
- 青森で大火事 [579392623]
- 【🏡】岩手ビックウェーブ🏄うおおおおおおおおおおお🌊
- 大地震
