BeanCheeseBurrito / Flecs.NET

A C# wrapper for flecs
MIT License
145 stars 18 forks source link

Ambiguous definitions of Routine. #20

Closed Olle-Lukowski closed 8 months ago

Olle-Lukowski commented 9 months ago

I was just trying to crate a pretty basic routine/system:

ecs.Set(new Window());
ecs.Routine<Window>().Each(UpdateWindows);

and got an error at the Routine line saying:

error CS0121: The call is ambiguous between the following methods or properties: 'World.Routine<T0>(FilterBuilder, QueryBuilder, RoutineBuilder, Ecs.IterCallback<T0>?, string)' and 'World.Routine<T0>(FilterBuilder, QueryBuilder, RoutineBuilder, Ecs.EachCallback<T0>?, string)

after looking into it, it seems there are multiple definitions of routine, 4 to be exact, that are the same.

BeanCheeseBurrito commented 9 months ago

The current nuget packages aren't up to date with the main branch. There was a recent breaking change to the query interfaces in this PR that is only available in the gitlab package registry. I suggest using the gitlab feed for now as those are more up to date. The nuget.org packages will be updated on the next flecs release.

The readme has an example of how to add the development feed to your .csproj file. https://github.com/BeanCheeseBurrito/Flecs.NET?tab=readme-ov-file#gitlab-package-registry

BeanCheeseBurrito commented 8 months ago

The latest nuget package has been updated to use the new query interfaces. https://www.nuget.org/packages/Flecs.NET.Bindings.Release/3.2.11