コード例 #1
0
        /// <summary>
        /// Vytvoří a spustí let projektilu
        /// </summary>
        public void fire(bool PgoesRight)
        {
            //endpProjectileMovement();
            plProjectiles.Add(new Image());
            firedFromRight = PgoesRight;                                                                               //pozice vystřelení

            plProjectiles[i].Source = new BitmapImage(new Uri("pack://application:,,,/images/projectiles/arrow.png")); //obrázek
            plProjectiles[i].Width  = 50;
            plProjectiles[i].RenderTransformOrigin = new Point(0.5, 0.5);


            firingL = Convert.ToInt32(c.plRect.Left);
            firingT = Convert.ToInt32(c.plRect.Top);

            //nstavení prvůtního  výstřelu
            if (!firedFromRight)
            {
                Canvas.SetLeft(plProjectiles[i], firingL + 50 + 1 * 8);
            }
            else
            {
                Canvas.SetLeft(plProjectiles[i], firingL + 1 * 8);
            }
            Canvas.SetTop(plProjectiles[i], firingT + 30);

            //vložení střely do canvasu
            fight_canvas.Children.Add(plProjectiles[i]);

            //nastavení spěru projektilu (graficky)
            if (firedFromRight)
            {
                interact.faceLeft(plProjectiles[i]);
            }
            else
            {
                interact.faceRight(plProjectiles[i]);
            }

            //spustí let
            playerPrFlight start = new playerPrFlight(firedFromRight, i, firingL);

            start.Start();
            i++;
        }
コード例 #2
0
        public void fire(bool goesRight) //výstřel
        {
            if (c.enFireUnblocked)
            {
                //spustí omezení střel
                c.enFireDelay.Start();
                endpProjectileMovement();

                enemyProjectile.Source = c.enemy.ProjectileImg;
                enemyProjectile.Width  = 50;
                enemyProjectile.RenderTransformOrigin = new Point(0.5, 0.5);

                firedFromRight = goesRight;

                enFiringL = Convert.ToInt32(Canvas.GetLeft(enemyControl));
                enFiringT = Convert.ToInt32(Canvas.GetTop(enemyControl));

                if (!goesRight)
                {
                    Canvas.SetLeft(enemyProjectile, enFiringL + 50 + loop * 8);
                }
                else
                {
                    Canvas.SetLeft(enemyProjectile, enFiringL - loop * 8);
                }

                Canvas.SetTop(enemyProjectile, enFiringT + 30);

                fight_canvas.Children.Add(enemyProjectile);
                if (goesRight)
                {
                    interact.faceLeft(enemyProjectile);
                }
                else
                {
                    interact.faceRight(enemyProjectile);
                }

                c.enemyProjectileMovement.Start();
                c.enFireUnblocked = false;
            }
        }