Advertisement
DirePixel

ToolRendererHelper.cs

Apr 27th, 2023
560
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.92 KB | None | 0 0
  1. using UnityEngine;
  2.  
  3. [RequireComponent(typeof(SpriteRenderer))]
  4. public class ToolRendererHelper : MonoBehaviour
  5. {
  6.     [SerializeField]
  7.     private bool _useSortOrder = false;
  8.  
  9.     private int _defaultSortOrder;
  10.     private Vector3 _defaultLocalPosition;
  11.     private SpriteRenderer _renderer = null;
  12.  
  13.     private void Awake()
  14.     {
  15.         _renderer = GetComponent<SpriteRenderer>();
  16.     }
  17.  
  18.     private void Start()
  19.     {
  20.         _defaultSortOrder = _renderer.sortingOrder;
  21.         _defaultLocalPosition = transform.localPosition;
  22.     }
  23.  
  24.     public void OnRenderToolFront()
  25.     {
  26.         if(_useSortOrder)
  27.         {
  28.             _renderer.sortingOrder = -1;
  29.         }
  30.         else
  31.         {
  32.             Vector3 pos = transform.localPosition;
  33.             transform.localPosition = new Vector3(pos.x, pos.y - 0.0007f,pos.z);
  34.         }
  35.     }
  36.  
  37.     public void OnRenderToolBehind()
  38.     {
  39.         if(_useSortOrder)
  40.         {
  41.             _renderer.sortingOrder = _defaultSortOrder;
  42.         }
  43.         else
  44.         {
  45.             transform.position = _defaultLocalPosition;
  46.         }
  47.     }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement