using UnityEngine; using vnxbqy.UI; using UnityEngine.UI; //自动砍树界面 public class AutoCutTreeWin : Window { [SerializeField] Dropdown dropEquipmentQuality; [SerializeField] Dropdown dropAttributeAttack1; [SerializeField] Dropdown dropAttributeDefend1; [SerializeField] Dropdown dropAttributeAttack2; [SerializeField] Dropdown dropAttributeDefend2; [SerializeField] Dropdown dropStrength; [SerializeField] Text txtDropEquipmentQualityLabel; [SerializeField] Text txtDropAttributeAttackLabel1; [SerializeField] Text txtDropAttributeDefendLabel1; [SerializeField] Text txtDropAttributeAttackLabel2; [SerializeField] Text txtDropAttributeDefendLabel2; [SerializeField] Text txtDropStrengthLabel; [SerializeField] Image imgDropEquipmentQualityArrow; [SerializeField] Image imgDropAttributeAttackArrow1; [SerializeField] Image imgDropAttributeDefendArrow1; [SerializeField] Image imgDropAttributeAttackArrow2; [SerializeField] Image imgDropAttributeDefendArrow2; [SerializeField] Image imgDropStrengthArrow; [SerializeField] ToggleButton togDemonPowerUpStop; [SerializeField] ToggleButton togAnd; [SerializeField] ToggleButton togOr; [SerializeField] ToggleButton togAttributeFilter1; [SerializeField] ToggleButton togAttributeFilter2; [SerializeField] ToggleButton togChallengeFullStop; [SerializeField] ToggleButton togHammerAcceleration; [SerializeField] ToggleButton togConsumeStrength; [SerializeField] ButtonEx btnStart; [SerializeField] ButtonEx btnClose; AutoCutTreeModel autoCutTreeModel { get { return ModelCenter.Instance.GetModel(); } } protected override void BindController() { } protected override void AddListeners() { togDemonPowerUpStop.SetListener(() => { togDemonPowerUpStop.isOn = !togDemonPowerUpStop.isOn; autoCutTreeModel.ChangeToggleDemonPowerUpStop(togDemonPowerUpStop.isOn); }); togAnd.SetListener(() => { togAnd.isOn = !togAnd.isOn; autoCutTreeModel.ChangeToggleAnd(togAnd.isOn); }); togOr.SetListener(() => { togOr.isOn = !togOr.isOn; autoCutTreeModel.ChangeToggleOr(togOr.isOn); }); togAttributeFilter1.SetListener(() => { togAttributeFilter1.isOn = !togAttributeFilter1.isOn; autoCutTreeModel.ChangeToggleAttributeFilter1(togAttributeFilter1.isOn); }); togAttributeFilter2.SetListener(() => { togAttributeFilter2.isOn = !togAttributeFilter2.isOn; autoCutTreeModel.ChangeToggleAttributeFilter2(togAttributeFilter2.isOn); }); togChallengeFullStop.SetListener(() => { togChallengeFullStop.isOn = !togChallengeFullStop.isOn; autoCutTreeModel.ChangeToggleChallengeFullStop(togChallengeFullStop.isOn); }); togHammerAcceleration.SetListener(() => { togHammerAcceleration.isOn = !togHammerAcceleration.isOn; autoCutTreeModel.ChangeToggleHammerAcceleration(togHammerAcceleration.isOn); }); togConsumeStrength.SetListener(() => { togConsumeStrength.isOn = !togConsumeStrength.isOn; autoCutTreeModel.ChangeToggleConsumeStrength(togConsumeStrength.isOn); }); dropEquipmentQuality.SetListener((int value) => { autoCutTreeModel.ChangeDropdownEquipmentQuality(value); }); dropAttributeAttack1.SetListener((int value) => { autoCutTreeModel.ChangeDropdownAttributeAttack1(value); }); dropAttributeDefend1.SetListener((int value) => { autoCutTreeModel.ChangeDropdownAttributeDefend1(value); }); dropAttributeAttack2.SetListener((int value) => { autoCutTreeModel.ChangeDropdownAttributeAttack2(value); }); dropAttributeDefend2.SetListener((int value) => { autoCutTreeModel.ChangeDropdownAttributeDefend2(value); }); dropStrength.SetListener((int value) => { autoCutTreeModel.ChangeDropdownStrength(value); }); btnClose.SetListener(() => { WindowCenter.Instance.Close(); }); btnStart.SetListener(() => { autoCutTreeModel.StartAutoCutTree(); }); } protected override void OnPreOpen() { autoCutTreeModel.UpdateInfo += OnUpdateInfo; dropEquipmentQuality.ClearOptions(); dropAttributeAttack1.ClearOptions(); dropAttributeDefend1.ClearOptions(); dropAttributeAttack2.ClearOptions(); dropAttributeDefend2.ClearOptions(); dropStrength.ClearOptions(); dropEquipmentQuality.AddOptions(autoCutTreeModel.dropEquipmentQualityOptionList); dropAttributeAttack1.AddOptions(autoCutTreeModel.dropAttributeOptionAttackList); dropAttributeDefend1.AddOptions(autoCutTreeModel.dropAttributeOptionDefendList); dropAttributeAttack2.AddOptions(autoCutTreeModel.dropAttributeOptionAttackList); dropAttributeDefend2.AddOptions(autoCutTreeModel.dropAttributeOptionDefendList); dropStrength.AddOptions(autoCutTreeModel.dropStrengthOptionList); autoCutTreeModel.StopAutoCutTree(); Display(); } protected override void OnAfterOpen() { } protected override void OnAfterClose() { } protected override void OnPreClose() { autoCutTreeModel.UpdateInfo -= OnUpdateInfo; } private void OnUpdateInfo() { Display(); } void Display() { int dropdownValue = autoCutTreeModel.dropEquipmentQuality; dropEquipmentQuality.value = dropdownValue; txtDropEquipmentQualityLabel.text = autoCutTreeModel.dropEquipmentQualityOptionList[dropdownValue].text; imgDropEquipmentQualityArrow.rectTransform.rotation = Quaternion.Euler(0, 0, 0); dropdownValue = autoCutTreeModel.dropAttributeAttack1; dropAttributeAttack1.value = dropdownValue; txtDropAttributeAttackLabel1.text = autoCutTreeModel.dropAttributeOptionAttackList[dropdownValue].text; imgDropAttributeAttackArrow1.rectTransform.rotation = Quaternion.Euler(0, 0, 0); dropdownValue = autoCutTreeModel.dropAttributeDefend1; dropAttributeDefend1.value = dropdownValue; txtDropAttributeDefendLabel1.text = autoCutTreeModel.dropAttributeOptionDefendList[dropdownValue].text; imgDropAttributeDefendArrow1.rectTransform.rotation = Quaternion.Euler(0, 0, 0); dropdownValue = autoCutTreeModel.dropAttributeAttack2; dropAttributeAttack2.value = dropdownValue; txtDropAttributeAttackLabel2.text = autoCutTreeModel.dropAttributeOptionAttackList[dropdownValue].text; imgDropAttributeAttackArrow2.rectTransform.rotation = Quaternion.Euler(0, 0, 0); dropdownValue = autoCutTreeModel.dropAttributeDefend2; dropAttributeDefend2.value = dropdownValue; txtDropAttributeDefendLabel2.text = autoCutTreeModel.dropAttributeOptionDefendList[dropdownValue].text; imgDropAttributeDefendArrow2.rectTransform.rotation = Quaternion.Euler(0, 0, 0); dropdownValue = autoCutTreeModel.dropStrength; dropStrength.value = dropdownValue; txtDropStrengthLabel.text = autoCutTreeModel.dropStrengthOptionList[dropdownValue].text; imgDropStrengthArrow.rectTransform.rotation = Quaternion.Euler(0, 0, 0); togDemonPowerUpStop.isOn = autoCutTreeModel.isTogDemonPowerUpStop; togAnd.isOn = autoCutTreeModel.isTogAnd; togOr.isOn = autoCutTreeModel.isTogOr; togAttributeFilter1.isOn = autoCutTreeModel.isTogAttributeFilter1; togAttributeFilter2.isOn = autoCutTreeModel.isTogAttributeFilter2; togChallengeFullStop.isOn = autoCutTreeModel.isTogChallengeFullStop; togHammerAcceleration.isOn = autoCutTreeModel.isTogHammerAcceleration; togConsumeStrength.isOn = autoCutTreeModel.isTogConsumeStrength; } }