character* character_new() { character* c = malloc(sizeof(character)); c->position = v2_zero(); c->velocity = v2_zero(); c->flap_timer = 0.0; c->facing_left = false; return c; }
ui_spinner* ui_spinner_new() { ui_spinner* s = malloc(sizeof(ui_spinner)); s->top_left = v2_zero(); s->bottom_right = v2(32, 32); s->color = v4_black(); s->texture = asset_load_get("$CORANGE/ui/spinner.dds"); s->speed = 5; s->rotation = 0; s->active = true; return s; }
TEST_CHECK(offsetof(vec2, y) == offsetof(vec2, v[1])); vec2 v = { { -1.f, -2.f } }; TEST_CHECK(v.x == -1.f); TEST_CHECK(v.y == -2.f); v = v2(1.f, 2.f); TEST_CHECK(v.x == 1.f); TEST_CHECK(v.y == 2.f); float arr[] = { 3.f, 4.f }; v = v2_load(arr); TEST_CHECK(v.x == 3.f); TEST_CHECK(v.y == 4.f); v = v2_zero(); TEST_CHECK(v.x == 0.f); TEST_CHECK(v.y == 0.f); v = v2_one(); TEST_CHECK(v.x == 1.f); TEST_CHECK(v.y == 1.f); v = v2_unit_x(); TEST_CHECK(v.x == 1.f); TEST_CHECK(v.y == 0.f); v = v2_unit_y(); TEST_CHECK(v.x == 0.f); TEST_CHECK(v.y == 1.f); }