小行星类
public Vector2 AsteroidPosition
{
get { return asteroidPosition; }
set { asteroidPosition = value; }
}
从Asteroids类中的Update方法调用Set
AsteroidPosition = new Vector2(spritePosition.X, spritePosition.Y);
游戏类,碰撞检测方法
Asteroids asteroid = new Asteroids();
Rectangle asteroidRectangle = new Rectangle(
(int)asteroid.AsteroidPosition.X,
(int)asteroid.AsteroidPosition.Y,
asteroidTexture.Width,
asteroidTexture.Height);
此方法在Game类的Update方法中调用。
我在Set处添加一个断点,检查'value'是否有值,它确实如此,为什么它会保持返回(0,0)?
答案 0 :(得分:2)
小行星实例在碰撞检测方法的第一行创建,然后在第二行立即使用,因此值将为0,除非您将它们设置为结构构造函数内的某些内容。
答案 1 :(得分:0)
在小行星小行星=新小行星()之后没有设置属性? 。所以它是默认值。