You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
3.3 KiB
99 lines
3.3 KiB
1 year ago
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using UniRx;
|
||
|
using UnityEngine;
|
||
|
using UnityEngine.UI;
|
||
|
|
||
|
public enum WaterSupplyCalculationType { ShiJiYongShuiLiang, ShuiQiangShuLiang, GongShuiNengLi }
|
||
|
public class WaterConsumptionPanel : UIView
|
||
|
{
|
||
|
public WaterSupplyCalculationType WSCType;
|
||
|
//用水量
|
||
|
public Toggle YongShuiLiangToggle;
|
||
|
//水枪数量
|
||
|
public Toggle ShuiQiangShuLiangToggle;
|
||
|
//供水能力
|
||
|
public Toggle GongShuiNengLiToggle;
|
||
|
//用水量面板
|
||
|
public GameObject YongShuiLiangPanel;
|
||
|
//水枪数量面板
|
||
|
public GameObject ShuiQiangShuLiangPanel;
|
||
|
//供水能力面板
|
||
|
public GameObject GongShuiNengLiPanel;
|
||
|
|
||
|
public Button CalculationButton;
|
||
|
public Button ClearButton;
|
||
|
|
||
|
public YongShuiLiangCalculation YSLCalculation;
|
||
|
public ShuiQiangCalculation SQCalculation;
|
||
|
public GongShuiNengLiCalculation GSNLCalculation;
|
||
|
public override void Awake()
|
||
|
{
|
||
|
base.Awake();
|
||
|
transform.Find("TitleBar/CloseButton").GetComponent<Button>().onClick.AddListener(() =>
|
||
|
{
|
||
|
Hide();
|
||
|
});
|
||
|
//用水量面板
|
||
|
YongShuiLiangToggle.OnValueChangedAsObservable()
|
||
|
.Subscribe(value =>
|
||
|
{
|
||
|
YongShuiLiangPanel.SetActive(value);
|
||
|
if (value)
|
||
|
WSCType = WaterSupplyCalculationType.ShiJiYongShuiLiang;
|
||
|
});
|
||
|
//水枪数量面板
|
||
|
ShuiQiangShuLiangToggle.OnValueChangedAsObservable()
|
||
|
.Subscribe(value =>
|
||
|
{
|
||
|
ShuiQiangShuLiangPanel.SetActive(value);
|
||
|
if (value)
|
||
|
WSCType = WaterSupplyCalculationType.ShuiQiangShuLiang;
|
||
|
});
|
||
|
//供水能力面板
|
||
|
GongShuiNengLiToggle.OnValueChangedAsObservable()
|
||
|
.Subscribe(value =>
|
||
|
{
|
||
|
GongShuiNengLiPanel.SetActive(value);
|
||
|
if (value)
|
||
|
WSCType = WaterSupplyCalculationType.GongShuiNengLi;
|
||
|
});
|
||
|
//计算
|
||
|
CalculationButton.OnClickAsObservable()
|
||
|
.Subscribe(_ =>
|
||
|
{
|
||
|
switch (WSCType)
|
||
|
{
|
||
|
case WaterSupplyCalculationType.ShiJiYongShuiLiang:
|
||
|
YSLCalculation.OnCalculation();
|
||
|
break;
|
||
|
case WaterSupplyCalculationType.ShuiQiangShuLiang:
|
||
|
SQCalculation.OnCalculation();
|
||
|
break;
|
||
|
case WaterSupplyCalculationType.GongShuiNengLi:
|
||
|
GSNLCalculation.OnCalculation();
|
||
|
break;
|
||
|
}
|
||
|
});
|
||
|
//清空
|
||
|
ClearButton.OnClickAsObservable()
|
||
|
.Subscribe(_ =>
|
||
|
{
|
||
|
switch (WSCType)
|
||
|
{
|
||
|
case WaterSupplyCalculationType.ShiJiYongShuiLiang:
|
||
|
YSLCalculation.OnClear();
|
||
|
break;
|
||
|
case WaterSupplyCalculationType.ShuiQiangShuLiang:
|
||
|
SQCalculation.OnClear();
|
||
|
break;
|
||
|
case WaterSupplyCalculationType.GongShuiNengLi:
|
||
|
GSNLCalculation.OnClear();
|
||
|
break;
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|