Input.GetKeyUp wont work!
I am trying to write a camera script that would slightly move the camera when up arrow is pressed and return to normal position when released but the Input.GetKeyUp() won't work Please help, Thanks! using UnityEngine; using System.Collections;
public class CameraControlls : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if(Input.GetKeyDown(KeyCode.UpArrow))
{
transform.Translate(0, -2 * Time.deltaTime , 0);
}
if (Input.GetKeyUp(KeyCode.UpArrow))
{
transform.Translate(0, 2 * Time.deltaTime, 0);
}
}
}
Answer by $$anonymous$$ · Apr 13, 2016 at 01:27 PM
While you keep the up arrow down, each update the camera will move a bit. Depending on how long you hold the button it will keep moving. The second half of your code only occurs once: when you release the key. You will move back only once (2* Time.deltaTime). It is better to store your start transform.position in the Start routine and restore it in line 17.
Would you please post an example code? I dont really get it, sorry for bothering you and Thanks
i want the original position of the camera to be restored when the button is not pressed
private Vector3 startPosition;
private void Start()
{
startPosition = transform.position;
}
// Update is called once per frame
private void Update()
{
if (Input.Get$$anonymous$$eyDown($$anonymous$$eyCode.UpArrow))
{
transform.Translate(0, -2*Time.deltaTime, 0);
}
if (Input.Get$$anonymous$$eyUp($$anonymous$$eyCode.UpArrow))
{
transform.position = startPosition;
}
}
Does not work properly but thanks for your help, I will keep testing and editing it It works though, but not the desired thing, Thanks!
Your answer
Follow this Question
Related Questions
Screen Space - Camera : Not displaying button size correctly during play 0 Answers
Trying to change text of button using script 1 Answer
UI buttons won't recognize script 0 Answers
How to change a button image with script? 1 Answer
button.interactable = false; not working ,Button.interectable = false; doesnt work 0 Answers