是否可以将精灵的位置设置为正在移动的另一个精灵的完全相同的位置。
所以我想将“sprite.position”设置为我的类Character所在的位置:
Character.cs:
class Character
{
Texture2D texture;
public Vector2 position;
Vector2 velocity;
public Character(Texture2D newTexture, Vector2 newPosition)
{
texture = newTexture;
position = newPosition;
}
public void Update(GameTime gameTime)
{
position += velocity;
}
public void Draw(SpriteBatch spriteBatch)
{
spriteBatch.Draw(texture, position, Color.White);
}
}
Game1.cs:
public class Game1 : Microsoft.Xna.Framework.Game
{
Bullet bullet;
Character player;
protected override void Initialize()
{
allSprites = new List<ISprite>();
allSpriteObstakels = new List<ISprite>();
bullet.position = Character.position; // not working
base.Initialize();
}
}
答案 0 :(得分:0)
正如评论所暗示的那样,当你说“它不起作用”时,你需要清楚“不工作”究竟意味着什么。例如,您是否收到编译错误?您是否收到运行时异常?游戏是否正在运行,但它没有达到您的预期(逻辑错误)?
那就是说,这是我最好的猜测:
但最重要的是学会提问,以便社区可以帮助你。