关于一个XNA小游戏的感受

此为原创,转载请注明作者和出处,谢谢!

今天刚入门级学了下XNA的2D游戏的开发,是一个打飞机的游戏。感受颇深!首先写个一个单独的类,这个类包含有2D文件,速度,位置!在就是GAME1中的代码填写,其中有很多经典的算法写法,比如在游戏中的1类事物加如集合中,然后用FOREACH的方法添加,很巧妙!

下面就几个技巧点进行说明:

如果想让PC收到玩家的输入,可以通过下列代码进行。如:

KeyboardState keyboard=Keyboard.GetState();   //获得当前键盘的状态
                if (keyboard.IsKeyDown(Keys.S))     //如果输入是S键则退出
                {
                    this.Exit();
                }

另外一种情况是:如果你用空格键发射一串子弹,扩展上面代码,你会发现子弹实际只有1颗,解决方法如下:

 KeyboardState PrevKeyboardStates;  // 声明一个按键状态

 if (keyboard.IsKeyDown(Keys.Space)&&!PrevKeyboardStates.IsKeyDown(Keys.Space))
{} //这里当按下空格键时如果没有弹起(PrevKeyboardStates记录之前按键状态)则,不响应,上述代码有个!号注意意义,表示为按下空格且弹起

原文地址:https://www.cnblogs.com/315358525/p/1503005.html