70 lines
2.0 KiB
C#
Raw Normal View History

2025-05-18 01:04:31 +08:00
// ***********************************************************************
// Assembly : Game
// Author : Kimch
// Created : 2020-09-02
// Description :
// Last Modified By :
// Last Modified On :
// ***********************************************************************
// <copyright file= "Cam_Move_ride" company="Kimch"></copyright>
// <summary></summary>
// ***********************************************************************
using UnityEngine;
namespace G
{
public class Cam_Move_ride : MonoBehaviour
{
public Transform cha1;
public Vector3 camPos = new Vector3(0f, 1.75f, -1.35f);
public float sinSpeed = 0.25f;
public float sinOffset = 0.5f;
private int _dx = 1;
public Vector3 _hitShake1 = new Vector3(0.1f, 0f, 0.06f);
public Vector3 _hitShake2 = new Vector3(0.1f, 0f, 0.06f);
private Camera _myCamera;
private void Awake()
{
_myCamera = this.GetComponent<Camera>();
}
public void Hitcam()
{
_dx = -_dx;
this.transform.position += _hitShake1 * _dx;
if (_myCamera.fieldOfView > 23f)
{
_myCamera.fieldOfView -= 1f;
}
}
public void Hitcam2()
{
_dx = -_dx;
this.transform.position += _hitShake2 * _dx;
if (_myCamera.fieldOfView > 23f)
{
_myCamera.fieldOfView -= 1f;
}
}
private void LateUpdate()
{
transform.LookAt(cha1);
transform.position = camPos + Vector3.right * Mathf.Sin(Time.time * sinSpeed) * sinOffset;
if (_myCamera.fieldOfView < 38f)
{
_myCamera.fieldOfView = Mathf.Lerp(_myCamera.fieldOfView, 38f, Time.deltaTime * 3f);
}
else
{
_myCamera.fieldOfView = 38f;
}
}
}
}