This commit is contained in:
yulong 2024-08-23 18:01:55 +08:00
parent 9df0b196f6
commit 9e6c6a47bf
12 changed files with 1382 additions and 37 deletions

View File

@ -146,7 +146,7 @@ GameObject:
- component: {fileID: 1020735669404332079}
- component: {fileID: 4136931658566620925}
m_Layer: 0
m_Name: "\u70DF\u7BB1_\u65E0\u52A8\u753B (1)"
m_Name: "\u70DF\u7BB1_\u65E0\u52A8\u753B"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0

File diff suppressed because it is too large Load Diff

View File

@ -134,9 +134,9 @@ public class MqttManager : MonoSingleton<MqttManager>
break;
case "ca":
Carequipment carequipment = JsonConvert.DeserializeObject<Carequipment>(str.message);
string carname = str.device;
GameObject cargame = GameObject.Find(carname);
await Carpoint(cargame,carequipment);
//string carname = str.device;
//GameObject cargame = GameObject.Find(carname);
// await Carpoint(cargame,carequipment);
break;
case "fe":
Feequipment feequipment = JsonConvert.DeserializeObject<Feequipment>(str.message);

View File

@ -0,0 +1,98 @@
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("触发了");
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.");
}
}
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d9e3c1845c34a3b4d9a31c41a01f197a
guid: eb71b906cc1198c469da734fdc575803
MonoImporter:
externalObjects: {}
serializedVersion: 2

View File

@ -0,0 +1,71 @@
using Cysharp.Threading.Tasks;
using DG.Tweening;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Displaygoods : MonoBehaviour
{
/// <summary>
/// 判断物体身上是否有箱子
/// </summary>
public GameObject box7;
/// <summary>
/// 箱子第一个位置
/// </summary>
public Transform Box1;
public Transform Box2;
public Transform Box3;
public float speed = 5f;
void Start()
{
}
// Update is called once per frame
void Update()
{
}
private async void OnTriggerEnter(Collider other)
{
//if (other.gameObject.CompareTag("Car"))
//{
// Debug.Log("触发了小车");
// if (box7.transform.childCount > 0)
// {
// Debug.Log("上向");
// GameObject box = box7.transform.GetChild(0).gameObject;
// box.transform.SetParent(null);
// await Boxmove(box);
// }
//}
}
public async void OnTriggerStay(Collider other)
{
if (other.gameObject.CompareTag("Car"))
{
Debug.Log("触发了小车");
if (box7.transform.childCount > 0)
{
Debug.Log("上向");
GameObject box = box7.transform.GetChild(0).gameObject;
box.transform.SetParent(null);
await Boxmove(other.gameObject,box);
}
}
}
public async UniTask Boxmove(GameObject car,GameObject box)
{
await box.transform.DOMove(Box1.transform.position, (Vector3.Distance(box.transform.position, Box1.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await box.transform.DOMove(Box2.transform.position, (Vector3.Distance(box.transform.position, Box2.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await box.transform.DOMove(Box3.transform.position, (Vector3.Distance(box.transform.position, Box3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
box.transform.SetParent(car.transform);
Transform point = GameObject.Find("11-32-2").transform;
await car.transform.DOMove(point.transform.position,(Vector3.Distance(car.transform.position,point.transform.position)/speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point2 = GameObject.Find("11-33-2").transform;
await car.transform.DOMove(point2.transform.position, (Vector3.Distance(car.transform.position, point2.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9eb397ab05f3a1d4f829c82a18918767
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,141 @@
using Cysharp.Threading.Tasks;
using DG.Tweening;
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
public class Enteringreservoirarea : MonoBehaviour
{
/// <summary>
/// 物体位移到指定位置
/// </summary>
public Transform transportbox;
/// <summary>
/// 位移箱子速度
/// </summary>
public float speed = 5f;
/// <summary>
/// 提升机
/// </summary>
public GameObject Uptrans;
/// <summary>
/// 第一个码垛机
/// </summary>
public GameObject Palletizingarm1;
/// <summary>
/// 第二个码垛机
/// </summary>
public GameObject Palletizingarm2;
/// <summary>
/// 需要位移的点位
/// </summary>
public Transform point;
/// <summary>
/// 记住提升机初始位置
/// </summary>
public Transform pos;
/// <summary>
/// 箱子的位置
/// </summary>
public Transform boxpos;
/// <summary>
/// 箱子第二步位移
/// </summary>
public Transform box2;
/// <summary>
/// 码垛机位置一
/// </summary>
public Transform tongs1;
/// <summary>
/// 码垛机位移二
/// </summary>
public Transform tongs2;
/// <summary>
/// 箱子位移第四步
/// </summary>
public Transform box3;
/// <summary>
/// 箱子位移第五步
/// </summary>
public Transform box4;
/// <summary>
/// 箱子位移第五步
/// </summary>
public Transform box5;
/// <summary>
/// 箱子位移第六步
/// </summary>
public Transform box6;
/// <summary>
/// 第二个码垛机抓手点位
/// </summary>
public Transform tongs3;
/// <summary>
/// 第二个码垛机抓手点位
/// </summary>
public Transform tongs4;
/// <summary>
/// 箱子位移第7个点位
/// </summary>
public Transform box7;
void Start()
{
}
void Update()
{
}
private async void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("Box"))
{
await Makeprogress(other.gameObject, Uptrans);
}
}
private async UniTask Makeprogress(GameObject box, GameObject hoister)
{
await hoister.transform.DOMove(point.transform.position, (Vector3.Distance(hoister.transform.position, transportbox.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
box.gameObject.transform.position = new Vector3(box.transform.position.x, box.transform.position.y + 0.8f, box.transform.position.z);
box.gameObject.transform.SetParent(null);
await Moveup(box.gameObject, hoister);
}
private async UniTask Moveup(GameObject point, GameObject upmachine)
{
await point.transform.DOMove(transportbox.transform.position, (Vector3.Distance(point.transform.position, transportbox.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(upmachine.transform);
await upmachine.transform.DOMove(pos.transform.position, (Vector3.Distance(upmachine.transform.position, pos.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(null);
await point.transform.DOMove(boxpos.transform.position, (Vector3.Distance(point.transform.position, boxpos.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await point.transform.DOMove(box2.transform.position, (Vector3.Distance(point.transform.position, box2.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
GameObject boxchild = point.transform.GetChild(0).gameObject;
boxchild.transform.SetParent(null);
Debug.Log(boxchild.name);
await point.transform.DOMove(box3.transform.position, (Vector3.Distance(point.transform.position, box3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
boxchild.transform.SetParent(Palletizingarm1.transform);
await Palletizingarm1.gameObject.transform.DOMove(tongs2.transform.position, (Vector3.Distance(Palletizingarm1.transform.position, tongs2.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
boxchild.transform.SetParent(null);
await point.transform.DOMove(box4.transform.position, (Vector3.Distance(point.transform.position, box4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await Palletizingarm1.gameObject.transform.DOMove(tongs1.transform.position, (Vector3.Distance(Palletizingarm1.transform.position, tongs1.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await boxchild.transform.DOMove(box3.transform.position, (Vector3.Distance(boxchild.transform.position, box3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await point.transform.DOMove(box5.transform.position, (Vector3.Distance(point.transform.position, box5.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await boxchild.transform.DOMove(box4.transform.position, (Vector3.Distance(boxchild.transform.position, box4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await point.transform.DOMove(box6.transform.position, (Vector3.Distance(point.transform.position, box6.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await boxchild.transform.DOMove(box5.transform.position, (Vector3.Distance(boxchild.transform.position, box5.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await Palletizingarm2.transform.DOMove(tongs3.transform.position, (Vector3.Distance(Palletizingarm2.transform.position, tongs3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(Palletizingarm2.transform);
await Palletizingarm2.transform.DOMove(tongs4.transform.position, (Vector3.Distance(Palletizingarm2.transform.position, tongs4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await boxchild.transform.DOMove(box6.transform.position, (Vector3.Distance(boxchild.transform.position, box6.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(null);
boxchild.transform.SetParent(point.transform);
await point.transform.DOMove(box7.transform.position, (Vector3.Distance(point.transform.position, box7.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await Palletizingarm2.transform.DOMove(tongs3.transform.position, (Vector3.Distance(Palletizingarm2.transform.position, tongs3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(box7);
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8afa1f79fd4941d4d89b463b902f20d6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -51,8 +51,12 @@ public class Movetest : MonoBehaviour
await transform.DOMove(point6.transform.position, (Vector3.Distance(transform.position, point6.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point7 = GameObject.Find("14-39-2").transform;
await transform.DOMove(point7.transform.position,(Vector3.Distance(transform.position,point7.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(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(point4.transform.position, (Vector3.Distance(transform.position, point4.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
await transform.DOMove(point3.transform.position, (Vector3.Distance(transform.position, point3.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
Transform point8 = GameObject.Find("14-32-2").transform;
await transform.DOMove(point8.transform.position, (Vector3.Distance(transform.position, point8.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
}
private void OnTriggerEnter(Collider other)

View File

@ -14,9 +14,26 @@ public class Transportbox : MonoBehaviour
/// λÒÆÏä×ÓËÙ¶È
/// </summary>
public float speed = 5f;
/// <summary>
/// 提升机
/// </summary>
public GameObject Uptrans;
/// <summary>
/// 需要位移的点位
/// </summary>
public Transform point;
/// <summary>
/// 记住提升机初始位置
/// </summary>
public Transform pos;
/// <summary>
/// 箱子的位置
/// </summary>
public Transform boxpos;
void Start()
{
}
@ -28,14 +45,23 @@ public class Transportbox : MonoBehaviour
{
if (other.gameObject.CompareTag("Box"))
{
other.gameObject.transform.position = new Vector3(other.transform.position.x, other.transform.position.y + 0.8f, other.transform.position.z);
other.gameObject.transform.SetParent(null);
await Moveup(other.gameObject);
await Makeprogress(other.gameObject, Uptrans);
}
}
private async UniTask Moveup(GameObject point)
private async UniTask Makeprogress(GameObject box, GameObject hoister)
{
await hoister.transform.DOMove(point.transform.position, (Vector3.Distance(hoister.transform.position, transportbox.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
box.gameObject.transform.position = new Vector3(box.transform.position.x, box.transform.position.y + 0.8f, box.transform.position.z);
box.gameObject.transform.SetParent(null);
await Moveup(box.gameObject, hoister);
}
private async UniTask Moveup(GameObject point, GameObject upmachine)
{
await point.transform.DOMove(transportbox.transform.position, (Vector3.Distance(point.transform.position, transportbox.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(upmachine.transform);
await upmachine.transform.DOMove(pos.transform.position, (Vector3.Distance(upmachine.transform.position, pos.transform.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
point.transform.SetParent(null);
await point.transform.DOMove(boxpos.transform.position,(Vector3.Distance(point.transform.position,boxpos.position) / speed)).SetEase(Ease.InOutQuad).AsyncWaitForCompletion();
}
}

View File

@ -1,18 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Upperbox : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}