Menu
CoddyTech

Powtórka: platforma startowa

Część sekcji Fizyka i rozgrywka ścieżki Unity w Coddy. Lekcja 7 z 63.

challenge icon

Wyzwanie

Łatwy

Gracz (Rigidbody o masie 2 kg) porusza się po ziemi do pomarańczowej platformy startowej, której Transform znajduje się w polu pad. Napisz Jumper:

  • Strzałki w lewo i w prawo poruszają graczem wzdłuż osi x z prędkością dokładnie speed m/s (4), przy użyciu surowej osi; gracz stoi w miejscu, gdy nie jest wciśnięta żadna strzałka, a grawitacja nadal działa.
  • Wciśnięcie spacji na platformie wystrzeliwuje gracza pionowo w górę impulsem o wartości launch (16), więc jego masa ma znaczenie. Gracz znajduje się na platformie, gdy jego współrzędna x różni się od współrzędnej x platformy o mniej niż 1. Wciśnięcie spacji gdzie indziej nie robi nic.
  • Żadne wciśnięcie spacji nie może zostać utracone: odczytuj je w Update(), a całą fizykę obsługuj w FixedUpdate().

Naciśnij Play, wejdź na platformę i wystrzel gracza, a następnie naciśnij Check.

Spróbuj swoich sił

using UnityEngine;

public class Jumper : MonoBehaviour
{
    public float speed = 4f;
    public float launch = 16f;
    public Transform pad;
    private Rigidbody rb;

    void Start()
    {
        rb = GetComponent<Rigidbody>();
    }
}

Wszystkie lekcje w sekcji Fizyka i rozgrywka