フリックで進むクロッシーロードみたいなものをつくってみる

ayumegu(プログラマー)
よろしくお願いします。

はいこんにちは、あゆめぐです。
今回は何となく作りたくって作ってみたクロッシーロードの動きの部分つくってみました。
ちょっとした時間でつくってみただけなので移動しかしませんが

現在の状態(UnityPlayer)

操作方法

-クリック:前移動
-フリック:フリック下方向に移動

まだ木とのあたり判定などは作成していないです。
車や水のステージなどの自動生成をどのように実装しようか考え中なのですが
実は他に作りたいものができてしまってね・・・

ここまでで使っているアセットは

-iTween(無料):ジャンプと移動
-Easy Touch:フリックを受け取るところ
-Mini Mike’s Mini Metros – Core Collection(無料):モデル

フリック入力はEasyTouchなら簡単
タッチ周りのソースは現在こんな感じです。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
   // Subscribe to events
  void OnEnable(){
      EasyTouch.On_SwipeStart += On_SwipeStart;
      EasyTouch.On_Swipe += On_Swipe;
      EasyTouch.On_SwipeEnd += On_SwipeEnd;      
  }
  
  void OnDisable(){
      UnsubscribeEvent();
  }
  
  void OnDestroy(){
      UnsubscribeEvent();
  }
  
  void UnsubscribeEvent(){
      EasyTouch.On_SwipeStart -= On_SwipeStart;
      EasyTouch.On_Swipe -= On_Swipe;
      EasyTouch.On_SwipeEnd -= On_SwipeEnd;  
  }
  
  // At the swipe beginning 
  private void On_SwipeStart( Gesture gesture){
  }
  
  // During the swipe
  private void On_Swipe(Gesture gesture){
      isSwipe = true;
  }
  
  // At the swipe end 
  private void On_SwipeEnd(Gesture gesture){

      if(gesture.swipe == EasyTouch.SwipeType.Up)
      {
          PlayerMove(MOVE_UP);
      }
      else if(gesture.swipe == EasyTouch.SwipeType.Down)
      {
          PlayerMove(MOVE_DOWN);
      }
      else if(gesture.swipe == EasyTouch.SwipeType.Left)
      {
          PlayerMove(MOVE_LEFT);
      }
      else if(gesture.swipe == EasyTouch.SwipeType.Right)
      {
          PlayerMove(MOVE_RIGHT);
      }
  }
  
  void Update () {
      if (Input.GetMouseButtonUp(0)) {
          if(!isSwipe)
              PlayerMove(MOVE_UP);
          else
              isSwipe = false;
      }
  }

とくにたいした代物ではないですが・・・。
はい、今回はここまで~