TRORB/Assets/Scripts/Obstacles/TilemapActivation.cs
2023-02-28 20:24:06 +01:00

40 lines
975 B
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Tilemaps;
public class TilemapActivation : MonoBehaviour {
Tilemap _tilemap;
Collider2D _tilemapColliders;
[SerializeField] float disabledTransparency;
[SerializeField] float transitionDuration;
void Awake() {
_tilemap = GetComponent<Tilemap>();
_tilemapColliders = GetComponent<Collider2D>();
_tilemapColliders.enabled = false;
}
public void ChangeTilemapState(bool enabled) {
_tilemapColliders.enabled = _enabled = enabled;
}
bool _enabled;
float _start;
void Update() {
float alpha = _enabled
? Mathf.Lerp(disabledTransparency, 1, (Time.time - _start) / transitionDuration)
: Mathf.Lerp(1, disabledTransparency, (Time.time - _start) / transitionDuration);
alpha = Mathf.Round(alpha * 5);
alpha /= 5f;
Color color = _tilemap.color;
color = new Color(color.r, color.g, color.b, alpha);
_tilemap.color = color;
}
}