Пытался сделать как здесь -
https://coderoad.ru/39349906/Unity-как-проверить-с... и не помогло
Вот код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public class CourierWorkDragnDrop : MonoBehaviour, IDragHandler
{
public AllVariables allVariables;
private Rigidbody2D rigidbody2D;
private Vector2 vector2;
public Works works;
public SpriteRenderer spriteRenderer;
private void OnCollisionEnter2D(Collision2D coll)
{
if (coll.gameObject.CompareTag("Shop"))
{
Color myColor = spriteRenderer.color;
Color otherColor = works.spriteRendererSHOP.color;
if (myColor == otherColor)
{
allVariables.money += 5;
works.howMuchEarn += 5;
works.textMoneyCourierEarn.text = "Заработано - " + works.howMuchEarn;
Destroy(gameObject);
}
}
}
}
Вот код получения SpriteRenderer
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Works : MonoBehaviour
{
public SpriteRenderer spriteRendererSHOP;
private void Awake()
{
spriteRendererSHOP = shop.GetComponent<SpriteRenderer>();
}
А вот сам скрипт, который изменяет цвет объекта
public IEnumerator CourierWorkShopColor()
{
while(true)
{
//Debug.Log("Started!");
System.Random r = new System.Random();
int ci = r.Next(0, coloredPrefabs.Length);
spriteRendererSHOP.color = new Color32(prefabColor[ci].r, prefabColor[ci].g, prefabColor[ci].b, 255);
yield return new WaitForSeconds(3.5f);
}
}
Прозрачность указал не
prefabColor[ci]
a 255 т.к объект просто пропадает (прозрачность на 0 встает почему-то, хотя сам объект был на 255)
Пытался сделать так же сравнение только по
prefabColor[ci].r
, но это тоже не помогло