using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GameManager : MonoBehaviour
{
    private int lives = 3;

    [SerializeField] private GameObject playerPrefab;

    [SerializeField] private Transform playerParentTransform;

    private PlayerController currentPlayer;

    [SerializeField] private float delayToSpawnPlayer = 1f;

    // Start is called before the first frame update
    void Start()
    {
        SpawnPlayer();

    }

    public void PlayerDefeated()
    {
        if(lives > 1)
        {
            Debug.Log("Game Manager Recorded a Defeated Player.");
            lives--;

        Invoke("SpawnPlayer", currentPlayer.GetDestroyDelayTime() + delayToSpawnPlayer);
        
        }
        else
        {
            Debug.Log("Game Over");
        }
        
    }

    private void SpawnPlayer()
    {
        GameObject player =Instantiate(playerPrefab, new Vector3(0,0,0), Quaternion.identity, playerParentTransform);
        currentPlayer = player.GetComponent<PlayerController>();
    }
}
