Beispiel #1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.Main);

            View viewSpring = FindViewById <View>(Resource.Id.view_spring);
            View viewFling  = FindViewById <View>(Resource.Id.view_fling);

            viewSpring.Click += (o, e) =>
            {
                SpringAnimation springAnim = new SpringAnimation(viewSpring, DynamicAnimation.TranslationY, 0);
                springAnim.Spring.SetStiffness(SpringForce.StiffnessLow);
                springAnim.Spring.SetDampingRatio(SpringForce.DampingRatioHighBouncy);
                springAnim.SetStartVelocity(DpToPx(-2000));
                springAnim.Start();
            };

            viewFling.Click += (o, e) =>
            {
                FlingAnimation flingAnim = new FlingAnimation(viewFling, DynamicAnimation.TranslationY);
                flingAnim.SetStartVelocity(DpToPx(shouldFlingUpwards ? -1500 : 1500));
                //flingAnim.SetFriction(2);
                flingAnim.Start();
                shouldFlingUpwards = !shouldFlingUpwards;
            };
        }
Beispiel #2
0
 public Spring(Texture2D texture, Rectangle rectangle) : base(null, rectangle)
 {
     isPlayerOn        = false;
     timer             = 0;
     colisionRectangle = new Rectangle(rectangle.X, rectangle.Y + rectangle.Height / 2, rectangle.Width, rectangle.Height / 2);
     animation         = new SpringAnimation(texture, rectangle);
 }
        private void StartSpringsButtonClick(object sender, EventArgs e)
        {
            var springAnimation = new SpringAnimation(_buddyImageView, DynamicAnimation.TranslationY, finalPosition: 0);

            springAnimation.Spring.SetStiffness(SpringForce.StiffnessLow);
            springAnimation.Spring.SetDampingRatio(SpringForce.DampingRatioHighBouncy);
            springAnimation.SetStartVelocity(TranslateDpToPx(dp: -1000));
            springAnimation.Start();
        }
        private void SecondSolution()
        {
            //Similar to first solution but uses a Spring Animator.

            VectorDrawable avd = (VectorDrawable)this.GetDrawable(Resource.Drawable.Needle);

            rotateAnim = new SpringAnimation(secondSolution, DynamicAnimation.Rotation, 270);
            rotateAnim.Spring.SetStiffness(SpringForce.StiffnessLow);
            rotateAnim.SetStartVelocity(50);
            secondSolution.SetImageDrawable(avd);
        }
Beispiel #5
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            FindViewById(Android.Resource.Id.Content).SystemUiVisibility =
                (StatusBarVisibility)(SystemUiFlags.LayoutStable | SystemUiFlags.LayoutFullscreen | SystemUiFlags.HideNavigation);
            stiffness       = FindViewById <SeekBar>(Resource.Id.stiffness);
            damping         = FindViewById <SeekBar>(Resource.Id.damping);
            velocityTracker = VelocityTracker.Obtain();
            View box = FindViewById(Resource.Id.box);

            box.Touch += (sender, args) =>
            {
                switch (args.Event.Action)
                {
                case MotionEventActions.Down:
                    downX = args.Event.GetX();
                    downY = args.Event.GetY();
                    velocityTracker.AddMovement(args.Event);
                    break;

                case MotionEventActions.Move:
                    box.TranslationX = args.Event.GetX() - downX;
                    box.TranslationY = args.Event.GetY() - downY;
                    velocityTracker.AddMovement(args.Event);
                    break;

                case MotionEventActions.Up:
                case MotionEventActions.Cancel:
                    velocityTracker.ComputeCurrentVelocity(1000);
                    if (box.TranslationX != 0)
                    {
                        SpringAnimation animX = new SpringAnimation(box, DynamicAnimation.TranslationX, 0);
                        animX.Spring.SetStiffness(Stiffness);
                        animX.Spring.SetDampingRatio(Damping);
                        animX.SetStartVelocity(velocityTracker.XVelocity);
                        animX.Start();
                    }
                    if (box.TranslationY != 0)
                    {
                        SpringAnimation animY = new SpringAnimation(box, DynamicAnimation.TranslationY, 0);
                        animY.Spring.SetStiffness(Stiffness);
                        animY.Spring.SetDampingRatio(Damping);
                        animY.SetStartVelocity(velocityTracker.YVelocity);
                        animY.Start();
                    }
                    velocityTracker.Clear();
                    break;
                }
            };
        }
Beispiel #6
0
        public void ChartClick(object sender, TouchEventArgs e)
        {
            var flingAnimationX = new SpringAnimation(ViewMainChart, DynamicAnimation.ScaleX, 0);
            var flingAnimationY = new SpringAnimation(ViewMainChart, DynamicAnimation.ScaleY, 0);

            if (e.Event.Action == MotionEventActions.Down)
            {
                flingAnimationX.AnimateToFinalPosition(0.98f);
                flingAnimationY.AnimateToFinalPosition(0.98f);
                flingAnimationX.Start();
                flingAnimationY.Start();
                return;
            }

            flingAnimationX.AnimateToFinalPosition(1f);
            flingAnimationY.AnimateToFinalPosition(1f);
            flingAnimationX.Start();
            flingAnimationY.Start();

            if (e.Event.Action == MotionEventActions.Move)
            {
                if (e.Event.PointerCount == 2)
                {
                    var x = e.Event.GetX(0) - e.Event.GetX(1);
                    var y = e.Event.GetY(0) - e.Event.GetY(1);

                    var distanceOld = Math.Sqrt(Math.Pow(HistoricalX, 2) + Math.Pow(HistoricalY, 2));
                    var distanceNew = Math.Sqrt(Math.Pow(x, 2) + Math.Pow(y, 2));

                    var min   = Settings.MinNumberOfStatistics;
                    var max   = Settings.MaxNumberOfStatistics;
                    var count = ViewModel.AmountOfStatistics;

                    if (distanceOld > distanceNew && count < max && count < ViewModel.Database.Count)
                    {
                        CreateMainChart(ViewModel.AmountOfStatistics += 1,
                                        min + ViewModel.AmountOfStatistics % (ViewModel.AmountOfStatistics / min * min) /
                                        (ViewModel.AmountOfStatistics / min));
                    }

                    if (distanceOld < distanceNew && count > min)
                    {
                        CreateMainChart(ViewModel.AmountOfStatistics -= 1,
                                        min + ViewModel.AmountOfStatistics % (ViewModel.AmountOfStatistics / min * min) /
                                        (ViewModel.AmountOfStatistics / min));
                    }

                    HistoricalX = x;
                    HistoricalY = y;
                }
            }
        }
Beispiel #7
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.activity_main);

            View loginButton    = FindViewById <Button>(Resource.Id.loginButton);
            View registerButton = FindViewById <Button>(Resource.Id.registerButton);


            loginButton.Click += (o, e) =>
            {
                _LoginPressed = true;
                _springAnim   = new SpringAnimation(loginButton, DynamicAnimation.TranslationY, 0);
                _springAnim.Spring.SetStiffness(SpringForce.StiffnessVeryLow);
                _springAnim.Spring.SetDampingRatio(SpringForce.DampingRatioLowBouncy);
                _springAnim.SetStartVelocity(-300);
                _springAnim.Start();

                Thread thread = new Thread(delegate()
                {
                    while (_springAnim.IsRunning)
                    {
                        Thread.Sleep(50);
                    }

                    Intent intent = new Intent(this, typeof(LoginActivity));
                    StartActivity(intent);
                });
                thread.Start();
            };

            registerButton.Click += delegate
            {
                _springAnim = new SpringAnimation(registerButton, DynamicAnimation.TranslationY, 0);
                _springAnim.Spring.SetStiffness(SpringForce.StiffnessVeryLow);
                _springAnim.Spring.SetDampingRatio(SpringForce.DampingRatioLowBouncy);
                _springAnim.SetStartVelocity(300);
                _springAnim.Start();

                Thread thread = new Thread(delegate()
                {
                    while (_springAnim.IsRunning)
                    {
                        Thread.Sleep(50);
                    }

                    Intent intent = new Intent(this, typeof(RegisterActivity));
                    StartActivity(intent);
                });
                thread.Start();
            };
        }
Beispiel #8
0
        public static void SelectDictionaryClick(object sender, EventArgs e)
        {
            var image = sender as ImageView;

            Dictionaries.Selected($"{image.Tag}", $"{DataBase.TableName}");
            Enum.TryParse($"{image.Tag}", out TableName name);
            DataBase.TableName = name;
            var Animation = new SpringAnimation(image, DynamicAnimation.Rotation, 0);

            Animation.Spring.SetStiffness(SpringForce.StiffnessMedium);
            Animation.SetStartVelocity(500);
            Animation.Start();
        }
Beispiel #9
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            SetContentView(Resource.Layout.gameplay);
            var    Hp         = FindViewById <TextView>(Resource.Id.Hp);
            var    HpPoint    = FindViewById <TextView>(Resource.Id.HPoint);
            var    Money      = FindViewById <TextView>(Resource.Id.Money);
            var    MoneyPoint = FindViewById <TextView>(Resource.Id.MoneyPoint);
            var    LeftBtn    = FindViewById <ImageButton>(Resource.Id.Left);
            var    RightBtn   = FindViewById <ImageButton>(Resource.Id.Right);
            var    Ship1      = FindViewById <ImageView>(Resource.Id.ShipLv1);
            var    Enyme1     = FindViewById <ImageView>(Resource.Id.Enyme1);
            var    Enyme2     = FindViewById <ImageView>(Resource.Id.Enyme2);
            var    Enyme3     = FindViewById <ImageView>(Resource.Id.Enyme3);
            var    midbull    = FindViewById <ImageView>(Resource.Id.midbull);
            var    Count      = 400;
            var    MoneyThis  = 0;
            Random rnd        = new Random();
            int    spawnx1    = rnd.Next(0, 2);
            int    spawnx2    = rnd.Next(2, 4);
            int    spawnx3    = rnd.Next(4, 5);

            int[] PositonX  = new int[] { 0, 200, 400, 600, 800 };
            int[] PositonY  = new int[] { 0, 200, 400, 600 };
            int   spawnx11  = PositonX[spawnx1];
            int   spawnx21  = PositonX[spawnx2];
            int   spawnx31  = PositonX[spawnx3];
            int   spawnx111 = spawnx11;
            int   spawnx211 = spawnx21;
            int   spawnx311 = spawnx31;

            Hp.Visibility         = Android.Views.ViewStates.Visible;
            HpPoint.Visibility    = Android.Views.ViewStates.Visible;
            Money.Visibility      = Android.Views.ViewStates.Visible;
            MoneyPoint.Visibility = Android.Views.ViewStates.Visible;
            LeftBtn.Visibility    = Android.Views.ViewStates.Visible;
            RightBtn.Visibility   = Android.Views.ViewStates.Visible;
            Ship1.Visibility      = Android.Views.ViewStates.Visible;
            Enyme1.Visibility     = Android.Views.ViewStates.Visible;
            Enyme2.Visibility     = Android.Views.ViewStates.Visible;
            Enyme3.Visibility     = Android.Views.ViewStates.Visible;
            Enyme1.SetX(spawnx11);
            Enyme2.SetX(spawnx21);
            Enyme3.SetX(spawnx31);
            string dbpath = Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "dbgame.db3");
            var    db     = new SQLiteConnection(dbpath);

            LeftBtn.Click += (e, o) =>
            {
                Count -= 200;
                Ship1.SetX(Count);
                midbull.SetX(Count - 50);
                midbull.Visibility = Android.Views.ViewStates.Visible;
                SpringAnimation midbullx = new SpringAnimation(midbull, DynamicAnimation.TranslationY, -200);
                midbullx.Spring.SetStiffness(SpringForce.StiffnessLow);
                midbullx.Spring.SetDampingRatio(SpringForce.DampingRatioHighBouncy);
                midbullx.SetStartVelocity(DpToPx(-4000));
                midbullx.Start();

                if (Count == spawnx111)
                {
                    MoneyThis += 100;
                    int MoneyPoints = MoneyThis;
                    MoneyPoint.Text   = MoneyPoints.ToString();
                    Enyme1.Visibility = Android.Views.ViewStates.Invisible;
                    spawnx111         = -1000;
                }
                else if (Count == spawnx211)
                {
                    MoneyThis += 100;
                    int MoneyPoints = MoneyThis;
                    MoneyPoint.Text   = MoneyPoints.ToString();
                    Enyme2.Visibility = Android.Views.ViewStates.Invisible;
                    spawnx211         = -1000;
                }
                else if (Count == spawnx311)
                {
                    MoneyThis += 100;
                    int MoneyPoints = MoneyThis;
                    MoneyPoint.Text   = MoneyPoints.ToString();
                    Enyme3.Visibility = Android.Views.ViewStates.Invisible;
                    spawnx311         = -1000;
                }
                else if (Count != spawnx111 && Count != spawnx211 && Count != spawnx311 && MoneyThis >= 300)
                {
                    Android.App.AlertDialog.Builder alertDilog = new Android.App.AlertDialog.Builder(this);

                    alertDilog.SetTitle("Game End");
                    alertDilog.SetMessage("Do you want To Exit");
                    alertDilog.SetNeutralButton("Yes", delegate
                    {
                        FinishAffinity();
                    });
                    alertDilog.SetPositiveButton("No", delegate
                    {
                        var gameend = new Intent(this, typeof(MainActivity));
                        StartActivity(gameend);
                    });
                    alertDilog.Show();
                    gamedata1 data = new gamedata1(1, "300");
                    db.Update(data);
                }
            };
            RightBtn.Click += (e, o) =>
            {
                Count += 200;
                Ship1.SetX(Count);
                midbull.SetX(Count - 50);
                midbull.Visibility = Android.Views.ViewStates.Visible;
                SpringAnimation midbullx = new SpringAnimation(midbull, DynamicAnimation.TranslationY, -200);
                midbullx.Spring.SetStiffness(SpringForce.StiffnessLow);
                midbullx.Spring.SetDampingRatio(SpringForce.DampingRatioHighBouncy);
                midbullx.SetStartVelocity(DpToPx(-4000));
                midbullx.Start();
                if (Count == spawnx111)
                {
                    MoneyThis += 100;
                    int MoneyPoints = MoneyThis;
                    MoneyPoint.Text   = MoneyPoints.ToString();
                    Enyme1.Visibility = Android.Views.ViewStates.Invisible;
                    spawnx111         = -1000;
                }
                else if (Count == spawnx211)
                {
                    MoneyThis += 100;
                    int MoneyPoints = MoneyThis;
                    MoneyPoint.Text   = MoneyPoints.ToString();
                    Enyme2.Visibility = Android.Views.ViewStates.Invisible;
                    spawnx211         = -1000;
                }
                else if (Count == spawnx311)
                {
                    MoneyThis += 100;
                    int MoneyPoints = MoneyThis;
                    MoneyPoint.Text   = MoneyPoints.ToString();
                    Enyme3.Visibility = Android.Views.ViewStates.Invisible;
                    spawnx311         = -1000;
                }
                else if (Count != spawnx111 && Count != spawnx211 && Count != spawnx311 && MoneyThis >= 300)
                {
                    Android.App.AlertDialog.Builder alertDilog = new Android.App.AlertDialog.Builder(this);

                    alertDilog.SetTitle("Game End");
                    alertDilog.SetMessage("Do you want To Exit");
                    alertDilog.SetNeutralButton("Yes", delegate
                    {
                        FinishAffinity();
                    });
                    alertDilog.SetPositiveButton("No", delegate
                    {
                        var gameend = new Intent(this, typeof(MainActivity));
                        StartActivity(gameend);
                    });
                    alertDilog.Show();
                    gamedata1 data = new gamedata1(1, "300");
                    db.Update(data);
                }
            };

            // Create your application here
        }
 //Zakky
 private void Start()
 {
     audioSource = GetComponent <AudioSource>();
     anim        = GetComponent <SpringAnimation>();
     flag        = false;
 }