Как сказал Драко, Mathf.Clamp полезен для такого рода вещей.
public GameObject elasticobject;
public float sizingFactor = 0.1f;
private GameObject lastSpawn = null;
private float startSize;
private float startX;
private float limitX;
private float limitY;
void Update()
{
if (Input.GetMouseButton(0))
{
Vector3 size = elasticobject.transform.localScale;
size.x = Mathf.Clamp(
startSize + (Input.mousePosition.x - startX) * sizingFactor,
0, limitX);
elasticobject.transform.localScale = size;
}
if (Input.GetMouseButton(1))
{
Vector3 size = elasticobject.transform.localScale;
size.y = Mathf.Clamp(
startSize + (Input.mousePosition.y - startX) * sizingFactor,
0, limitY);
elasticobject.transform.localScale = size;
}
}
Я добавил некоторые ограничения для X и Y для вас. Я не совсем понимаю, что вы делаете, и использование StartX немного загадочно, особенно, как показано в разделе по оси Y.
При таком изменении масштаба его более полезно увеличить на процент, а не на фиксированную величину. В противном случае очень большие плоскости покажут очень мало изменений относительно их размера.
private float multFactor = 0.01f;
void Update()
{
if (Input.GetMouseButton(0))
{
Vector3 size = elasticobject.transform.localScale;
size.x = Mathf.Clamp(
size.x *= 1 + multFactor,
0, limitX);
elasticobject.transform.localScale = size;
}
if (Input.GetMouseButton(1))
{
Vector3 size = elasticobject.transform.localScale;
size.x = Mathf.Clamp(
size.y *= 1 + multFactor,
0, limitY);
elasticobject.transform.localScale = size;
}
}
Еще одна вещь, о которой следует помнить, это то, что вы по сути определили один и тот же метод с небольшими вариациями в двух разных областях (одна для X, другая для Y). Это, вероятно, хорошо для двух, но если вы определяете метод три или более раз, лучше всего использовать один метод, который принимает дополнительные аргументы. Таким образом, если вы хотите что-то изменить, вам нужно будет изменить это только в одном месте.
На самом деле я не запускал их, чтобы посмотреть, работают ли они, поэтому им могут потребоваться небольшие модификации.