MenuIcon.cs 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. using TMPro;
  6. using System;
  7. using LitJson;
  8. using ShadowStudio.Model;
  9. using XRTool.Util;
  10. using ShadowStudio.Mgr;
  11. using ShadowStudio.UI;
  12. using DG.Tweening;
  13. using BeinLab.Util;
  14. using UnityEngine.EventSystems;
  15. using Studio.Scripts;
  16. using SC.XR.Unity.Module_InputSystem;
  17. public class MenuIcon : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IPointerClickHandler, IPointerEnterHandler, IPointerExitHandler
  18. {
  19. private DoubleLinkNode<RoomConfig> _dataConfig;
  20. /// <summary>
  21. /// 存储房间的数据信息
  22. /// </summary>
  23. public DoubleLinkNode<RoomConfig> DataConfig { get => _dataConfig; set => _dataConfig = value; }
  24. Button _deleteBtn;//删除按钮
  25. GameObject _show;//显示房间界面
  26. GameObject _showK;//无房间时显示默认界面
  27. TextMesh _peopleNum;//房间人数文本
  28. TextMesh _roomName;//房间名称文本
  29. string _id;//房间ID
  30. string _passWord;//房间密码
  31. bool isClick = false;//房间是否被点击
  32. float _clickTime = 0.5f;//点击按下房间的间隔时间
  33. float _lastTime = 0;//记录开始点击房间时所处的时间
  34. public bool _isDrag = false;//房间是否被拖拽
  35. public static bool isjoinRoom;
  36. /// <summary>
  37. /// 记录物体的缩放值
  38. /// </summary>
  39. public Vector3 initAV3
  40. {
  41. get;
  42. set;
  43. }
  44. /// <summary>
  45. /// 记录所进入房间的ID,用于退出房间时显示指定房间的动画效果
  46. /// </summary>
  47. public static string inID;
  48. bool isRoomShow;
  49. bool isInit;
  50. bool isHide;
  51. /// <summary>
  52. /// 所处的位置索引(用于设置动画延迟)
  53. /// </summary>
  54. public int RoomIndex
  55. {
  56. get;
  57. set;
  58. }
  59. /// <summary>
  60. /// 进入或者退出房间时的位置变换记录
  61. /// </summary>
  62. public static Vector3 itemPos;
  63. public void Start()
  64. {
  65. DispatcherBase.KeyDownDelegateRegister(downEvent);
  66. DispatcherBase.KeyUpDelegateRegister(upEvent);
  67. }
  68. private void upEvent(InputKeyCode keyCode, InputDevicePartBase part)
  69. {
  70. if (part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject != null && isDown)
  71. {
  72. isDown = false;
  73. if (Time.time - _lastTime <= _clickTime)
  74. {
  75. ClickSelf();
  76. }
  77. }
  78. }
  79. private void downEvent(InputKeyCode keyCode, InputDevicePartBase part)
  80. {
  81. }
  82. public void Init()//初始化
  83. {
  84. HomeProxy.Instance.DeleteRoomAction += DeleteRoomHandler;
  85. _deleteBtn = transform.Find("DeleteBtn").GetComponent<Button>();
  86. _show = transform.Find("Show").gameObject;
  87. _showK = transform.Find("ShowK").gameObject;
  88. _peopleNum = transform.Find("Text/UIRoot/PeopleNumText").GetComponent<TextMesh>();
  89. _roomName = transform.Find("Text/UIRoot/FangzhuText").GetComponent<TextMesh>();
  90. _deleteBtn.onClick.AddListener(ClickDeleteBtn);
  91. EventTool._displayDelete += DisplayDeleteBtn;//注册点击删除按钮的事件
  92. if (CommonMethod.isZiDong)
  93. {
  94. if (!isjoinRoom)
  95. {
  96. isjoinRoom = true;
  97. Invoke("joinZIDONG", 2f);
  98. }
  99. }
  100. }
  101. void joinZIDONG()
  102. {
  103. WSHandler.Room.OnInit -= onInit;
  104. WSHandler.Room.OnJoinRoom -= onJoinRoom;
  105. WSHandler.Rtc.onRtcInit -= onRtcInit;
  106. WSHandler.Room.OnInit += onInit;
  107. WSHandler.Room.OnJoinRoom += onJoinRoom;
  108. WSHandler.Rtc.onRtcInit += onRtcInit;
  109. _id = "43";
  110. WSHandler.roominit(_id);
  111. }
  112. /// <summary>
  113. /// "x"按钮是否显示
  114. /// </summary>
  115. bool _isShow = false;
  116. void DisplayDeleteBtn()//点击删除按钮后,显示“x”按钮
  117. {
  118. _isShow = !_isShow;
  119. if (_id != "" && _deleteBtn != null)
  120. _deleteBtn.gameObject.SetActive(_isShow);
  121. }
  122. void ClickDeleteBtn()// 回调方法:点击“ x ”删除按钮
  123. {
  124. _deleteBtn.enabled = false;
  125. Invoke("ReDeleteBtn", 1f);
  126. CommonMethod.ShowPopUp(PopType.Cancel, LanguageMgr.Instance.GetMessage("1063").Message, LanguageMgr.Instance.GetMessage("1064").Message, () =>
  127. {
  128. SendDelete();
  129. }, LanguageMgr.Instance.GetMessage("1065").Message, null, LanguageMgr.Instance.GetMessage("1058").Message);
  130. }
  131. private void ReDeleteBtn()
  132. {
  133. _deleteBtn.enabled = true;
  134. }
  135. /// <summary>
  136. /// 发送删除房间消息
  137. /// </summary>
  138. public void SendDelete()
  139. {
  140. HomeProxy.Instance.RequestDeleteRoom(int.Parse(_id.Trim()));
  141. }
  142. /// <summary>
  143. /// 回调函数: 在删除房间成功后,刷新删除按钮的显示状态
  144. /// </summary>
  145. public void ChangeDteBtn()
  146. {
  147. if (_deleteBtn != null)
  148. {
  149. if (_id == "")
  150. {
  151. _deleteBtn.gameObject.SetActive(false);
  152. }
  153. else
  154. {
  155. _deleteBtn.gameObject.SetActive(true);
  156. }
  157. }
  158. }
  159. /// <summary>
  160. /// 刷新房间数据显示
  161. /// </summary>
  162. public void RefreshData()
  163. {
  164. if (_dataConfig != null)
  165. {
  166. gameObject.SetActive(true);
  167. _roomName.text = "房间名" + DataConfig.Value.Room_name;
  168. _id = DataConfig.Value.Id;
  169. if (DataConfig.Value.Room_password != null)
  170. {
  171. _passWord = DataConfig.Value.Room_password;
  172. }
  173. switch (DataConfig.Value.Type)
  174. {
  175. case "1":
  176. _peopleNum.text = "个人房间";
  177. break;
  178. case "2":
  179. _peopleNum.text = "房间人数" + DataConfig.Value.Number + "/" + DataConfig.Value.Max_member;
  180. break;
  181. default:
  182. break;
  183. }
  184. if (_id == "")
  185. {
  186. _show.SetActive(false);
  187. _showK.SetActive(true);
  188. _roomName.text = "Studio";
  189. _peopleNum.text = "添加房间";
  190. if (_deleteBtn != null)
  191. {
  192. _deleteBtn.gameObject.SetActive(false);
  193. }
  194. }
  195. else
  196. {
  197. _show.SetActive(true);
  198. _showK.SetActive(false);
  199. _deleteBtn.gameObject.SetActive(_isShow);
  200. }
  201. }
  202. else
  203. {
  204. gameObject.SetActive(false);
  205. }
  206. isInit = true;
  207. }
  208. /// <summary>
  209. /// 当点击房间元素时,执行的方法
  210. /// </summary>
  211. public void ClickSelf()
  212. {
  213. if (!isClick)
  214. {
  215. isClick = true;
  216. AgoraRTCManager.Instance.ChannelName = _id;
  217. // AgoraVideoAudioManager.Instance.JoinChannel();
  218. ClickSelf2();
  219. //if (_id != "")
  220. //{
  221. // Debug.Log(".................." + _id);
  222. // AgoraVideoAudioManager.Instance.SetChinnelName(_id);
  223. // AgoraVideoAudioManager.Instance.JoinChannel();
  224. // WSHandler.Room.OnInit -= onInit;
  225. // WSHandler.Room.OnJoinRoom -= onJoinRoom;
  226. // WSHandler.Rtc.onRtcInit -= onRtcInit;
  227. // WSHandler.Room.OnInit += onInit;
  228. // WSHandler.Room.OnJoinRoom += onJoinRoom;
  229. // WSHandler.Rtc.onRtcInit += onRtcInit;
  230. // WSHandler.roominit(_id);
  231. //}
  232. //else
  233. //{
  234. // OnClickCreateRoom();
  235. //}
  236. }
  237. }
  238. public void ClickSelf2()
  239. {
  240. Debug.Log("ClickSelf2");
  241. if (_id != "")
  242. {
  243. WSHandler.Room.OnInit -= onInit;
  244. WSHandler.Room.OnJoinRoom -= onJoinRoom;
  245. WSHandler.Rtc.onRtcInit -= onRtcInit;
  246. WSHandler.Room.OnInit += onInit;
  247. WSHandler.Room.OnJoinRoom += onJoinRoom;
  248. WSHandler.Rtc.onRtcInit += onRtcInit;
  249. WSHandler.roominit(_id);
  250. // effectRoom();
  251. }
  252. else
  253. {
  254. OnClickCreateRoom();
  255. }
  256. }
  257. /// <summary>
  258. /// 点击创建房间执行的操作
  259. /// </summary>
  260. private void OnClickCreateRoom()
  261. {
  262. isClick = false;
  263. HomeMgr.Instance._menuListDlg.Hide();
  264. CreateSearchRoomDlg.Instance.dlg.hideDlg();
  265. Invoke("GotoView", 1.3f);
  266. }
  267. /// <summary>
  268. /// 打开创建房间界面,关闭房间游戏对象界面
  269. /// </summary>
  270. private void GotoView()
  271. {
  272. if (CreateRoomDlg.Instance)
  273. {
  274. CreateRoomDlg.Instance.Init();
  275. }
  276. HomeMgr.Instance.ShowView(HomeMgr.CREATROOMDLG);
  277. HomeMgr.Instance.roomListDlg.SetActive(false);
  278. }
  279. private void onRtcInit(JsonData data)
  280. {
  281. // effectRoom();
  282. }
  283. private GameObject _showObj;
  284. /// <summary>
  285. /// 处于显示状态的房间游戏对象
  286. /// </summary>
  287. private GameObject Show
  288. {
  289. get
  290. {
  291. if (_id != "")
  292. {
  293. _showObj = _show;
  294. }
  295. else
  296. {
  297. _showObj = _showK;
  298. }
  299. return _showObj;
  300. }
  301. }
  302. GameObject frontBG;
  303. /// <summary>
  304. /// 房间游戏对象的背景板
  305. /// </summary>
  306. public GameObject FrontBG
  307. {
  308. get
  309. {
  310. if (!frontBG)
  311. {
  312. frontBG = UnityUtil.GetBreadthChild<Transform>(Show.transform, "FrontBG").gameObject;
  313. }
  314. return frontBG;
  315. }
  316. }
  317. GameObject bottom;
  318. /// <summary>
  319. /// 房间游戏对象的地板
  320. /// </summary>
  321. public GameObject Bottom
  322. {
  323. get
  324. {
  325. if (!bottom)
  326. {
  327. bottom = UnityUtil.GetBreadthChild<Transform>(Show.transform, "dibu").gameObject;
  328. }
  329. return bottom;
  330. }
  331. }
  332. GameObject picture;
  333. /// <summary>
  334. /// 房间游戏对象里的照片
  335. /// </summary>
  336. public GameObject Picture
  337. {
  338. get
  339. {
  340. if (!picture)
  341. {
  342. picture = UnityUtil.GetBreadthChild<Transform>(Show.transform, "Picture").gameObject;
  343. }
  344. return picture;
  345. }
  346. }
  347. GameObject people;
  348. /// <summary>
  349. /// 房间游戏对象里的人
  350. /// </summary>
  351. public GameObject People
  352. {
  353. get
  354. {
  355. if (!people)
  356. {
  357. people = UnityUtil.GetBreadthChild<Transform>(Show.transform, "People").gameObject;
  358. }
  359. return people;
  360. }
  361. }
  362. /// <summary>
  363. /// 执行进入场景的动画
  364. /// </summary>
  365. private void effectRoom()
  366. {
  367. itemPos = this.transform.parent.TransformPoint(new Vector3(-130, 0, -400));
  368. Show.transform.parent = null;
  369. this.transform.localScale = initAV3;
  370. HomeMgr.Instance._menuListDlg.Hide();
  371. CreateSearchRoomDlg.Instance.dlg.hideDlg();
  372. Show.transform.DOScale(Show.transform.localScale * 1.5f, 1);
  373. Show.transform.DOMove(itemPos, 1).OnComplete(() =>
  374. {
  375. DontDestroyOnLoad(Show.gameObject);
  376. itemPos = FrontBG.transform.position;
  377. // Picture.transform.LeanRotateY(360, 0.5f).setOnComplete(() => {
  378. // Picture.transform.LeanRotateY(180, 0.5f).setOnComplete(() =>
  379. // {
  380. Bottom.transform.DOMoveY(-1f, 2).SetEase(Ease.InCubic);
  381. Bottom.transform.DOScale(Bottom.transform.localScale * 20, 1f).SetEase(Ease.InCubic);
  382. // Bottom.transform.DOScaleZ(Bottom.transform.localScale.z * 20, 1f);
  383. Bottom.transform.LeanRotateY(180, 1f);
  384. GameEffect.setAlpha(Bottom, 0, 2);
  385. TimerMgr.Instance.CreateTimer(() =>
  386. {
  387. Picture.transform.localEulerAngles = new Vector3(0, 0, 0);
  388. //People.transform.DOScale(People.transform.localScale * 10, 2);
  389. Picture.transform.DOScale(People.transform.localScale * 10, 2).OnComplete<Tween>(() =>
  390. {
  391. Destroy(Show);
  392. });
  393. GameEffect.setAlpha(People, 0, 0.3f);
  394. GameEffect.setAlpha(Picture, 0, 0.2f);
  395. FrontBG.SetActive(false);
  396. }, 0.5f);
  397. Picture.transform.DOScale(new Vector3(0, 0, 0), 0.5f).SetEase(Ease.InBack).OnComplete<Tween>(() => { });
  398. People.transform.DOScale(new Vector3(0, 0, 0), 0.5f).SetEase(Ease.InBack).OnComplete<Tween>(() => { });
  399. HomeMgr.Instance.LoadSence();
  400. });
  401. inID = _id;
  402. }
  403. /// <summary>
  404. /// 点击进入房间后,隐藏房间游戏对象
  405. /// </summary>
  406. public void HideItem()
  407. {
  408. if (Show.transform.parent != null)
  409. {
  410. Vector3 v3 = Show.transform.localScale;
  411. // show.transform.localScale = new Vector3(v3.x, 0, v3.z);
  412. Vector3 pv3 = Show.transform.position;
  413. // show.transform.position = new Vector3(pv3.x, pv3.y + 0.1f, pv3.z);
  414. Show.transform.DOScale(new Vector3(v3.x, 0, v3.z), 0.3f).SetDelay<Tween>(RoomIndex * 0.3f * 0.5f).SetEase<Tween>(Ease.InBack).OnKill<Tween>(() =>
  415. {
  416. Show.transform.localScale = v3;
  417. Show.SetActive(false);
  418. this.gameObject.SetActive(false);
  419. }).OnComplete<Tween>(() =>
  420. {
  421. Show.transform.localScale = v3;
  422. Show.SetActive(false);
  423. this.gameObject.SetActive(false);
  424. });
  425. }
  426. else
  427. {
  428. this.gameObject.SetActive(false);
  429. }
  430. }
  431. /// <summary>
  432. /// 显示房间游戏对象
  433. /// </summary>
  434. public void ShowItem()
  435. {
  436. if (inID != null && inID == _id)
  437. {
  438. Vector3 v3 = MenuListDlg.Instance._menuUI._bezierPointGroup[RoomIndex];
  439. Vector3 v3L = this.transform.localScale;
  440. this.transform.position = itemPos;
  441. this.transform.localScale = v3L * 5f;
  442. this.transform.DOLocalMove(v3, 1);
  443. this.transform.DOScale(v3L, 1);
  444. isRoomShow = true;
  445. Show.transform.DOKill(true);
  446. inID = "None";
  447. Show.SetActive(true);
  448. //这两个参数影响是否在退出房间后,点击这个房间是否还有有放大效果
  449. //isInit = true;
  450. //isRoomShow = false;
  451. }
  452. else
  453. {
  454. isRoomShow = true;
  455. Show.transform.DOKill(true);
  456. Vector3 v3 = Show.transform.localScale;
  457. Show.transform.localScale = new Vector3(v3.x, 0, v3.z);
  458. Show.transform.DOScale(v3, 0.5f).SetDelay<Tween>(RoomIndex * 0.5f * 0.2f).SetEase<Tween>(Ease.OutBack).OnKill<Tween>(() =>
  459. {
  460. isRoomShow = false;
  461. isInit = true;
  462. Show.transform.localScale = v3;
  463. }).OnComplete<Tween>(() =>
  464. {
  465. isRoomShow = false;
  466. Show.transform.localScale = v3;
  467. isInit = true;
  468. }).OnStart<Tween>(() =>
  469. {
  470. Show.SetActive(true);
  471. });
  472. }
  473. }
  474. private void OnEnable()
  475. {
  476. if (initAV3 == Vector3.zero)
  477. initAV3 = this.transform.localScale;
  478. }
  479. /// <summary>
  480. /// 进入房间时,(跳转场景)存储数据
  481. /// </summary>
  482. /// <param name="goods"></param>
  483. /// <param name="peers"></param>
  484. /// <param name="scenes"></param>
  485. /// <param name="currentScene"></param>
  486. private void onJoinRoom(List<GoodsInfo> goods, List<Peer> peers, List<SceneConfig> scenes, SceneConfig currentScene)
  487. {
  488. effectRoom();
  489. CommonMethod.GoodsInfoList = new List<GoodsInfo>();
  490. CommonMethod.IsReceive = true;
  491. CommonMethod.HideLoading();
  492. CommonMethod.GoodsInfoList = goods;
  493. CommonMethod.PeerList = peers;
  494. CommonMethod.scenes = scenes;
  495. CommonMethod.currentScene = currentScene;
  496. CommonMethod.roomConfig = this.DataConfig.Value;
  497. if (!string.IsNullOrEmpty(this._passWord) && this._passWord != DataConfig.Value.Room_password)
  498. {
  499. CommonMethod.roomPassWord = this._passWord;
  500. }
  501. }
  502. /// <summary>
  503. /// 进入房间的初始化操作
  504. /// </summary>
  505. /// <param name="data"></param>
  506. private void onInit(JsonData data)
  507. {
  508. CommonMethod.SelfPeer(data["data"]["peerId"].ToString(), UserInfoMgr.Instance.userConfig.Nick_name);
  509. _passWord = this.DataConfig.Value.Room_password;
  510. if (string.IsNullOrEmpty( _passWord))//如果没有密码,则直接进入房间
  511. {
  512. WSHandler.Room.JoinRoom(_id, "");
  513. // effectRoom();
  514. }
  515. else//否则。。。。
  516. {
  517. // CommonMethod.HideLoading();
  518. CommonMethod.ShowPopUp(PopType.Cancel, LanguageMgr.Instance.GetMessage("1085").Message, LanguageMgr.Instance.GetMessage("1084").Message, null
  519. , LanguageMgr.Instance.GetMessage("1066").Message, () => { CanelJoinRoom(); }, LanguageMgr.Instance.GetMessage("1058").Message, true, (string pass) => { InputJoinRoom(pass); });
  520. }
  521. }
  522. /// <summary>
  523. /// 进入房间(输入密码进入)
  524. /// </summary>
  525. /// <param name="password"></param>
  526. private void InputJoinRoom(string password)
  527. {
  528. CommonMethod.ShowLoading();
  529. WSHandler.Room.JoinRoom(_id, password);
  530. if (password != "")
  531. {
  532. this._passWord = password;
  533. }
  534. }
  535. /// <summary>
  536. /// 当进入房间失败时,取消事件监听
  537. /// </summary>
  538. public void Refeshbool()
  539. {
  540. if (isClick)
  541. {
  542. isClick = false;
  543. WSHandler.Room.OnInit -= onInit;
  544. WSHandler.Room.OnJoinRoom -= onJoinRoom;
  545. WSHandler.Rtc.onRtcInit -= onRtcInit;
  546. }
  547. }
  548. /// <summary>
  549. /// 取消进入房间
  550. /// </summary>
  551. private void CanelJoinRoom()
  552. {
  553. isClick = false;
  554. WSHandler.Room.OnInit -= onInit;
  555. WSHandler.Room.OnJoinRoom -= onJoinRoom;
  556. WSHandler.Rtc.onRtcInit -= onRtcInit;
  557. WSHandler.roomCloes();
  558. }
  559. private void OnDestroy()
  560. {
  561. DispatcherBase.KeyDownDelegateUnRegister(downEvent);
  562. DispatcherBase.KeyUpDelegateUnRegister(upEvent);
  563. EventTool._displayDelete -= DisplayDeleteBtn;
  564. WSHandler.Room.OnInit -= onInit;
  565. WSHandler.Room.OnJoinRoom -= onJoinRoom;
  566. WSHandler.Rtc.onRtcInit -= onRtcInit;
  567. if (HomeProxy.Instance)
  568. {
  569. HomeProxy.Instance.DeleteRoomAction -= DeleteRoomHandler;
  570. }
  571. }
  572. /// <summary>
  573. /// 删除房间成功时的回调函数
  574. /// </summary>
  575. private void DeleteRoomHandler(int roomId)
  576. {
  577. if (!string.IsNullOrEmpty(_id))
  578. {
  579. int result = int.Parse(_id);
  580. if (roomId == result)
  581. {
  582. ConfigModel.Instance.RemoveElement(_dataConfig);//删除该数据
  583. if (HomeMgr.Instance.SelfRoomConfigList.Contains(_dataConfig.Value))
  584. {
  585. HomeMgr.Instance.SelfRoomConfigList.Remove(_dataConfig.Value);
  586. }
  587. //如果删除完数据之后,数据个数少于5,则造假一个数据
  588. if (ConfigModel.Instance.Count < 5 && HomeMgr.Instance.SelfRoomConfigList.Count < 5)
  589. {
  590. ConfigModel.Instance.AddElement(new RoomConfig("", "1", "教育", "", "", "", "", "", "", ""));
  591. HomeMgr.Instance.SelfRoomConfigList.Add(new RoomConfig("", "1", "教育", "", "", "", "", "", "", ""));
  592. }
  593. else
  594. {
  595. Debug.Log("数据个数:" + ConfigModel.Instance.Count);
  596. Debug.Log("备份个数:" + HomeMgr.Instance.SelfRoomConfigList.Count);
  597. //Debug.LogError("原始数据与备份数据不同步");
  598. }
  599. EventTool.RearrangeMethod(transform);//通知进行游戏对象和数据的移位
  600. RefreshData();//刷新数据
  601. MenuListDlg.Instance.UpdateBtn();//统一刷新所有按钮状态
  602. }
  603. }
  604. }
  605. public void OnPointerEnter(PointerEventData eventData)
  606. {
  607. if (!isHide && !isRoomShow && isInit)
  608. //LeanTween.scale(this.gameObject, initAV3 * 1.1f, 0.1f);
  609. transform.DOScale(initAV3 * 1.1f, 0.1f);
  610. }
  611. public void OnPointerExit(PointerEventData eventData)
  612. {
  613. if (!isHide && !isRoomShow && isInit)
  614. //LeanTween.scale(this.gameObject, initAV3, 0.1f);
  615. transform.DOScale(initAV3, 0.1f);
  616. }
  617. bool isDown;
  618. public void OnPointerDown(PointerEventData eventData)
  619. {
  620. isDown = true;
  621. _lastTime = Time.time;
  622. if (!isHide && !isRoomShow && isInit)
  623. //LeanTween.scale(this.gameObject, initAV3 * 0.9f, 0.1f);
  624. transform.DOScale(initAV3 * 0.9f, 0.1f);
  625. }
  626. public void OnPointerClick(PointerEventData eventData)
  627. {
  628. if (!isHide && !isRoomShow && isInit)
  629. //LeanTween.scale(this.gameObject, initAV3, 0.1f);.
  630. transform.DOScale(initAV3, 0.1f);
  631. }
  632. public void OnPointerUp(PointerEventData eventData)
  633. {
  634. }
  635. }