/// <summary> /// Hide the PlayerStatusBar on mouse inactivity /// </summary> /// <param name="sender">Sender object</param> /// <param name="e">EventArgs</param> private void OnInactivity(object sender, EventArgs e) { // remember mouse position InactiveMousePosition = Mouse.GetPosition(Container); if (!PlayerStatusBar.Opacity.Equals(1.0)) { return; } var opacityAnimation = new DoubleAnimationUsingKeyFrames { Duration = new Duration(TimeSpan.FromSeconds(0.5)), KeyFrames = new DoubleKeyFrameCollection { new EasingDoubleKeyFrame(1.0, KeyTime.FromPercent(0)), new EasingDoubleKeyFrame(0.0, KeyTime.FromPercent(1.0), new PowerEase { EasingMode = EasingMode.EaseInOut }) } }; PlayerStatusBar.BeginAnimation(OpacityProperty, opacityAnimation); DispatcherHelper.CheckBeginInvokeOnUI(async() => { await Task.Delay(500); PlayerStatusBar.Visibility = Visibility.Hidden; }); }
/// <summary> /// Hide the PlayerStatusBar on mouse inactivity /// </summary> /// <param name="sender">Sender object</param> /// <param name="e">EventArgs</param> private void OnInactivity(object sender, EventArgs e) { if (InactiveMousePosition == Mouse.GetPosition(Container)) { var window = System.Windows.Window.GetWindow(this); if (window != null) { window.Cursor = Cursors.None; } var opacityAnimation = new DoubleAnimationUsingKeyFrames { Duration = new Duration(TimeSpan.FromSeconds(0.5)), KeyFrames = new DoubleKeyFrameCollection { new EasingDoubleKeyFrame(0.0, KeyTime.FromPercent(1d), new PowerEase { EasingMode = EasingMode.EaseInOut }) } }; PlayerStatusBar.BeginAnimation(OpacityProperty, opacityAnimation); UpperPanel.BeginAnimation(OpacityProperty, opacityAnimation); } InactiveMousePosition = Mouse.GetPosition(Container); }
public static void SendTurnCalculation(Packet _packet) { int _cardCount = _packet.ReadInt(); int _playerHealth = _packet.ReadInt(); List <int> _allCard = new List <int>(); for (int i = 1; i <= GameManager.players.Count; i++) { int _remainHealth = _packet.ReadInt(); if (_remainHealth <= 0) { Destroy(GameManager.players[i].gameObject); } for (int j = 0; j < GameManager.players.Count; j++) { PlayerStatusBar _temp = ArenaUIManager.instance.turnOrderBar.transform.GetChild(j).gameObject.GetComponent <PlayerStatusBar>(); if (_temp.id == i) { _temp.heartDisplay(_remainHealth); } } } for (int i = 0; i < _cardCount; i++) { int _cardID = _packet.ReadInt(); _allCard.Add(_cardID); } ArenaUIManager.instance.SetDamageBanner(_allCard); }
/// <summary> /// Show the PlayerStatusBar on mouse activity /// </summary> /// <param name="sender">Sender object</param> /// <param name="e">EventArgs</param> private async void OnActivity(object sender, PreProcessInputEventArgs e) { await MouseActivitySemaphore.WaitAsync(); if (e.StagingItem == null) { MouseActivitySemaphore.Release(); return; } var inputEventArgs = e.StagingItem.Input; if (!(inputEventArgs is MouseEventArgs) && !(inputEventArgs is KeyboardEventArgs)) { MouseActivitySemaphore.Release(); return; } var mouseEventArgs = e.StagingItem.Input as MouseEventArgs; // no button is pressed and the position is still the same as the application became inactive if (mouseEventArgs?.LeftButton == MouseButtonState.Released && mouseEventArgs.RightButton == MouseButtonState.Released && mouseEventArgs.MiddleButton == MouseButtonState.Released && mouseEventArgs.XButton1 == MouseButtonState.Released && mouseEventArgs.XButton2 == MouseButtonState.Released && InactiveMousePosition == mouseEventArgs.GetPosition(Container)) { MouseActivitySemaphore.Release(); return; } var opacityAnimation = new DoubleAnimationUsingKeyFrames { Duration = new Duration(TimeSpan.FromSeconds(0.1)), KeyFrames = new DoubleKeyFrameCollection { new EasingDoubleKeyFrame(1.0, KeyTime.FromPercent(1.0), new PowerEase { EasingMode = EasingMode.EaseInOut }) } }; PlayerStatusBar.BeginAnimation(OpacityProperty, opacityAnimation); UpperPanel.BeginAnimation(OpacityProperty, opacityAnimation); var window = System.Windows.Window.GetWindow(this); if (window != null) { window.Cursor = Cursors.Arrow; } await Task.Delay(TimeSpan.FromSeconds(1)); MouseActivitySemaphore.Release(); }
/// <summary> /// Show the PlayerStatusBar on mouse activity /// </summary> /// <param name="sender">Sender object</param> /// <param name="e">EventArgs</param> private async void OnActivity(object sender, PreProcessInputEventArgs e) { if (_isMouseActivityCaptured) { return; } _isMouseActivityCaptured = true; var inputEventArgs = e.StagingItem.Input; if (!(inputEventArgs is MouseEventArgs) && !(inputEventArgs is KeyboardEventArgs)) { _isMouseActivityCaptured = false; return; } var mouseEventArgs = e.StagingItem.Input as MouseEventArgs; // no button is pressed and the position is still the same as the application became inactive if (mouseEventArgs?.LeftButton == MouseButtonState.Released && mouseEventArgs.RightButton == MouseButtonState.Released && mouseEventArgs.MiddleButton == MouseButtonState.Released && mouseEventArgs.XButton1 == MouseButtonState.Released && mouseEventArgs.XButton2 == MouseButtonState.Released && InactiveMousePosition == mouseEventArgs.GetPosition(Container)) { _isMouseActivityCaptured = false; return; } var opacityAnimation = new DoubleAnimationUsingKeyFrames { Duration = new Duration(TimeSpan.FromSeconds(0.1)), KeyFrames = new DoubleKeyFrameCollection { new EasingDoubleKeyFrame(1.0, KeyTime.FromPercent(1.0), new PowerEase { EasingMode = EasingMode.EaseInOut }) } }; PlayerStatusBar.BeginAnimation(OpacityProperty, opacityAnimation); await Task.Delay(TimeSpan.FromSeconds(1)); _isMouseActivityCaptured = false; }
/// <summary> /// Hide the PlayerStatusBar on mouse inactivity /// </summary> /// <param name="sender">Sender object</param> /// <param name="e">EventArgs</param> private void OnInactivity(object sender, EventArgs e) { InactiveMousePosition = Mouse.GetPosition(Container); var opacityAnimation = new DoubleAnimationUsingKeyFrames { Duration = new Duration(TimeSpan.FromSeconds(0.5)), KeyFrames = new DoubleKeyFrameCollection { new EasingDoubleKeyFrame(0.0, KeyTime.FromPercent(1d), new PowerEase { EasingMode = EasingMode.EaseInOut }) } }; PlayerStatusBar.BeginAnimation(OpacityProperty, opacityAnimation); }
/// <summary> /// Show the PlayerStatusBar on mouse activity /// </summary> /// <param name="sender">Sender object</param> /// <param name="e">EventArgs</param> private void OnActivity(object sender, PreProcessInputEventArgs e) { var inputEventArgs = e.StagingItem.Input; if (inputEventArgs is MouseEventArgs || inputEventArgs is KeyboardEventArgs) { if (e.StagingItem.Input is MouseEventArgs) { var mouseEventArgs = (MouseEventArgs)e.StagingItem.Input; // no button is pressed and the position is still the same as the application became inactive if (mouseEventArgs.LeftButton == MouseButtonState.Released && mouseEventArgs.RightButton == MouseButtonState.Released && mouseEventArgs.MiddleButton == MouseButtonState.Released && mouseEventArgs.XButton1 == MouseButtonState.Released && mouseEventArgs.XButton2 == MouseButtonState.Released && InactiveMousePosition == mouseEventArgs.GetPosition(Container)) { return; } } if (!PlayerStatusBar.Opacity.Equals(0.0)) { return; } var opacityAnimation = new DoubleAnimationUsingKeyFrames { Duration = new Duration(TimeSpan.FromSeconds(0.1)), KeyFrames = new DoubleKeyFrameCollection { new EasingDoubleKeyFrame(0.0, KeyTime.FromPercent(0)), new EasingDoubleKeyFrame(1.0, KeyTime.FromPercent(1.0), new PowerEase { EasingMode = EasingMode.EaseInOut }) } }; PlayerStatusBar.BeginAnimation(OpacityProperty, opacityAnimation); PlayerStatusBar.Visibility = Visibility.Visible; } }
private void Attack() { float distance = Vector3.Distance(target.transform.position, transform.position); //Menentukan arah serangan Vector3 dir = (target.transform.position - transform.position).normalized; float direction = Vector3.Dot(dir, transform.forward); Debug.Log(direction); if (distance < 2.2f) { if (direction > 0) { PlayerStatusBar eh = (PlayerStatusBar)target.GetComponent("PlayerStatusBar"); eh.AddjustCurrentHealth(-10); } } }