- Home /
Make OnMouseButtonDown do whole task and not just when pressed
Im trying to make my camera move fra a to b, when i press the mousebutton. But it only moves a little everytime i press the mousebutton, so i have to click a lot of times before it gets to position b. But i want it so it goes all the way on one click.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class tapToContinue : MonoBehaviour {
public GameObject target;
public float speed;
public GameObject [] pages;
// Use this for initialization
void Start () {
target = pages[1];
}
// Update is called once per frame
void Update () {
if (Input.GetMouseButtonDown (0)) {
CameraMove ();
}
if (gameObject.transform.position == pages [1].transform.position) {
target = pages [2];
}
if (gameObject.transform.position == pages [2].transform.position) {
target = pages [3];
}
if (gameObject.transform.position == pages [3].transform.position) {
target = pages [4];
}
}
void CameraMove () {
float step = speed * Time.deltaTime;
transform.position = Vector3.MoveTowards (transform.position, target.transform.position, step);
}
}
Answer by JeevanjotSingh · Feb 04, 2017 at 05:03 PM
Yes that's right it only moves some pixels that it can get as an event in update() for one frame.
You can either use use GetMouseButton(0) only instead of GetMouseButtonDown(0) so it can run move funtion every time if you keep you mouse left click hold down .
if you want to perform this with one click like you said then pass a Boolean there that OnMouseButton down make something true and move camera when that Boolean is true if the camera moved to that particular position makes that Boolean false again .
Your answer
Follow this Question
Related Questions
Issues with camera representation on a minimap 0 Answers
move camera when it collides with a trigger 1 Answer
How to make camera move like it does in the scene viewport? 0 Answers
Gradually decrease camera pan speed when touch has ended? (Touch input) 0 Answers
How do I create a rubber band effect on a camera forward movement? 1 Answer