Прямо сейчас я не получаю много из этого. В зависимости от того, что я делаю, я либо заканчиваю бесконечным циклом, либо плохая способность прыгать. Я использовал таймер, чтобы пометить мой прыгающий bool, но у меня была двойная способность прыгать, и мое обнаружение земли было недостаточно хорошим. Вы видите, почему я не могу прыгать или прыгать хорошо?Почему я не могу прыгать или прыгать хорошо?
using UnityEngine;
using System.Collections;
public class player : MonoBehaviour
{
public float speed = 0.05f;
public float jumpVelocity = 0.05f;
public bool onGround = true;
public bool jumped = false;
// Use this for initialization
void Start() { }
// Update is called once per frame
void Update()
{
//test if player is on the ground
if (onGround) { jumped = false; }
// USER CONTROLS HERE.
if (Input.GetKeyDown(KeyCode.Space) && onGround == true)
{
jumped = true;
while(jumped)
{
this.rigidbody2D.AddForce(new Vector2(0, jumpVelocity));
if (onGround) { jumped = false; }
}
}
else if (Input.GetKey(KeyCode.RightArrow))
{
this.transform.position += Vector3.right * speed * Time.deltaTime;
}
else if (Input.GetKey(KeyCode.LeftArrow))
{
this.transform.position += Vector3.left * speed * Time.deltaTime;
}
}
void OnCollisionEnter2D(Collision2D col)
{
if(col.gameObject.tag == "floor") { onGround = true; }
}
void OnCollisionStay2D(Collision2D col)
{
if(col.gameObject.tag == "floor") { onGround = true; }
}
}
Извините, я вас только понял. Я не слишком быстро с этим материалом ... Я использовал таймер, чтобы отключить прыгающий в цикле while. Это позволяло мне летать в воздухе, но иногда я мог совершать двойной прыжок ... и мог только прыгать в определенное время ... была одна плитка, от которой я не мог прыгать ... ммм ... вы не знаете никаких хороших ресурсов на этом? – user2296112
О, стрелять. Я получаю ... Я прохожу через петлю, видя, что игрок находится на земле, никакая сила не добавлена ... хм ... – user2296112
Я понял это. Кирпич, который вызывал у меня проблемы, был помечен «8» вместо «пола». Я присваивал свой первый тег и видел числа, выглядел как индексы массивов .. не знал, что я делаю ... думаю, я пропустил эту плитку после выяснения ее. – user2296112