0
我有這個C#腳本附加到我的主相機遊戲對象,它也有一個膠囊collider屬性。但是,它似乎沒有做任何事情。我應該如何修改/添加以使相機「跳」並再次掉到地上?當按下按鍵(最好是空格)時,如何讓遊戲對象跳轉?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Jump : MonoBehaviour {
[HideInInspector] public bool jump = false;
public float jumpForce = 1000f;
public Transform groundCheck;
private bool grounded = false;
private Rigidbody rb;
// Use this for initialization
void Awake()
{
rb = GetComponent<Rigidbody>();
}
// Update is called once per frame
void Update()
{
grounded = Physics2D.Linecast(transform.position, groundCheck.position, 1 << LayerMask.NameToLayer("Ground"));
if (Input.GetButtonDown("Jump") && grounded)
{
jump = true;
}
}
void FixedUpdate()
{
if (jump)
{
rb.AddForce(new Vector2(0f, jumpForce));
jump = false;
}
}
}
此外,我希望有關鍵這是空格,如果可能的話,但無論關鍵作品或已經有沒有好。我仍然在學習C#,所以如果解決方案很明顯,請原諒我。
我知道你在你的問題中有一個代碼,但我有一種感覺,你沒有寫這個問題的方式。我建議你學習Unity如何工作。只需按照他們的[項目教程](https://unity3d.com/learn/tutorials)中的任何一個,您就可以開始編寫自己的代碼。 – Programmer
至於改變應該按下的鍵,使用'KeyCode.Space'。您可以看到從[this](https://stackoverflow.com/a/44539475/3785314)文章跳轉的示例。雖然,如果你不知道如何設置圖層並將地面放在正確的圖層中,它將不起作用。 – Programmer
@程序員我已將地面放在地面層。我在哪裏可以使用KeyCode.Space?有沒有地方可以設置使用哪個鍵? – TrumpetDude