public void SetPointer(LevelPointer pointer) { _pointer = pointer; LevelList.SelectedValue = pointer.LevelId; ExitX.Text = pointer.ExitX.ToString("X"); ExitY.Text = pointer.ExitY.ToString("X"); ExitAction.SelectedIndex = pointer.ExitActionType; RedrawLevel.IsChecked = pointer.RedrawsLevel; KeepObjectData.IsChecked = pointer.KeepObjects; }
public void OnPointerUp(PointerEventData eventData) { //Debug.Log(GetType() + ".OnPointerUp"); if (_selectedLevelPointer && _selectedLevelPointerId == eventData.pointerId) { //Ray touchRay = _camera.ScreenPointToRay(eventData.position); //if (_selectedLevelPointer.Collider.Raycast(touchRay, out _, 100f)) //{ //} //Debug.Log(GetType() + ".OnPointerUp: level: "+ _selectedLevelPointer.Level); _levelsScreen.ShowLevelPopup(_selectedLevelPointer.Level); _selectedLevelPointer.Sprite.color = Color.white; _selectedLevelPointer = null; _selectedLevelPointerId = int.MinValue; } }
public void OnPointerDown(PointerEventData eventData) { Ray touchRay = _camera.ScreenPointToRay(eventData.position); //Debug.Log(GetType() + ".OnPointerDown"); //RaycastHit2D hit = Physics2D.GetRayIntersection(touchRay, 100f, Layer.LevelPointersMask); if (Physics.Raycast(touchRay, out RaycastHit hit, 100f, Layer.LevelPointersMask)) { if (_selectedLevelPointer) { _selectedLevelPointer.Sprite.color = Color.white; } _selectedLevelPointer = hit.transform.parent.GetComponent<LevelPointer>(); _selectedLevelPointer.Sprite.color = Color.black; _selectedLevelPointerId = eventData.pointerId; } //Debug.DrawRay(touchRay.origin, 100f * touchRay.direction, Color.white, 5f); }