Beispiel #1
0
        private static void handle_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
        {
            _handleTransform.TranslateX += e.Delta.Translation.X;
            _handleTransform.TranslateY += e.Delta.Translation.Y;

            //RB position
            var oldPoint    = SelectedSprite.RBPoint.TransformToVisual(SelectedSprite.centerPoint).TransformPoint(ZERO_POINT);
            var oldDistance = Math.Sqrt(oldPoint.X * oldPoint.X + oldPoint.Y * oldPoint.Y);
            var oldAngle    = GetAngle(oldPoint.X, oldPoint.Y);

            //Handle position
            var newPoint    = handlePoint.TransformToVisual(SelectedSprite.centerPoint).TransformPoint(ZERO_POINT);
            var newDistance = Math.Sqrt(newPoint.X * newPoint.X + newPoint.Y * newPoint.Y);
            var newAngle    = GetAngle(newPoint.X, newPoint.Y);

            //update rotation
            var rotation_delta = newAngle - oldAngle;

            SelectedSprite.SetRotation(rotation_delta);

            //update scale
            var scale_delta = newDistance / oldDistance;

            SelectedSprite.SetScale(scale_delta);

            SelectedSprite.SyncButtonsPosition();

            e.Handled = true;
        }
Beispiel #2
0
        public void HideSelection()
        {
            if (SelectedSprite.Parent == null)
            {
                return;
            }

            SelectedSprite.AddActivity(new FadeActivity(FadeActivity.Fade.Out, TimeSpan.FromSeconds(0.33F), EaseMode.InOut, args => SelectedSprite.Detach()));
        }
 public void Dispose()
 {
     IdleSprite?.Dispose();
     IdleSelectedSprite?.Dispose();
     ForwardWalkSprite?.Dispose();
     ForwardWalkSpriteOverlay?.Dispose();
     SelectedSprite?.Dispose();
     SelectedSpriteOverlay?.Dispose();
     BackWalkSprite?.Dispose();
     BackWalkSpriteOverlay?.Dispose();
 }
Beispiel #4
0
        public void ShowSelection(Animal animal)
        {
            if (SelectedSprite.Parent != null)
            {
                SelectedSprite.Detach();
            }

            SelectedSprite.SetTexture(Assets.GetTextureCollection("animals_white")[(int)animal.Species]);
            SelectedSprite.Scale = animal.Sprite.Scale;
            SelectedSprite.SetAlpha(1.0F);

            animal.Sprite.AddChild(SelectedSprite);
        }
Beispiel #5
0
 private static void removeButton_Tapped(object sender, TappedRoutedEventArgs e)
 {
     SelectedSprite.RaiseSpriteChanged();
     RemoveSelectedSprite();
 }
Beispiel #6
0
 static void handle_ManipulationCompleted(object sender, ManipulationCompletedRoutedEventArgs e)
 {
     handleDrag = false;
     SelectedSprite.EnsureMinimumScale();
     SelectedSprite.RaiseSpriteChanged();
 }