我正在做我的第一个手机游戏,但我不知道如何能使一个按钮,当按下它时,玩家跳跃。这是我的代码。
using UnityEngine;
using System.Collections;
using UnityStandardAssets.CrossPlatformInput;
public class Move2D : MonoBehaviour
{
public float speed = 5f;
public float jumpSpeed = 8f;
private float movement = 0f;
private Rigidbody2D rigidBody;
// Use this for initialization
void Start()
{
rigidBody = GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void Update()
{
movement = CrossPlatformInputManager.GetAxis("Horizontal");
rigidBody.velocity = new Vector2(movement * speed, rigidBody.velocity.y);
if (CrossPlatformInputManager.GetButtonDown("Jump") && rigidBody.velocity.y == 0)
{
rigidBody.AddForce(transform.up * jumpSpeed, ForceMode2D.Impulse);
}
}
}
很简单,这应该是最简单的方法。
1)在Canvas UI中创建一个按钮
2) 在你的 "Move2D "类中创建一个公共的 "Jump() "函数。
3) 在Canvas UI中的按钮事件上指定这个公共 "Jump() "函数。
public class Move2D : MonoBehaviour
{
public void Jump()
{
rigidBody.AddForce(transform.up * jumpSpeed, ForceMode2D.Impulse);
}
}