using System.Collections.Generic; using System.Net; using System.Net.Sockets; using UnityEngine; namespace Funique { /// /// Extensions: Unclassified
/// ------------------------------------------------
/// 擴充: 未分類 ///
public static class UtilityExtensions { public static string GetSelfIPAddress() { IPHostEntry IpEntry = Dns.GetHostEntry(Dns.GetHostName()); foreach (IPAddress item in IpEntry.AddressList) { //AddressFamily.InterNetwork ipv4 //AddressFamily.InterNetworkV6 ipv6 if (item.AddressFamily == AddressFamily.InterNetwork) { return item.ToString(); } } return null; } public static string[] GetSelfIPAddresses() { IPHostEntry IpEntry = Dns.GetHostEntry(Dns.GetHostName()); List items = new List(); foreach (IPAddress item in IpEntry.AddressList) { //AddressFamily.InterNetwork ipv4 //AddressFamily.InterNetworkV6 ipv6 if (item.AddressFamily == AddressFamily.InterNetwork) { items.Add(item.ToString()); } } return items.ToArray(); } public static void ResetCalculation(this GameObject targetObj, float len) { targetObj.transform.parent = null; GameObject headSet = null; //Singleton
.Instance.HeadSet; GameObject gameObject = new GameObject(); gameObject.transform.position = headSet.transform.position; Vector3 eulerAngles = headSet.transform.rotation.eulerAngles; eulerAngles.x = 0f; eulerAngles.z = 0f; gameObject.transform.eulerAngles = eulerAngles; Vector3 vector = headSet.transform.position + gameObject.transform.forward * len; targetObj.transform.position = new Vector3(vector.x, vector.y - 0.5f, vector.z); UnityEngine.Object.Destroy(gameObject); targetObj.transform.rotation = Quaternion.LookRotation(headSet.transform.right); targetObj.transform.eulerAngles = new Vector3(0f, targetObj.transform.eulerAngles.y - 90f, 0f); } } }