using AdamSync; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using UnityEngine.Networking; using static InterfaceManager; public class Backpack : MonoBehaviour { public UnityEvent oneClickEvent;//unity事件 public UnityEvent doubleClickEvent;//unity事件 public float time; public float lascktime; public float itemtime = 0.2f; public int count; public bool isCount = true; public Mastermanagement mastermanagement; public string Id; void Start() { } void Update() { if (Input.GetMouseButtonDown(1)) { time = 0.2f; if (Time.realtimeSinceStartup - lascktime < itemtime) { count = 2; } else { count = 1; } } if (Input.GetMouseButtonUp(1)) { isCount = false; lascktime = Time.realtimeSinceStartup; } if (!isCount) { time -= Time.deltaTime; if (time <= 0) { if (count == 2) { OnRay(); doubleClickEvent?.Invoke(); } else { oneClickEvent?.Invoke(); } isCount = true; } } } private void OnRay() { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit, 1000)) { if (hit.collider.gameObject.tag == "AttackTarget") { mastermanagement.Onobj(hit.collider.gameObject); mastermanagement.Remove(hit.collider.gameObject); Id = hit.collider.gameObject.GetComponent().deviceID; Deletedevice(); } } } private void Deletedevice() { if (string.IsNullOrEmpty(Id)) { return; } string nowData = string.Format("{0},{1}", "SetToBeDestroyedTwo", Id); _ = SyncCreateRoom.SendMessageAsync(string.Format("send2room {0}", nowData)); WWWForm headers = new WWWForm(); headers.AddField("id", Id); StartCoroutine(PostString(Url_Deletepracticedevicedetail, headers, data => { Id = null; Debug.Log(data); })); } }