XNA ゲーム スタジオ 4.0 を使用して 2D ゲームを開発しています。「ヒーロー」スプライトで四角形のショット スプライトを発射する必要があります。
左のコントロールを押してシュートすると、自分のプレーヤーからシュートが始まります。ここまでは問題ありませんが、問題は停止しないことです。位置が に移動することはありませんtheVoid
。
撮影用の私のコードは次のとおりです。
protected override void Update(GameTime gameTime)
{
if (Keyboard.GetState().IsKeyDown(Keys.LeftControl) && isShotted == false)
{
isShotted = true;
shotPosition = playerPosition;
}
if (isShotted == true && (shotPosition.X <= shotPosition.X+150) )
{
shotPosition.X += shotSpeed.X * (float)gameTime.ElapsedGameTime.TotalSeconds;
}
else
{
isShotted = false;
shotPosition = theVoid;
}
}
明確化:
playerPosition
私の「ヒーロー」スプライトの位置です。theVoid
はVector2 (700,700)
、セットshotPosition = theVoid
するとショットが消えます。