registry: updated tests (lib)

This commit is contained in:
Michele Caini
2020-04-05 23:32:10 +02:00
parent f68941992a
commit ed7f09ab80
13 changed files with 18 additions and 214 deletions

View File

@@ -1,15 +1,21 @@
#include <cr.h>
#include <entt/core/type_info.hpp>
#include <entt/entity/registry.hpp>
#include "types.h"
template<typename Type>
struct entt::type_index<Type> {};
CR_EXPORT int cr_main(cr_plugin *ctx, cr_op operation) {
switch (operation) {
case CR_STEP:
[ctx]() {
auto *proxy = static_cast<registry_proxy *>(ctx->userdata);
auto &registry = *static_cast<entt::registry *>(ctx->userdata);
proxy->assign({1., 1.});
const auto view = registry.view<position>();
registry.assign(view.begin(), view.end(), velocity{1., 1.});
proxy->for_each([](auto &pos, auto &vel) {
registry.view<position, velocity>().each([](auto &pos, auto &vel) {
pos.x += static_cast<int>(16 * vel.dx);
pos.y += static_cast<int>(16 * vel.dy);
});