public Zombies() { image = Resources.Zombie; count = image.GetFrameCount(FrameDimension.Time); location = new Point(0, 0); Lifezombie = 200; alive = true; down = false; pz = true; name = zombies.普通僵尸; eat = false; power = 50; slow = false; ice = false; coolStarttime = 0; }
private void timer1_Tick(object sender, EventArgs e) { for (int m = 0; m < list_balls.Count; m++) { for (int n = 0; n < list_zombies.Count; n++) { if (list_balls[m].use == 1 & b != n & list_zombies[n].life == 0 & list_balls[m].b_x >= list_zombies[n].b_x & list_balls[m].b_x <= list_zombies[n].b_x + 63 & list_balls[m].b_y > list_zombies[n].b_y & list_balls[m].b_y <= list_zombies[n].b_y + 72) { list_zombies[n].life = -1; score1++; b = n; list_zombies[n].v_x = 0; list_zombies[n].v_y = 0; list_balls[m].use = 0; } } } if (time % zt == 0) { zombies tmp = new zombies(); int a = rd.Next(1, 4); tmp.type = a; if (a == 1) { tmp.b_x = pictureBox1.Width; tmp.b_y = pictureBox1.Height - 150; tmp.v_x = -5; tmp.v_y = 0; tmp.life = 0; } else if (a == 2) { tmp.b_x = pictureBox1.Width; tmp.b_y = pictureBox1.Height - 225; tmp.v_x = -4; tmp.v_y = 0; tmp.life = 0; } else { tmp.b_x = pictureBox1.Width; tmp.b_y = pictureBox1.Height - 400; tmp.v_x = -5; tmp.v_y = -1; tmp.life = 0; } list_zombies.Add(tmp); } if (mylife == 0) { timer1.Stop(); MessageBox.Show("GAME OVER !!!"); this.Dispose(); } else { for (int i = 0; i < list_balls.Count; i++) { list_balls[i].b_x += list_balls[i].v_x; list_balls[i].b_y -= list_balls[i].v_y; } for (int j = 0; j < list_zombies.Count; j++) { list_zombies[j].b_x += list_zombies[j].v_x; list_zombies[j].b_y -= list_zombies[j].v_y; } Refresh(); time++; } for (int z = 0; z < list_zombies.Count; z++) { if (list_zombies[z].b_x <= 0 & list_zombies[z].b_x >= -5) { mylife--; } } if (zt >= 15) { if (time % 10 == 0) { zt--; } } label4.Text = ": " + score1; }