今天要介绍最後一个小游戏,让我们开始吧!
目录
游戏机制介绍
障碍物-山的移动
障碍物-山随机产生
只要侦测到手部Grab的动作,帝江就会往上飞一点,如果侦测到连续动作,帝江就会飞越高,玩家要用Grab动作控制帝江不要撞到并且飞越山脉。
帝江 | 山 | 山 | 山 |
---|---|---|---|
RectTransform rec;
public float speed;
在山的产生器再产生山以後,用来给山呼叫的set函式,设定山的初始位置以及旋转。
public void setRec(RectTransform setPoint) {
rec = setPoint;
}
public void setRotation(){
rec.localEulerAngles = new Vector3(0f, 0f, 180.0f);
rec.anchoredPosition = new Vector3(2755, 440, 0);
}
void Update(){
rec.position -= new Vector3(speed * Time.deltaTime, 0, 0);
}
以上就是山的移动,接下来是山的产生。
时间到了就会产生新的山,所以需要计数器、山的物件、以及要产山生的点。
float f_nextGenTime = 3;
public GameObject[] mountainPrefab;
public RectTransform rec;
先判断计数器超过1了没
void Update()
{
if (f_nextGenTime > 1f)
{
int num = Random.Range(0, 3);
Generate(num);
num = Random.Range(0, 3);
GenerateAbove(num);
f_nextGenTime = 0;
}
else {
f_nextGenTime += Time.deltaTime;
}
}
void Generate(int num) {
GameObject mountain = Instantiate(mountainPrefab[num]) as GameObject;
mountain.GetComponent<MountainMove>().setRec(rec);
mountain.transform.SetParent(GameObject.FindGameObjectWithTag("canvas").transform, false);
}
void GenerateAbove(int num){
GameObject mountain = Instantiate(mountainPrefab[num]) as GameObject;
mountain.GetComponent<MountainMove>().setRotation();
mountain.transform.SetParent(GameObject.FindGameObjectWithTag("canvas").transform, false);
}
以上就是障碍物-山的移动与产生,明天会写到主角跳跃与手部侦测的部分,那就明天见罗~
<<: Android Studio初学笔记-Day24-FloatButton和SnackBar
人的科技文明发展始终来自於人性 在现今的科技与资讯发达的社会,人手一机已不再是奢望,连小小年纪的小朋...
MDN: https://developer.mozilla.org/zh-CN/docs/Glos...
假如你在 iPhone 和 Android 上恢复丢失的 LINE 对话,救援过程将使用一套数据恢复...
接下来几天会来模拟一下,实际合约的案例,来更深入了解一下 solidity 语法 首先我们先设定一个...
CISSP快速启动版(建议之最低要求) https://wentzwu.com/cissp-expr...