你会如何在.NET中编写Gorillas?

时间:2009-07-19 22:58:41

标签: c# .net vb.net

我记得QuickBasic程序(名为Gorillas),其中有一只猴子会扔香蕉,我相信另一只猴子。我想在.NET中写这个来学习一些。我将如何开始这样做?

1 个答案:

答案 0 :(得分:2)

这是简单的抛射运动。互联网上有的资源。

  • 根据射弹(香蕉)的角度和速度生成路径
  • 按照路径为射弹制作动画
  • 一旦射弹与目标发生碰撞,就会使“爆炸”发生动画
  • 重新开始

您可以使用.NET控制台,因为它非常易于使用,并且可以使它“与旧版本一样”,或者您可以使用GDI +图形。要么就足够了。

这是一个通用的C#“main”来帮助您入门。 (使用时间分辨率/角度和速度进行播放。)


static void Main(string[] args)
{            
  double t = 0; // time
  double v = 25; // muzzle velocity (m/s)
  double a = (Math.PI * 35 / 180.0); // launch angle in radians            
  double h0 = 0; // initial height (m)

  while (true)
  {
    PointF pt = new PointF((float)(v * Math.Cos(a) * t), 
                           (float)(h0 + (v * Math.Sin(a) * t) - (9.8 * t * t) / 2));
    t += .01;
    if (pt.Y > Console.WindowHeight - 1)
      continue;
    if (pt.Y < 0 || pt.X < 0 || pt.X > Console.WindowWidth - 1)
      break;
    Console.SetCursorPosition((int)pt.X, Console.WindowHeight - (int)pt.Y - 1);
    Console.Write("x");                
  };

  Console.ReadLine();
}