rename prefab "parent" property to "prefab"

This commit is contained in:
BlackMATov
2020-04-24 04:05:59 +07:00
parent e659663954
commit b82b743f76
4 changed files with 68 additions and 49 deletions

View File

@@ -1,8 +1,8 @@
{
"parent" : "parent.json",
"prefab" : "prefab_root.json",
"components" : {
"named" : {
"name" : "prefab"
"name" : "child"
},
"rect_collider" : {
"size" : [1,2],

View File

@@ -2,7 +2,7 @@
"uuid" : "73740BC4-CE9F-4A7F-A029-4AB65027A8AE",
"components" : {
"named" : {
"name" : "parent"
"name" : "root"
},
"circle_collider" : {
"radius" : 5,

View File

@@ -27,23 +27,26 @@ TEST_CASE("prefab"){
safe_starter_initializer initializer;
library& l = the<library>();
{
auto parent_res = l.load_asset<prefab_asset>("parent.json");
REQUIRE(parent_res);
REQUIRE(parent_res->content().uuid() == "73740BC4-CE9F-4A7F-A029-4AB65027A8AE");
auto prefab_root_res = l.load_asset<prefab_asset>("prefab_root.json");
REQUIRE(prefab_root_res);
REQUIRE(parent_res->content().children().size() == 2u);
REQUIRE(parent_res->content().children()[0].uuid() == "4A93547E-4635-4C2F-9C59-3546E11B1722");
REQUIRE(parent_res->content().children()[1].uuid() == "58063213-9FC1-457C-B773-B826BE1BE6D7");
const prefab& prefab_root = prefab_root_res->content();
REQUIRE(prefab_root.uuid() == "73740BC4-CE9F-4A7F-A029-4AB65027A8AE");
auto go = the<world>().instantiate(parent_res->content());
REQUIRE(go);
REQUIRE(prefab_root.children().size() == 2u);
REQUIRE(prefab_root.children()[0].uuid() == "4A93547E-4635-4C2F-9C59-3546E11B1722");
REQUIRE(prefab_root.children()[1].uuid() == "58063213-9FC1-457C-B773-B826BE1BE6D7");
REQUIRE(go.component<named>());
REQUIRE(go.component<named>()->name() == "parent");
auto go = the<world>().instantiate(prefab_root);
REQUIRE(go.component<circle_collider>());
REQUIRE(math::approximately(go.component<circle_collider>()->radius(), 5.f));
REQUIRE(go.component<circle_collider>()->offset() == v2f(4.f,2.f));
{
REQUIRE(go.component<named>());
REQUIRE(go.component<named>()->name() == "root");
REQUIRE(go.component<circle_collider>());
REQUIRE(go.component<circle_collider>()->radius() == Approx(5.f));
REQUIRE(go.component<circle_collider>()->offset() == v2f(4.f,2.f));
}
{
node_iptr go_node = go.component<actor>()
@@ -75,31 +78,34 @@ TEST_CASE("prefab"){
}
{
auto prefab_res = l.load_asset<prefab_asset>("prefab.json");
REQUIRE(prefab_res);
REQUIRE(prefab_res->content().uuid().empty());
auto prefab_child_res = l.load_asset<prefab_asset>("prefab_child.json");
REQUIRE(prefab_child_res);
REQUIRE(prefab_res->content().children().size() == 2u);
REQUIRE(prefab_res->content().children()[0].uuid() == "4A93547E-4635-4C2F-9C59-3546E11B1722");
REQUIRE(prefab_res->content().children()[1].uuid() == "58063213-9FC1-457C-B773-B826BE1BE6D7");
const prefab& prefab_child = prefab_child_res->content();
REQUIRE(prefab_child.uuid().empty());
auto go = the<world>().instantiate(prefab_res->content());
REQUIRE(go);
REQUIRE(prefab_child.children().size() == 2u);
REQUIRE(prefab_child.children()[0].uuid() == "4A93547E-4635-4C2F-9C59-3546E11B1722");
REQUIRE(prefab_child.children()[1].uuid() == "58063213-9FC1-457C-B773-B826BE1BE6D7");
REQUIRE(go.component<named>());
REQUIRE(go.component<named>()->name() == "prefab");
auto go = the<world>().instantiate(prefab_child);
REQUIRE(go.component<rect_collider>());
REQUIRE(go.component<rect_collider>()->size() == v2f(1.f,2.f));
REQUIRE(go.component<rect_collider>()->offset() == v2f(2.f,4.f));
{
REQUIRE(go.component<named>());
REQUIRE(go.component<named>()->name() == "child");
REQUIRE(go.component<circle_collider>());
REQUIRE(math::approximately(go.component<circle_collider>()->radius(), 5.f));
REQUIRE(go.component<circle_collider>()->offset() == v2f(4.f,2.f));
REQUIRE(go.component<rect_collider>());
REQUIRE(go.component<rect_collider>()->size() == v2f(1.f,2.f));
REQUIRE(go.component<rect_collider>()->offset() == v2f(2.f,4.f));
REQUIRE(go.component<polygon_collider>());
REQUIRE(go.component<polygon_collider>()->points() == vector<v2f>{{1,2},{2,3},{3,4}});
REQUIRE(go.component<polygon_collider>()->offset() == v2f(8.f,4.f));
REQUIRE(go.component<circle_collider>());
REQUIRE(go.component<circle_collider>()->radius() == Approx(5.f));
REQUIRE(go.component<circle_collider>()->offset() == v2f(4.f,2.f));
REQUIRE(go.component<polygon_collider>());
REQUIRE(go.component<polygon_collider>()->points() == vector<v2f>{{1,2},{2,3},{3,4}});
REQUIRE(go.component<polygon_collider>()->offset() == v2f(8.f,4.f));
}
{
node_iptr go_node = go.component<actor>()