123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.IO;
- using UnityEngine;
- using UnityEngine.Networking;
- using UnityEngine.UI;
- public class ObsItem : MonoBehaviour
- {
- public ObsData _data;
- public Button _button;
- private Text nameText;
- private RawImage fmImg;
- public static Dictionary<string, Texture> OBSTexLibrary = new Dictionary<string, Texture>();
- private void Awake()
- {
- _button = this.GetComponent<Button>();
- _button.onClick.AddListener(ShowObsTargetObj);
- nameText = this.transform.Find("nameText").GetComponent<Text>();
- fmImg = this.transform.GetComponent<RawImage>();
- }
- private void Start()
- {
- ActionInstance._Instance.obsFmUpdata += OnGetFmUpdate;
- }
- private void OnDestroy()
- {
- ActionInstance._Instance.obsFmUpdata -= OnGetFmUpdate;
- }
- public void SetData(ObsData data)
- {
- _data = data;
- if (_data.name != null)
- {
- nameText.text = _data.name;
- }
- StartCoroutine(LoadFmTex( ServerAddress.Server_TextureSavePath + _data.targetName + ".jpg"));
- }
- private void OnGetFmUpdate(string name)
- {
- if (name.Equals(_data.targetName))
- {
- StartCoroutine(LoadFmTex(ServerAddress.Server_TextureSavePath + _data.targetName + ".jpg"));
- }
- }
- IEnumerator LoadFmTex(string url)
- {
- UnityWebRequest www = UnityWebRequestTexture.GetTexture(url);
- yield return www.SendWebRequest();
- if (www.isDone && www.result == UnityWebRequest.Result.Success)
- {
- fmImg.texture = ((DownloadHandlerTexture)www.downloadHandler).texture;
- if(!OBSTexLibrary.ContainsKey(ServerAddress.Server_TextureSavePath + _data.targetName + ".jpg"))
- OBSTexLibrary.Add(ServerAddress.Server_TextureSavePath + _data.targetName + ".jpg", fmImg.texture);
- }
- www.disposeDownloadHandlerOnDispose = true;
- www.Dispose();
- }
-
- public void ShowObsTargetObj()
- {
- StaticLod.instance.OnFoucusStatic(_data.targetName);
- }
- }
|