- Home /
Clamping local position
Hey, I am making a mechanic that basically moves the arms around (2d), I use the arrow keys to move an object, and then both arms are child of a main object, which has the lookAt function to look at the object I move, but that would be problematic, for example if the player got the object too far from the arms, that it would have to go a long way until the arms would actually change the direction they're looking at, so I tried to clamp the position value, but it's happenning in world space and not in local space, how can I fix that? here's my scripts btw:
using UnityEngine;
using System.Collections;
public class Pointer : MonoBehaviour {
public float velocity;
void Update () {
transform.position += new Vector3 (Input.GetAxis("Horizontal") * velocity, Input.GetAxis("Vertical") * velocity,0f);
transform.position = new Vector3 (Mathf.Clamp(transform.position.x, -1.25f,1.25f), Mathf.Clamp(transform.position.y,1f,3f),transform.position.z);
}
}
using UnityEngine;
using System.Collections;
public class Arms : MonoBehaviour {
public Transform target;
void Update() {
transform.LookAt(target);
}
}
EDIT: ok maybe this isn't actually the better way to do it, so maybe if you know another possible way of making this pointing arms with arrows mechanic tell me please.
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Distribute terrain in zones 3 Answers
Fixing object position within range 0 Answers
Clamping the camera X axis when not using the mouse axis? C# 0 Answers