diff options
Diffstat (limited to 'SurvivalTest/Assets/ACS-17/Demo_Table_Animations/Scripts/CharacterViewer.cs')
| -rw-r--r-- | SurvivalTest/Assets/ACS-17/Demo_Table_Animations/Scripts/CharacterViewer.cs | 54 | 
1 files changed, 54 insertions, 0 deletions
| diff --git a/SurvivalTest/Assets/ACS-17/Demo_Table_Animations/Scripts/CharacterViewer.cs b/SurvivalTest/Assets/ACS-17/Demo_Table_Animations/Scripts/CharacterViewer.cs new file mode 100644 index 0000000..960734a --- /dev/null +++ b/SurvivalTest/Assets/ACS-17/Demo_Table_Animations/Scripts/CharacterViewer.cs @@ -0,0 +1,54 @@ +using UnityEngine; +using System.Collections; +using UnityEngine.UI; + +public class CharacterViewer : MonoBehaviour { +	//Script control of the camera in the table animation +	public Transform cameras; + +    public Transform targetForCamera; +	Vector3 deltaPosition; +	Vector3 lastPosition = Vector3.zero; +	bool rotating = false; + +	void Awake () { +        deltaPosition = cameras.position - targetForCamera.position; +		deltaPosition = new Vector3(deltaPosition.x, deltaPosition.y - (-0.1f) * 5, deltaPosition.z +(-0.1f) * 8); +		transform.Rotate(0, -300f * -170 / Screen.width, 0); +    } + +	void Update () { +		if (Input.GetMouseButtonDown (0) && Input.mousePosition.x > Screen.width*0.25 ) { +			lastPosition = Input.mousePosition; +			rotating = true; +		} + +		if (Input.GetMouseButtonUp(0)) +			rotating = false; + +        if (rotating && Input.GetMouseButton(0)) +        { +            transform.Rotate(0, -300f * (Input.mousePosition - lastPosition).x / Screen.width, 0); +  +         } + +        if (Input.GetAxis("Mouse ScrollWheel")!=0) +        { + +            var y = 0f; +            if (Input.GetAxis("Mouse ScrollWheel") < 0 && deltaPosition.y < 18) y = Input.GetAxis("Mouse ScrollWheel"); +            if (Input.GetAxis("Mouse ScrollWheel") > 0 && deltaPosition.y > 10f) y = Input.GetAxis("Mouse ScrollWheel"); +           deltaPosition = new Vector3(deltaPosition.x, deltaPosition.y - y * 5, deltaPosition.z + y * 8); +        } + + +        lastPosition = Input.mousePosition; +	} + +	void LateUpdate () { +	 	cameras.position += (targetForCamera.position + deltaPosition - cameras.position) * Time.unscaledDeltaTime * 5; +		Vector3 relativePos = targetForCamera.position - cameras.position; +        Quaternion rotation = Quaternion.LookRotation(relativePos); +        cameras.rotation = rotation; +    } +} | 
