关于一个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记录之前按键状态)则,不响应,上述代码有个!号注意意义,表示为按下空格且弹起