Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KeyNotFoundException in IntervalEntityProcessingSystem.ProcessEntities #39

Closed
Maximusya opened this issue Jul 17, 2013 · 1 comment
Closed

Comments

@Maximusya
Copy link
Collaborator

Artemis_XNA_INDEPENDENT/System/IntervalEntityProcessingSystem.cs:

protected override void ProcessEntities(IDictionary<int, Entity> entities)
{
    for (int index = 0, s = entities.Count; s > index; ++index)
    {
        this.Process(entities[index]);
    }
}

Should be a foreach loop over entities.Values - just like in other systems' ProcessEntities methods. Otherwise you'd likely get KeyNotFoundException.

Artemis_XNA_INDEPENDENT/System/EntityProcessingSystem.cs

protected override void ProcessEntities(IDictionary<int, Entity> entities)
{
    foreach (Entity entity in entities.Values)
    {
        this.Process(entity);
    }
}
tpastor added a commit that referenced this issue Jul 17, 2013
@tpastor
Copy link
Collaborator

tpastor commented Jul 17, 2013

Bug Fixed in the last commit.
When ids are not in sequence (happens after some add/removes) this error will happen. Changed to foreach approach

@tpastor tpastor closed this as completed Jul 17, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants