我有一个用于创建 GameObjects 的类,它得到了精灵和....来制作游戏对象。我画我的纹理是这样的:
spriteBatch.Begin();
foreach (GameObject gameObject in Game.gameObjects)
{
if (gameObject.visible)
{
spriteBatch.Draw(gameObject.sprite.texture, gameObject.rect, gameObject.sprite.sourceRect, gameObject.color, MathHelper.ToRadians(gameObject.rotation), gameObject.sprite.origin, gameObject.spriteEffect, gameObject.layer);
}
}
foreach (Text text in Game.texts)
{
spriteBatch.DrawString(text.font, text.text, text.position, text.color, MathHelper.ToRadians(text.rotation), text.origin, text.scale, text.spriteEffects, text.layer);
}
spriteBatch.End();
我尝试了一些方法来做到这一点,并在游戏之间创建新的对象。例如,当我按下空格时,我想创建新的子弹。但我不能在游戏之间制作新的游戏对象;请帮我。
谢谢。
更新:我试图在游戏运行时添加另一个游戏对象;Game.gameObjects 是 Game1 中的静态列表(我将 Game1 名称更改为 Game),它位于 GameObject 类中:
public GameObject(Sprite sprite)
{
this.sprite = sprite;
rectWidth = (int)sprite.texture.Width;
rectHeight = (int)sprite.texture.Height;
rect = new Rectangle((int)position.X, (int)position.Y, rectWidth, rectHeight);
Game.gameObjects.Add(this);
}
所以我可以让我的游戏对象在游戏中渲染或管理它们;然后我有 gameObjects 是一个列表,它在游戏中有 All gameObjects