Ejemplo n.º 1
0
        private void BombAdd(string name, int x, int y)
        {
            BombClass b = new BombClass(name, GameData.bombtimer, ImageResourcesClass.bombimagesource, x, y);

            bombs.Add(b);
            b.TimeIsUpEvent          += new BombClass.TimeIsUpDelegate(b_TimeIsUpEvent);
            b.exp.ExplosionOverEvent += new ExplosionClass.ExplosionOverDelegate(exp_ExplosionOverEvent);
            b.StartTimer();

            canvas1.Children.Add(b.BombImage);

            GameData.GameMatrixItemAdd(x, y, Enums.FieldTypes.bomb);
        }
Ejemplo n.º 2
0
        //private void BombRemove(string bcImageName, int left, int top)
        private void BombRemove(BombClass bc)
        {
            //bombakép eltávolítása
            canvas1.Children.Remove(bc.BombImage);

            //robbanási képek megjelenítése
            canvas1.Children.Add(bc.GetExplosionCenter());
            foreach (Image item in bc.GetExplosionPics(Enums.DirectionEnum.down))
            {
                canvas1.Children.Add(item);
            }
            foreach (Image item in bc.GetExplosionPics(Enums.DirectionEnum.left))
            {
                canvas1.Children.Add(item);
            }
            foreach (Image item in bc.GetExplosionPics(Enums.DirectionEnum.right))
            {
                canvas1.Children.Add(item);
            }
            foreach (Image item in bc.GetExplosionPics(Enums.DirectionEnum.up))
            {
                canvas1.Children.Add(item);
            }


            if (removableWalls.Count > 0)
            {
                //az eltávolítható falak kiszedése
                List <RemovableWallClass> rwp = (from item in bc.exp.explodePositions
                                                 from item2 in removableWalls
                                                 where item.X == item2.Left && item.Y == item2.Top
                                                 select item2).ToList();


                foreach (RemovableWallClass item in rwp)
                {
                    canvas1.Children.Remove(item.image);
                    GameData.GameMatrixItemAdd(item.Left, item.Top, Enums.FieldTypes.basic);
                }

                for (int i = rwp.Count - 1; i >= 0; i--)
                {
                    removableWalls.Remove(rwp[i]);
                }
            }
        }
Ejemplo n.º 3
0
 void b_TimeIsUpEvent(BombClass bc)
 {
     //MainData.BmClient.BombRemoveAsync(bc.BombImage.Name, bc.Left, bc.Top, GameData.opponent.Name);
     //BombRemove(bc.BombImage.Name,bc.Left,bc.Top);
     BombRemove(bc);
 }