| | |
| | | |
| | | using UnityEngine.Events; |
| | | |
| | | namespace vnxbqy.UI |
| | | public class GMCmdPanel : UIBase |
| | | { |
| | | public class GMCmdPanel : UIBase |
| | | |
| | | [SerializeField] |
| | | private ScrollerController _cmdCtrl; |
| | | |
| | | [SerializeField] |
| | | private Button _closeBtn; |
| | | |
| | | GMCmdManager _cmdModel; |
| | | GMCmdManager cmdModel{ get { return GMCmdManager.Instance; } } |
| | | |
| | | protected override void OnPreOpen() |
| | | { |
| | | base.OnPreOpen(); |
| | | _cmdCtrl.OnRefreshCell += RefreshCmdCell; |
| | | |
| | | _closeBtn.onClick.AddListener(OnClickCloseBtn); |
| | | |
| | | CreateCmdCell(); |
| | | } |
| | | |
| | | protected override void OnOpen() |
| | | { |
| | | base.OnOpen(); |
| | | this.transform.SetAsLastSibling(); |
| | | } |
| | | |
| | | |
| | | private void CreateCmdCell() |
| | | { |
| | | _cmdCtrl.Refresh(); |
| | | var allKeys = GmCmdConfig.dic.Keys; |
| | | foreach (var key in allKeys) |
| | | { |
| | | _cmdCtrl.AddCell(ScrollerDataType.Header, key); |
| | | } |
| | | _cmdCtrl.Restart(); |
| | | } |
| | | |
| | | private void RefreshCmdCell(ScrollerDataType type, CellView cell) |
| | | { |
| | | Button cellBtn = cell.GetComponent<Button>(); |
| | | Text cmdText = cell.transform.Find("Text").GetComponent<Text>(); |
| | | GmCmdConfig gmCmdModel = GmCmdConfig.Get(cell.index); |
| | | if (gmCmdModel == null) |
| | | return; |
| | | |
| | | cmdText.text = gmCmdModel.Cmd + "=" + gmCmdModel.ParamSet; |
| | | cellBtn.onClick.RemoveAllListeners(); |
| | | cellBtn.onClick.AddListener(() => { OnClickCmdCell(gmCmdModel.ParamSet); }); |
| | | } |
| | | |
| | | private void OnClickCmdCell(string paramSet) |
| | | { |
| | | SplitLongGMCmd(paramSet); |
| | | } |
| | | |
| | | public void SplitLongGMCmd(string value) |
| | | { |
| | | |
| | | [SerializeField] |
| | | private ScrollerController _cmdCtrl; |
| | | |
| | | [SerializeField] |
| | | private Button _closeBtn; |
| | | |
| | | GMCmdManager _cmdModel; |
| | | GMCmdManager cmdModel{ get { return GMCmdManager.Instance; } } |
| | | |
| | | protected override void OnPreOpen() |
| | | string[] longCmdArray = value.Split('|'); |
| | | for (int i = 0; i < longCmdArray.Length; i++) |
| | | { |
| | | base.OnPreOpen(); |
| | | _cmdCtrl.OnRefreshCell += RefreshCmdCell; |
| | | |
| | | _closeBtn.onClick.AddListener(OnClickCloseBtn); |
| | | |
| | | CreateCmdCell(); |
| | | cmdModel.OnSendGMQuest(longCmdArray[i].Trim()); |
| | | } |
| | | |
| | | protected override void OnOpen() |
| | | { |
| | | base.OnOpen(); |
| | | this.transform.SetAsLastSibling(); |
| | | } |
| | | |
| | | |
| | | private void CreateCmdCell() |
| | | { |
| | | _cmdCtrl.Refresh(); |
| | | var allKeys = GmCmdConfig.dic.Keys; |
| | | foreach (var key in allKeys) |
| | | { |
| | | _cmdCtrl.AddCell(ScrollerDataType.Header, key); |
| | | } |
| | | _cmdCtrl.Restart(); |
| | | } |
| | | |
| | | private void RefreshCmdCell(ScrollerDataType type, CellView cell) |
| | | { |
| | | Button cellBtn = cell.GetComponent<Button>(); |
| | | Text cmdText = cell.transform.Find("Text").GetComponent<Text>(); |
| | | GmCmdConfig gmCmdModel = GmCmdConfig.Get(cell.index); |
| | | if (gmCmdModel == null) |
| | | return; |
| | | |
| | | cmdText.text = gmCmdModel.Cmd + "=" + gmCmdModel.ParamSet; |
| | | cellBtn.onClick.RemoveAllListeners(); |
| | | cellBtn.onClick.AddListener(() => { OnClickCmdCell(gmCmdModel.ParamSet); }); |
| | | } |
| | | |
| | | private void OnClickCmdCell(string paramSet) |
| | | { |
| | | SplitLongGMCmd(paramSet); |
| | | } |
| | | |
| | | public void SplitLongGMCmd(string value) |
| | | { |
| | | if (value == "RoleDead" && CrossServerUtility.IsCrossServer()) |
| | | { |
| | | string[] longCmdArray = value.Split('|'); |
| | | for (int i = 0; i < longCmdArray.Length; i++) |
| | | { |
| | | cmdModel.SendCrossServerGMQuest(longCmdArray[i].Trim()); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | string[] longCmdArray = value.Split('|'); |
| | | for (int i = 0; i < longCmdArray.Length; i++) |
| | | { |
| | | cmdModel.OnSendGMQuest(longCmdArray[i].Trim()); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | public void OnClickCloseBtn() |
| | | { |
| | | CloseWindow(); |
| | | } |
| | | |
| | | } |
| | | |
| | | public void OnClickCloseBtn() |
| | | { |
| | | CloseWindow(); |
| | | } |
| | | |
| | | } |
| | | |