using System;
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;

public class transparentMovement : MonoBehaviour
{
    [SerializeField]
        private InputManager InputManager;
    [SerializeField]
        private GameObject previewObject;
    [SerializeField]
        private DatabaseSO database;
            private int selectedObjectIndex=-1;
    [SerializeField]
        private Material previewMaterialPrefab;
            private Material previewMaterialInstance;

    private void Start()
    {
        previewMaterialInstance = new Material(previewMaterialPrefab);
    }
     public void StartShowingPlacementPreview(GameObject prefab)
    {
        previewObject = Instantiate(prefab);
        PreparePreview(previewObject);
    }
    private void PreparePreview(GameObject previewObject)
    {
        Renderer[] renderers = previewObject.GetComponentsInChildren<Renderer>();
        foreach(Renderer renderer in renderers)
        {
            Material[] materials = renderer.materials;
            for (int i = 0; i < materials.Length; i++)
            {
                materials[i] = previewMaterialInstance;
            }
            renderer.materials = materials;
        }
    }
     public void StopShowingPreview()
    {
        Destroy(previewObject );
    }
     public void UpdatePosition(Vector3 position)
    {
        MovePreview(position);
    }
    private void MovePreview(Vector3 position)
    {
        previewObject.transform.position = new Vector3(
            position.x, 
            position.y,     
            position.z);
    }   
   
}