using System.Collections;
using UnityEngine;

public class Gravity : MonoBehaviour
{
    public CharacterController controller;

    float velocityY;         // Geschwindigkeit nach unten/oben
    public float gravity = -9.81f;   // Schwerkraft
    public float groundCheckDistance = 0.1f; // Abstand, um zu prüfen, ob Boden da ist

    void Update()
    {
        // Prüfen, ob der Spieler auf dem Boden ist
        if (controller.isGrounded)
        {
            // Wenn auf dem Boden, keine Fallgeschwindigkeit
            velocityY = -2f; // kleiner negativer Wert, damit der Controller am Boden bleibt
        }

        // Schwerkraft anwenden
        velocityY += gravity * Time.deltaTime;

        // Bewegung nur in Y-Richtung
        Vector3 move = new Vector3(0, velocityY, 0);

        // Spieler bewegen
        controller.Move(move * Time.deltaTime);


        if (Input.GetKeyDown(KeyCode.Space) && controller.isGrounded)
        {
            velocityY = 5f; // Sprungkraft
            StartCoroutine(AfterJump());
        }
    }

    private IEnumerator AfterJump()
    {
        yield return new WaitForSeconds(0.1f);
        velocityY = Mathf.Lerp(velocityY, -20f, Time.deltaTime * test); // Nach dem Sprung die Fallgeschwindigkeit erhöhen

       
    }
    public float test;
}