萌熊跑酷專案 26 30 手勢控制

2021-09-11 00:20:23 字數 1769 閱讀 8269

萌熊跑酷專案-手勢控制

手勢五種狀態

public static class consts  

//輸入手勢

public enum inputdirection

手勢判斷

判斷過程如圖最上圖

x方向的位移距離大於y軸方向的距離 時,左右移動     x>0向右,xx方向的位移距離小於y軸方向的距離 時,上下移動     y>0向上,y20)

else if (mathf.abs(dir.x) > mathf.abs(dir.y) && dir.x < 0)

else if (mathf.abs(dir.x) < mathf.abs(dir.y) && dir.y > 0)

else if (mathf.abs(dir.x) < mathf.abs(dir.y) && dir.y < 0)

activeinput = false;}}

//鍵盤識別

if (input.getkeydown(keycode.w)||input.getkeydown(keycode.space))

else if (input.getkeydown(keycode.s))

else if (input.getkeydown(keycode.a))

else if (input.getkeydown(keycode.d))

}更新位置資訊

角色在中時,m_nowindex為1,左邊時為0,右邊時為2,用於指代角色所在賽道位置,賽道間距為2

/// /// 更新位置資訊

///

void updateposition()

break;

case inputdirection.left:

if (m_targetindex>0)

break;

case inputdirection.down:

if (m_isslider==false)

break;

case inputdirection.up:

if (m_cc.isgrounded)

break;

default:

break;}}

更新完成位置後,真正實現位置移動

//移動

void movecontrol() }}

if (m_isslider)}}

public class playeranim : view 

}private void awake()

private void update()

}void playrun()

void playleft()

}void playright()

}void playroll()

}void playjump()

}public void animmanager(inputdirection dir)

}public override void handleevent(string name, object data)

}

最終效果

萌熊跑酷(六)編輯器擺放障礙物

擺放方案 using system.collections using system.collections.generic using unityengine using system public class patternmanager monosingleton 乙個物體的資訊 serial...

UNITY 跑酷學習2

今天又看了知乎,又看到了學習方法,裡面提到意志力的重要性,以及有效學習的概念,我看到了裡面說,寫部落格能增強我的意志力,所以我今天來將昨天的工作新增到部落格,算一次積累,訓練意志力的機會,以及熟悉unity 3d的機會。昨天主要實現了road的自動產生,以及人物運動的碰撞機制,以及簡單的ui的處理。...

cocos2d JS跑酷遊戲實戰筆記2

cocos2d js跑酷遊戲實戰筆記2 地圖載入出錯,原因是獲取人物的座標,轉化成地圖座標的行和列後,獲取地圖的gidat時橫縱座標時弄反了 獲取人物的縱座標var y hero.getpositiony 判斷是否在地圖的塊上 if y 32 座標轉化成地圖的行和列 var nowrow parse...