public void Reset() { m_IsInitd = false; if (EagleEyeMap != null) { EagleEyeMap.Clear(); } RemoveCountDownTweener(); m_IsFightAIEnd = false; m_KillCount = 0; KillHeroTweens.Clear(); }
void OnRadarClick(GameObject ob) { /* * |y | | | 屏幕区域 | |------------x | (0.0) */ // 点击的屏幕位置 Vector3 touchPos = Input.mousePosition; /* * P1 P2 * * * P0 P3 */ // 雷达在屏的区域 UIWidget view = ob.GetComponent <UIWidget> (); Vector3[] p = view.worldCorners; for (int i = 0; i < p.Length; ++i) { p[i] = UICamera.currentCamera.WorldToScreenPoint(p[i]); } // 雷达在屏幕的大小 Vector2 viewSize = new Vector2(p[3].x - p[0].x, p[1].y - p[0].y); // UV Vector2 uv = new Vector2((touchPos.x - p[1].x) / viewSize.x, (touchPos.y - p[1].y) / viewSize.y); // 通过雷达UV获取世界位置 Vector3 wordPos = EagleEyeMap.GetWordPositionByUV(uv.x, uv.y); // 测试点击位置 //EagleEyeMap.AddActor(wordPos.x ,wordPos.z,20,30,"army",Color.green,false,1); // 移动相机 YQ2CameraCtrl.Single.JumpToWorldPos(wordPos.x, wordPos.z); }
protected override void OnNewInstance() { var ptzCamera = GameObject.Find("PTZCamera"); GameObject view = m_instance.FindWidget("radar_mid/radar_view"); EagleEyeMap = view.GetComponent <UIEagleEyeMap>(); EagleEyeMap.WorldCamera = ptzCamera.transform.Find("SceneryCamera").GetComponent <Camera>(); Vector2 WorldOrigin = new Vector2(); Vector2 WorldSize = new Vector2(); int mapHeight = SData_mapdata.Single.GetDataOfID(1).MapMaxRow + 5;//+ DiamondGridMap.SideSize * 2 DiamondGridMap.Grid2World(mapHeight, DiamondGridMap.SideSize, -DiamondGridMap.SideSize * 2, out WorldOrigin.x, out WorldOrigin.y); DiamondGridMap.Grid2World( mapHeight, SData_mapdata.Single.GetDataOfID(1).MapMaxColumn + DiamondGridMap.SideSize, SData_mapdata.Single.GetDataOfID(1).MapMaxRow, out WorldSize.x, out WorldSize.y ); PauseWidget = m_instance.FindWidget("pause_widget"); RadarHeroHead = m_instance.FindWidget("radar_widget/head_widget").GetComponent <UIWidget>(); var kills_widget = m_instance.FindWidget("kills_widget"); for (int i = 1; i <= 5; i++) { UIKills[i - 1] = kills_widget.transform.FindChild(i.ToString() + "kill").gameObject; } WorldSize.x -= WorldOrigin.x; WorldSize.y -= WorldOrigin.y; EagleEyeMap.WorldOrigin = WorldOrigin; EagleEyeMap.WorldSize = WorldSize; EagleEyeMap.SetWorldRectChanged(); //绑定云台相机变换事件 var posTransform = ptzCamera.GetComponent <PositionTransform>(); posTransform.OnValueChanged += OnCameraPosChanged; var rotationTransform = ptzCamera.GetComponent <RotationTransform>(); rotationTransform.OnValueChanged += OnCameraRotation; // 绑定雷达点击事件 GameObject radarView = m_instance.FindWidget("radar_widget/content/radar_mid/radar_view"); UIEventListener.Get(radarView).onClick += OnRadarClick; UIEventListener.Get(radarView).onDrag += OnRadarDrag; //连斩相关 var num_widget_txt = m_instance.FindWidget("num_widget/txt"); var tween_widget_txt = m_instance.FindWidget("tween_widget/txt"); var tween_widget = m_instance.FindWidget("tween_widget"); var combo_widget = m_instance.FindWidget("combo_widget"); HeroSelectframe = m_instance.FindWidget("content/selectframe"); var AvatarTextureObj = m_instance.FindWidget("grain"); CMAvatarTexture = AvatarTextureObj.GetComponent <UITexture>(); var cutin_widgetObj = m_instance.FindWidget("cutin_widget"); var grainfx = GameObjectExtension.FindChild(cutin_widgetObj.transform, "fx"); AvatarTextureTweens = cutin_widgetObj.GetComponents <UITweener>(); AvatarFXTweens = grainfx.GetComponents <UITweener>(); LianZhan_num_widgetLabel = num_widget_txt.GetComponent <UILabel>(); LianZhan_tween_widgetLabel = tween_widget_txt.GetComponent <UILabel>(); LianZhan_Tweens = tween_widget.GetComponents <UITweener>(); LianZhan_Tween = combo_widget.GetComponent <UITweener>(); mb_zhuiguang_fx = m_instance.FindWidget("zhuiguang_fx"); mb_zhuiguang_fx.SetActive(false); }
//相机旋转值变化 void OnCameraRotation(RotationTransform self) { EagleEyeMap.SetVisualFieldChanged(); }
//相机位置变化 void OnCameraPosChanged(PositionTransform self) { EagleEyeMap.SetVisualFieldChanged(); }