Кстати, вы должны использовать GetComponent
только при необходимости.Это дорогая операция.Лучше всего кэшировать результаты, когда это возможно:
public SpriteRenderer mySpriteRenderer;
...
// e.g., in Awake()
mySpriteRenderer = GetComponent<SpriteRenderer>();
Чтобы ответить на ваш вопрос, вы можете получить текущее значение bounds.size.x
в текущем масштабе и сравнить его с расстоянием, которое вы хотите сопоставить.Затем вы можете изменить локальный масштаб, чтобы настроить масштаб в зависимости от соотношения между текущим размером и размером цели:
private void OnMouseDown()
{
float goalDistance = Vector2.Distance(monster.transform.position, transform.position);
float currentSize = mySpriteRenderer.bounds.size.x;
float goalScaleRatio = goalDistance/currentSize;
transform.localScale *= goalScaleRatio;
}