0
我想让我的第一个XNA游戏,我不知道如何实现以下内容: 我有一个不同类型的对象的列表,他们被加载和绘制。通过点击其中一个对象,我需要创建一个相同类型的新对象,并将这个新对象添加到另一个列表中。 我试过下面的代码,我可以添加尽可能多的对象,因为我想要一个新的列表,但只有当我点击第零个对象时(它们都有一个第零个对象的类型)。当我点击其他对象时,什么也没有发生。如何使它工作?如何实现选择
for (int i = 0; i < initialPlanets.Count; i++)
{
MouseState mouse = Mouse.GetState();
if (initialPlanets[i].CollisionRectangle.Contains(
mouse.X, mouse.Y) &&
mouse.LeftButton == ButtonState.Released &&
previousButtonState == ButtonState.Pressed)
{
userPlanetSequence.Add(new Planet(
initialPlanets[i].Type,
GetPlanetSprite(initialPlanets[i].Type),
new Vector2(100 * (i + 1), 100)));
}
previousButtonState = mouse.LeftButton;
}
谢谢,它的工作。 MouseState mouse = Mouse.GetState()和previousButtonState = mouse.LeftButton应该在循环外部。 – Ksenia
@Ksenia很高兴我能帮到你。如果您觉得这很有帮助,upvote和复选标记可能会向其他社区成员发出信号,表明这可能对他们有帮助。 – SteelSoul