Files
Shopkeeper/Assets/Scripts/Items/Highlighter.cs
Caleb Sandford deQuincey 47944971ca initial game submission
2025-06-10 22:13:25 +01:00

34 lines
1.1 KiB
C#

using UnityEngine;
public class Highlighter : MonoBehaviour
{
public Renderer targetRenderer;
public Color highlightColor = Color.yellow;
public float outlineWidth = 0.1f; // Make this bigger for a thicker outline
private MaterialPropertyBlock propBlock;
private Color originalColor;
private float originalOutlineWidth;
void Awake()
{
if (targetRenderer == null)
targetRenderer = GetComponent<Renderer>();
propBlock = new MaterialPropertyBlock();
if (targetRenderer != null)
{
targetRenderer.GetPropertyBlock(propBlock);
originalColor = propBlock.GetColor("_OutlineColor");
originalOutlineWidth = propBlock.GetFloat("_OutlineWidth");
}
}
public void Highlight(bool on)
{
if (targetRenderer == null) return;
targetRenderer.GetPropertyBlock(propBlock);
propBlock.SetColor("_OutlineColor", on ? highlightColor : originalColor);
propBlock.SetFloat("_OutlineWidth", on ? outlineWidth : originalOutlineWidth);
targetRenderer.SetPropertyBlock(propBlock);
}
}