| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 | using System;using System.Collections;using System.Collections.Generic;using DG.Tweening;using UnityEngine;using UnityEngine.UI;using System.IO;using Newtonsoft.Json;using UnityAsync;public class AreaFHXSData{    public string areaName;    public float totalPopulation;    public float totalSize;    public float totalFarmSize;    public float totalPrize;    public float startEva;    public float endEva;}public class FHSSLayer : YZTRootLayer{    private Text yuJingZongShuText;    private Text chaoJingJieShuiWeiText;    private Text chaoBaoZhengShuiWeiText;    private Text chaoLiShiShuiWeiText;    private Text chaoXunXianShuiWeiText;    private Text zhengChangShuiWeiText;    public Text ymmjText;    public Text ymgdText;    public Text yxrkText;    public Text ccssText;    public VerticalLayoutGroup shuiShiliebiaoParent;    public List<ShuiShiLieBiaoItem> shuiShiLieBiaoItems = new List<ShuiShiLieBiaoItem>();    public ShuiShiLieBiaoItem shuiShiLieBiaoItem;    [Header("水位状况")]    public ShuiWeiZhuangKuangData shuiWeiZhuangKuangData;    public WaterRangeCtrlTool mTools;    public RectTransform[] hotPoints;    public async void InitData() {        WWW www = new WWW(Application.streamingAssetsPath + "/areaBaseData.json");        await new UnityAsync.WaitUntil(() => { return www.isDone; });        string areaBaseDataContent = www.text;        GlobalData.areaFHXSDatas = JsonConvert.DeserializeObject<List<AreaFHXSData>>(areaBaseDataContent);        for (int i = 0; i < GlobalData.areaFHXSDatas.Count; i++)        {            ShuiShiLieBiaoItem tempItem = Instantiate(shuiShiLieBiaoItem);            shuiShiLieBiaoItems.Add(tempItem);            tempItem.transform.SetParent(shuiShiliebiaoParent.transform);            tempItem.transform.localScale = Vector3.one;            tempItem.SetData(GlobalData.areaFHXSDatas[i]);            tempItem.Evaluate(1);        }        mTools.onCtrlChange = (float value) =>        {            float ymmj = 0;            float ymgd = 0;            float yxrk = 0;            float ccss = 0;            for (int i = 0; i < shuiShiLieBiaoItems.Count; i++) {                shuiShiLieBiaoItems[i].Evaluate(value);                ymmj += shuiShiLieBiaoItems[i].currentMianJi;                ymgd += shuiShiLieBiaoItems[i].currentGenDi;                yxrk += shuiShiLieBiaoItems[i].currentRenKou;                ccss += shuiShiLieBiaoItems[i].currentCaiChan;            }            ymmjText.text = ymmj.ToString("0.00") + "<color=#A5BFE2>平方公里</color>";            ymgdText.text = ymgd.ToString("0.0") + "<color=#A5BFE2>亩</color>";            yxrkText.text = yxrk.ToString("0") + "<color=#A5BFE2>个</color>";            ccssText.text = ccss.ToString("0.00") + "<color=#A5BFE2>亿元</color>";        };    }        private void Awake()    {        yuJingZongShuText = this.transform.Find("ShuiWeiZhuangKuang/ShuiWeiYuJing/countText").GetComponent<Text>();        chaoJingJieShuiWeiText = this.transform.Find("ShuiWeiZhuangKuang/ChaoJingJieShuiWei/countText").GetComponent<Text>();        chaoBaoZhengShuiWeiText = this.transform.Find("ShuiWeiZhuangKuang/ChaoBaoZhengShuiWei/countText").GetComponent<Text>();        chaoLiShiShuiWeiText = this.transform.Find("ShuiWeiZhuangKuang/ChaoLiShiShuiWei/countText").GetComponent<Text>();        chaoXunXianShuiWeiText = this.transform.Find("ShuiWeiZhuangKuang/ChaoXunXianShuiWei/countText").GetComponent<Text>();        zhengChangShuiWeiText = this.transform.Find("ShuiWeiZhuangKuang/ZhengChangShuiWei/countText").GetComponent<Text>();                if (shuiWeiZhuangKuangData != null)        {            yuJingZongShuText.text = $"{shuiWeiZhuangKuangData.yuJingZongShu}个";            chaoJingJieShuiWeiText.text = $"{shuiWeiZhuangKuangData.chaoJingJieShuiWei}个";            chaoBaoZhengShuiWeiText.text = $"{shuiWeiZhuangKuangData.chaoBaoZhengShuiWei}个";            chaoLiShiShuiWeiText.text = $"{shuiWeiZhuangKuangData.chaoLiShiShuiWei}个";            chaoXunXianShuiWeiText.text = $"{shuiWeiZhuangKuangData.chaoXunXianShuiWei}个";            zhengChangShuiWeiText.text = $"{shuiWeiZhuangKuangData.zhengChangShuiWei}个";        }        InitData();    }    private void OnEnable()    {        StaticLod.instance.OnFoucusStatic("Bird0");        //StaticLod.instance.currentStatic.SetCameraToCenter(new Vector3(513.8401f, 20, 4938.701f), 21389, new Vector2(89.61806f, 85.64014f));    }    private void LateUpdate()    {        if (hotPoints.Length > 3) {            hotPoints[0].anchoredPosition = CameraManager.instance.mainCamera.WorldToScreenPoint(StaticLod.instance.staticImportants[0].transform.position) / Screen.width * 1920.0f; ;            hotPoints[1].anchoredPosition = CameraManager.instance.mainCamera.WorldToScreenPoint(StaticLod.instance.staticImportants[1].transform.position) / Screen.width * 1920.0f; ;            hotPoints[2].anchoredPosition = CameraManager.instance.mainCamera.WorldToScreenPoint(StaticLod.instance.staticImportants[3].transform.position) / Screen.width * 1920.0f; ;            hotPoints[3].anchoredPosition = CameraManager.instance.mainCamera.WorldToScreenPoint(StaticLod.instance.staticImportants[6].transform.position) / Screen.width * 1920.0f; ;        }    }}
 |