| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class BalloonCtrl : MonoBehaviour
- {
- Vector3 eulerAngles;
- private bool isFly = false;
- Rigidbody rigidbody;
- // Start is called before the first frame update
- void Start()
- {
- eulerAngles = transform.eulerAngles;
- rigidbody = GetComponent<Rigidbody>();
- }
- //private void OnCollisionEnter(Collision collision)
- //{
- // StopFly();
- //}
- //private void OnCollisionStay(Collision collision)
- //{
- // StopFly();
- //}
- //private void OnCollisionExit(Collision collision)
- //{
- // StartFly();
- //}
- public void StartFly()
- {
- isFly = true;
- }
-
- public void StopFly()
- {
- isFly = false;
- }
- void Update()
- {
- if (isFly)
- {
- if (eulerAngles != transform.eulerAngles)
- {
-
- // transform.rotation.eulerAngles = eulerAngles;
- transform.eulerAngles = eulerAngles;
- }
- rigidbody.velocity = Vector3.zero;
- transform.position = new Vector3(transform.position.x, transform.position.y + 0.1f * GameInstantiateData.Instance.int_balloonFlySpeed * Time.deltaTime, transform.position.z);
- //transform.Translate(Vector3.up * Time.deltaTime);
- // print(transform.localPosition.y);
- Camera testCamera = Camera.main;
- Vector3 viewPos = testCamera.WorldToViewportPoint(transform.position);
- if (viewPos.x > 0 && viewPos.x < 1)
- {
- if (viewPos.y > 0 && viewPos.y < 1)
- {
- if (viewPos.z >= testCamera.nearClipPlane && viewPos.z <= testCamera.farClipPlane)
- {
- return;
- }
- }
- }
- //Debug.LogError("·É³öÆÁÄ»Íâ");
- if (transform.position.y < GameMgr.instance.transform.position.y)
- {
- GameMgr.instance.HitTarget(gameObject.GetInstanceID());
- }
- else
- {
- GameMgr.instance.GameOver();
- }
-
- return;
- }
- }
- }
|