U3D_TobaccoWarehouseISMDTSy.../Assets/Scripts/YL/Shippingoffthebox.cs

78 lines
3.3 KiB
C#

using Cysharp.Threading.Tasks;
using DG.Tweening;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Shippingoffthebox : MonoBehaviour
{
/// <summary>
/// λÒÆËÙ¶È
/// </summary>
private float speed = 5f;
async void Start()
{
await Displacement();
}
private async UniTask Displacement()
{
Transform point1 = GameObject.Find("13-40-2").transform;
await transform.DOMove(point1.transform.position, (Vector3.Distance(transform.position, point1.transform.position) / speed)).SetEase(Ease.Linear).AsyncWaitForCompletion();
Transform point2 = GameObject.Find("13-36-2").transform;
await transform.DOMove(point2.transform.position, (Vector3.Distance(transform.position, point2.transform.position) / speed)).SetEase(Ease.Linear).AsyncWaitForCompletion();
Transform point3 = GameObject.Find("14-36-2").transform;
await transform.DOMove(point3.transform.position, (Vector3.Distance(transform.position, point3.transform.position) / speed)).SetEase(Ease.Linear).AsyncWaitForCompletion();
Transform point4 = GameObject.Find("4-36-2").transform;
await transform.DOMove(point4.transform.position, (Vector3.Distance(transform.position, point4.transform.position) / speed)).SetEase(Ease.Linear).AsyncWaitForCompletion();
Transform point5 = GameObject.Find("4-31-2").transform;
await transform.DOMove(point5.transform.position, (Vector3.Distance(transform.position, point5.transform.position) / speed)).SetEase(Ease.Linear).AsyncWaitForCompletion();
Transform point6 = GameObject.Find("3-31-2").transform;
await transform.DOMove(point6.transform.position, (Vector3.Distance(transform.position, point6.transform.position) / speed)).SetEase(Ease.Linear).AsyncWaitForCompletion();
}
void Update()
{
}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("Box"))
{
Carinformation car = transform.GetComponent<Carinformation>();
Boxinformation boxinformation = other.gameObject.transform.GetComponent<Boxinformation>();
if (car && boxinformation)
{
boxinformation.ID = car.BoxCode;
Debug.Log(boxinformation.ID);
}
Debug.Log("´¥·¢ÁË");
other.transform.SetParent(transform);
if (other.gameObject != null)
{
// »ñÈ¡´¥·¢Æ÷ÎïÌåµÄÅöײÌå
Collider triggerCollider = GetComponent<Collider>();
// È·±£´¥·¢Æ÷ÎïÌåÓÐÅöײÌå
if (triggerCollider != null)
{
// ¼ÆËã´¥·¢Æ÷ÎïÌ嶥²¿µÄÊÀ½ç×ø±ê
Vector3 triggerPosition = triggerCollider.bounds.center;
Vector3 triggerTop = triggerPosition + Vector3.up * (triggerCollider.bounds.extents.y + -0.2f);
// ÉèÖÃÎïÌåµÄλÖÃ
other.transform.position = triggerTop;
}
else
{
Debug.LogError("Trigger object does not have a Collider component.");
}
}
else
{
Debug.LogError("Colliding object is not assigned.");
}
}
}
}