U3D_TobaccoWarehouseISMDTSy.../Assets/Scripts/YL/Deliveryfromstorage.cs

99 lines
5.1 KiB
C#
Raw Blame History

using Cysharp.Threading.Tasks;
using DG.Tweening;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Deliveryfromstorage : MonoBehaviour
{
public Transform tarton;
public GameObject car;
public GameObject car1;
public Transform targetPosition;
public float speed = 5;
private bool isMoving = false;
async void Start()
{
car = GameObject.Find("4-1-2");
car1 = GameObject.Find("14-37-2");
tarton = car1.GetComponent<Transform>();
//MoveTo(tarton);
//Sequence mySequence = DOTween.Sequence();
//mySequence.Append(transform.DOMove(car.transform.position, 5).SetEase(Ease.InOutQuad)).Append(transform.DOMove(car1.transform.position, 5)).SetEase(Ease.InOutQuad).Append(transform.DOMove(car.transform.position, 5).OnComplete(() =>
//{
//}));
await Planneddisplacement();
}
private async UniTask Planneddisplacement()
{
Transform point = GameObject.Find("8-40-2").transform;
await transform.DOMove(point.transform.position, (Vector3.Distance(transform.position, point.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point2 = GameObject.Find("8-32-2").transform;
await transform.DOMove(point2.transform.position, (Vector3.Distance(transform.position, point2.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point3 = GameObject.Find("13-32-2").transform;
await transform.DOMove(point3.transform.position, (Vector3.Distance(transform.position, point3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point4 = GameObject.Find("13-7-2").transform;
await transform.DOMove(point4.transform.position, (Vector3.Distance(transform.position, point4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point5 = GameObject.Find("14-7-2").transform;
await transform.DOMove(point5.transform.position, (Vector3.Distance(transform.position, point5.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await transform.DOMove(point4.transform.position, (Vector3.Distance(transform.position, point4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point6 = GameObject.Find("13-1-2").transform;
await transform.DOMove(point6.transform.position, (Vector3.Distance(transform.position, point6.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point7 = GameObject.Find("14-1-2").transform;
await transform.DOMove(point7.transform.position, (Vector3.Distance(transform.position, point7.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await UniTask.Delay(4000);
await transform.DOMove(point6.transform.position, (Vector3.Distance(transform.position, point6.transform.position) / speed)).SetEase(Ease.InQuad).AsyncWaitForCompletion();
await transform.DOMove(point4.transform.position, (Vector3.Distance(transform.position, point6.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point8 = GameObject.Find("15-7-2").transform;
await transform.DOMove(point8.transform.position, (Vector3.Distance(transform.position, point8.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await transform.DOMove(point4.transform.position, (Vector3.Distance(transform.position, point4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await transform.DOMove(point6.transform.position, (Vector3.Distance(transform.position, point6.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await transform.DOMove(point7.transform.position, (Vector3.Distance(transform.position, point7.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("Box"))
{
Debug.Log("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
other.transform.SetParent(transform);
if (other.gameObject != null)
{
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2>
Collider triggerCollider = GetComponent<Collider>();
// ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2>
if (triggerCollider != null)
{
// <20><><EFBFBD><EFBFBD><E3B4A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E5B6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Vector3 triggerPosition = triggerCollider.bounds.center;
Vector3 triggerTop = triggerPosition + Vector3.up * (triggerCollider.bounds.extents.y + -0.2f);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
other.transform.position = triggerTop;
}
else
{
Debug.LogError("Trigger object does not have a Collider component.");
}
}
else
{
Debug.LogError("Colliding object is not assigned.");
}
}
}
}