public static UGUIEventTrigger Get(GameObject go) { UGUIEventTrigger trigger = go.GetComponent <UGUIEventTrigger>(); if (null == trigger) { trigger = go.AddComponent <UGUIEventTrigger>(); } return(trigger); }
protected override void Awake() { UGUIEventTrigger.Get(mBorderLeft.gameObject).onEnter = (go, data) => StartCoroutine(Map.Move(MapMoveDirect.LEFT)); UGUIEventTrigger.Get(mBorderDown.gameObject).onEnter = (go, data) => StartCoroutine(Map.Move(MapMoveDirect.DOWN)); UGUIEventTrigger.Get(mBorderRight.gameObject).onEnter = (go, data) => StartCoroutine(Map.Move(MapMoveDirect.RIGHT)); UGUIEventTrigger.Get(mBorderUp.gameObject).onEnter = (go, data) => StartCoroutine(Map.Move(MapMoveDirect.UP)); UGUIEventTrigger.Get(mBorderUp.gameObject).onExit = go => Map.StopMove(); UGUIEventTrigger.Get(mBorderDown.gameObject).onExit = go => Map.StopMove(); UGUIEventTrigger.Get(mBorderRight.gameObject).onExit = go => Map.StopMove(); UGUIEventTrigger.Get(mBorderLeft.gameObject).onExit = go => Map.StopMove(); }
public override void OnOpen(GameObject obj) { base.OnOpen(obj); coreInitPos = coreTrans.transform.position; bgTransInitPos = bgTrans.transform.position; UGUIEventTrigger.Get(dragArea.gameObject).AddEventListener(EventTriggerType.Drag, OnDrag); UGUIEventTrigger.Get(dragArea.gameObject).AddEventListener(EventTriggerType.PointerDown, BeginDrag); UGUIEventTrigger.Get(dragArea.gameObject).AddEventListener(EventTriggerType.PointerUp, EndDrag); }
// Use this for initialization void Start() { UGUIEventTrigger.Get(icon.gameObject).AddEventListener(EventTriggerType.PointerClick, OnClick); //BagManager.getInstance ().showAll (); }
protected override void Awake() { mIsMoveSelect = false; LandformLayer.gameObject.SetActive(true); MouseEventLayer.gameObject.SetActive(false); //todo:据实际建筑类型控制选择点、线、片 UGUIEventTrigger.Get(MouseEventLayer.gameObject).onPointerDown = (go, eventData) => { //MyLogger.Debug("onPointerDown p:" + screenPoint2LocalPoint(eventData.position)); //开始区域或者目标选择 mPointDownPosition = screenPoint2LocalPoint(eventData.position); //mDragRect.rectTransform.localPosition = mPointDownPosition; createPreSelectTiles(getPointDownTileItem()); }; UGUIEventTrigger.Get(MouseEventLayer.gameObject).onDrag = (go, eventData) => { mIsMoveSelect = false; //划定区域 隐藏 // var currentMousePosition = screenPoint2LocalPoint(eventData.position); // var scaleX = 1; // var scaleY = 1; // mDragRect.rectTransform.sizeDelta = new Vector2(Mathf.Abs(currentMousePosition.x - mPointDownPosition.x), Mathf.Abs(currentMousePosition.y - mPointDownPosition.y)); // if (currentMousePosition.x - mPointDownPosition.x < 0) // scaleX = -1; // if (currentMousePosition.y - mPointDownPosition.y > 0) // scaleY = -1; // mDragRect.rectTransform.localScale = new Vector3(scaleX, scaleY, 1); // if (!mDragRect.gameObject.activeSelf) // mDragRect.gameObject.SetActive(true); //标示选中区域 var tileItems = getRectTileItems(screenPoint2LocalPoint(eventData.position)); createPreSelectTiles(tileItems); }; UGUIEventTrigger.Get(MouseEventLayer.gameObject).onPointerUp = (go, eventData) => { mIsMoveSelect = true; StartCoroutine(checkMouseSelect()); //Logger.Debug("onPointerUp p:" + screenPoint2LocalPoint(eventData.position)); //mDragRect.gameObject.SetActive(false); //创建建造命令并执行 if (mPreSelectTileItems.Count > 0) { var buildCommand = BuildCommandFactory.Create(Controller, mPreSelectTileItems, mCurrentBuildingsInfo); if (buildCommand != null) { if (buildCommand.Prepare()) { buildCommand.Execute(); } } PreSelectLayer.DestroyChildren(); } else { MyLogger.Debug("no target"); } }; }