Beispiel #1
0
        private void TMDelay_Tick(object sender, EventArgs e)
        {
            //g.Clear(PNGame.BackColor);
            if (temp != null)
            {
                game.Snake.Direction = temp[temp.Count - 1];
                temp.RemoveAt(temp.Count - 1);
            }
            bool rs = game.SnakeMove(g, PNGame.BackColor, game.Map.Nodewidth, game.Map.Nodeheight);

            if (rs == false)
            {
                TMDelay.Stop();
                DialogResult d = MessageBox.Show("Game over!", "Try Again?", MessageBoxButtons.YesNo);
                if (d == DialogResult.Yes)
                {
                    NewGame();
                }
                else
                {
                    Application.Exit();
                }
            }
            if (game.Map.Nodes[game.Item.Position.X, game.Item.Position.Y].Value != 2)
            {
                game.CreatItem();
                game.Item.DrawItem(g, game.Map.Nodewidth, game.Map.Nodeheight);
                temp = game.AutoPlay();
            }
            game.Map.DrawFrame(g, new Pen(Color.Black));
            //game.Snake.DrawSnake(g, game.Map.Nodewidth, game.Map.Nodeheight);
            TMDelay.Interval = 500 / game.Snake.Body.Count;
            lbLength.Text    = "Length: " + game.Snake.Body.Count.ToString();
            LBDelayTime.Text = "DelayTime: " + TMDelay.Interval.ToString();
        }
Beispiel #2
0
 public void NewGame()
 {
     g.Clear(PNGame.BackColor);
     game     = new Game();
     game.Map = new Map(451, 901, "map1.txt");
     game.Map.DrawFrame(g, new Pen(Color.Black));
     game.Map.DrawMap(g);
     game.Snake           = new Snake(game.Map.Nodes[game.Map.Lineamount / 2, game.Map.Columnamount / 2]);
     game.Snake.Direction = 3;
     game.Snake.DrawSnake(g, game.Map.Nodewidth, game.Map.Nodeheight);
     game.CreatItem();
     game.Item.DrawItem(g, game.Map.Nodewidth, game.Map.Nodeheight);
     temp             = game.AutoPlay();
     TMDelay.Interval = 500;
     TMDelay.Enabled  = true;
     TMDelay.Start();
 }