77 lines
2.1 KiB
C#
77 lines
2.1 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
/// <summary>
|
|
/// 验电笔
|
|
/// </summary>
|
|
public class Tool_TestPen : Tool_Base
|
|
{
|
|
|
|
private void Update()
|
|
{
|
|
if (Input.GetMouseButtonDown(0))
|
|
{
|
|
//点击螺丝验电
|
|
Ray tmpray = Camera.main.ScreenPointToRay(Input.mousePosition);
|
|
if (Physics.Raycast(tmpray, out RaycastHit hit))
|
|
{
|
|
//插座
|
|
Device_Base db = hit.transform.GetComponent<Device_Base>();
|
|
if (db != null)
|
|
{
|
|
Test(db);
|
|
return;
|
|
}
|
|
|
|
//柜门
|
|
Tool_Base tb= hit.transform.GetComponent<Tool_Base>();
|
|
if(tb != null)
|
|
{
|
|
Test(tb);
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 执行验电操作
|
|
/// </summary>
|
|
/// <param name="device_base">被验电设备</param>
|
|
public void Test(Device_Base device_base)
|
|
{
|
|
if (device_base.deviceType == DeviceType.计量柜_插座)
|
|
{
|
|
var tmp = ((Device_Socket)device_base);
|
|
//位置移动
|
|
transform.position = tmp.testPosAndRot.position;
|
|
transform.eulerAngles = tmp.testPosAndRot.eulerAngles;
|
|
Debug.Log("计量柜_插座 已验电");
|
|
}
|
|
else if(device_base.deviceType == DeviceType.计量柜_柜门)
|
|
{
|
|
var tmp = ((Device_CabinetDoor)device_base);
|
|
//位置移动
|
|
transform.position = tmp.testPosAndRot.position;
|
|
transform.eulerAngles = tmp.testPosAndRot.eulerAngles;
|
|
Debug.Log("计量柜_柜门 已验电");
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 执行验电操作
|
|
/// </summary>
|
|
/// <param name="tool_base">被验电设备</param>
|
|
public void Test(Tool_Base tool_base)
|
|
{
|
|
if (tool_base.toolType == ToolType.螺丝)
|
|
{
|
|
var tmp = ((Tool_Screw)tool_base);
|
|
//位置移动
|
|
transform.position = tmp.installPos.position;
|
|
transform.eulerAngles = tmp.installPos.eulerAngles;
|
|
Debug.Log("螺丝 已验电");
|
|
}
|
|
}
|
|
}
|