Use integer for rotation
This commit is contained in:
@@ -133,79 +133,53 @@ protected:
|
|||||||
int check;
|
int check;
|
||||||
int mask;
|
int mask;
|
||||||
String item;
|
String item;
|
||||||
Basis basis;
|
int basis_rot;
|
||||||
Vector3 offset;
|
Vector3 offset;
|
||||||
bool exterior;
|
bool exterior;
|
||||||
};
|
};
|
||||||
struct pmatch match_data[] = {
|
struct pmatch match_data[] = {
|
||||||
{ 1, 1 | 256, "outside-wall", Basis(),
|
{ 1, 1 | 256, "outside-wall", 0,
|
||||||
Vector3(0, 0, -2), true },
|
Vector3(0, 0, -2), true },
|
||||||
{ 2, 2 | 512, "outside-wall",
|
{ 2, 2 | 512, "outside-wall", 2,
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
|
||||||
Vector3(0, 0, 2), true },
|
Vector3(0, 0, 2), true },
|
||||||
{ 4, 4 | 1024, "outside-wall",
|
{ 4, 4 | 1024, "outside-wall", 1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 0), true },
|
Vector3(-2, 0, 0), true },
|
||||||
{ 8, 8 | 2048, "outside-wall",
|
{ 8, 8 | 2048, "outside-wall", -1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, 0), true },
|
Vector3(2, 0, 0), true },
|
||||||
{ 2 | 8, 2 | 8, "outside-wall-corner",
|
{ 2 | 8, 2 | 8, "outside-wall-corner", 2,
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
|
||||||
Vector3(2, 0, 2), true },
|
Vector3(2, 0, 2), true },
|
||||||
{ 1 | 4, 1 | 4, "outside-wall-corner",
|
{ 1 | 4, 1 | 4, "outside-wall-corner", 0,
|
||||||
Basis().rotated(Vector3(0, 1, 0), 0),
|
|
||||||
Vector3(-2, 0, -2), true },
|
Vector3(-2, 0, -2), true },
|
||||||
{ 1 | 8, 1 | 8, "outside-wall-corner",
|
{ 1 | 8, 1 | 8, "outside-wall-corner", -1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, -2), true },
|
Vector3(2, 0, -2), true },
|
||||||
{ 2 | 4, 2 | 4, "outside-wall-corner",
|
{ 2 | 4, 2 | 4, "outside-wall-corner", 1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 2), true },
|
Vector3(-2, 0, 2), true },
|
||||||
{ 16, 16 | 256 | 4096, "internal-wall", Basis(),
|
{ 16, 16 | 256 | 4096, "internal-wall", 0,
|
||||||
Vector3(0, 0, -2), false },
|
Vector3(0, 0, -2), false },
|
||||||
{ 32, 32 | 512 | 8192, "internal-wall",
|
{ 32, 32 | 512 | 8192, "internal-wall", 2,
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
|
||||||
Vector3(0, 0, 2), false },
|
Vector3(0, 0, 2), false },
|
||||||
{ 64, 64 | 1024 | 16384, "internal-wall",
|
{ 64, 64 | 1024 | 16384, "internal-wall", 1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 0), false },
|
Vector3(-2, 0, 0), false },
|
||||||
{ 128, 128 | 2048 | 32768, "internal-wall",
|
{ 128, 128 | 2048 | 32768, "internal-wall", -1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, 0), false },
|
Vector3(2, 0, 0), false },
|
||||||
{ 16, 16 | 256, "internal-wall-skirting",
|
{ 16, 16 | 256, "internal-wall-skirting", 0,
|
||||||
Basis(), Vector3(0, 0, -2), false },
|
Vector3(0, 0, -2), false },
|
||||||
{ 32, 32 | 512, "internal-wall-skirting",
|
{ 32, 32 | 512, "internal-wall-skirting", 2,
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
|
||||||
Vector3(0, 0, 2), false },
|
Vector3(0, 0, 2), false },
|
||||||
{ 64, 64 | 1024, "internal-wall-skirting",
|
{ 64, 64 | 1024, "internal-wall-skirting", 1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 0), false },
|
Vector3(-2, 0, 0), false },
|
||||||
{ 128, 128 | 2048, "internal-wall-skirting",
|
{ 128, 128 | 2048, "internal-wall-skirting", -1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, 0), false },
|
Vector3(2, 0, 0), false },
|
||||||
{ 16 | 4096, 16 | 256 | 4096, "internal-door",
|
{ 16 | 4096, 16 | 256 | 4096, "internal-door",
|
||||||
Basis(), Vector3(0, 0, -2), false },
|
0, Vector3(0, 0, -2), false },
|
||||||
{ 32 | 8192, 32 | 512 | 8192, "internal-door",
|
{ 32 | 8192, 32 | 512 | 8192, "internal-door",
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
2, Vector3(0, 0, 2), false },
|
||||||
Vector3(0, 0, 2), false },
|
|
||||||
{ 64 | 16384, 64 | 1024 | 16384,
|
{ 64 | 16384, 64 | 1024 | 16384,
|
||||||
"internal-door",
|
"internal-door", 1, Vector3(-2, 0, 0),
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
false },
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 0), false },
|
|
||||||
{ 128 | 32768, 128 | 2048 | 32768,
|
{ 128 | 32768, 128 | 2048 | 32768,
|
||||||
"internal-door",
|
"internal-door", -1, Vector3(2, 0, 0),
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
false },
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, 0), false },
|
|
||||||
#if 0
|
#if 0
|
||||||
{ 1 | 256, 1 | 256, "external-window",
|
{ 1 | 256, 1 | 256, "external-window",
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
Basis().rotated(Vector3(0, 1, 0),
|
||||||
@@ -216,31 +190,21 @@ protected:
|
|||||||
-Math_PI / 2),
|
-Math_PI / 2),
|
||||||
Vector3(2, 0, 0), false }
|
Vector3(2, 0, 0), false }
|
||||||
#endif
|
#endif
|
||||||
{ 1 | 256, 1 | 256, "outside-window", Basis(),
|
{ 1 | 256, 1 | 256, "outside-window", 0,
|
||||||
Vector3(0, 0, -2), true },
|
Vector3(0, 0, -2), true },
|
||||||
{ 2 | 512, 2 | 512, "outside-window",
|
{ 2 | 512, 2 | 512, "outside-window", 2,
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
|
||||||
Vector3(0, 0, 2), true },
|
Vector3(0, 0, 2), true },
|
||||||
{ 4 | 1024, 4 | 1024, "outside-window",
|
{ 4 | 1024, 4 | 1024, "outside-window", 1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 0), true },
|
Vector3(-2, 0, 0), true },
|
||||||
{ 8 | 2048, 8 | 2048, "outside-window",
|
{ 8 | 2048, 8 | 2048, "outside-window", -1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, 0), true },
|
Vector3(2, 0, 0), true },
|
||||||
{ 16 | 256, 16 | 256, "internal-window",
|
{ 16 | 256, 16 | 256, "internal-window", 0,
|
||||||
Basis(), Vector3(0, 0, -2), false },
|
Vector3(0, 0, -2), false },
|
||||||
{ 32 | 512, 32 | 512, "internal-window",
|
{ 32 | 512, 32 | 512, "internal-window", 2,
|
||||||
Basis().rotated(Vector3(0, 1, 0), Math_PI),
|
|
||||||
Vector3(0, 0, 2), false },
|
Vector3(0, 0, 2), false },
|
||||||
{ 64 | 1024, 64 | 1024, "internal-window",
|
{ 64 | 1024, 64 | 1024, "internal-window", 1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
Math_PI / 2),
|
|
||||||
Vector3(-2, 0, 0), false },
|
Vector3(-2, 0, 0), false },
|
||||||
{ 128 | 2048, 128 | 2048, "internal-window",
|
{ 128 | 2048, 128 | 2048, "internal-window", -1,
|
||||||
Basis().rotated(Vector3(0, 1, 0),
|
|
||||||
-Math_PI / 2),
|
|
||||||
Vector3(2, 0, 0), false },
|
Vector3(2, 0, 0), false },
|
||||||
};
|
};
|
||||||
struct match_window {
|
struct match_window {
|
||||||
@@ -293,8 +257,11 @@ protected:
|
|||||||
match_data[i].item);
|
match_data[i].item);
|
||||||
assert(id >= 0);
|
assert(id >= 0);
|
||||||
Transform item_transform;
|
Transform item_transform;
|
||||||
item_transform.basis =
|
item_transform.basis = Basis().rotated(
|
||||||
match_data[i].basis;
|
Vector3(0, 1, 0),
|
||||||
|
Math_PI *
|
||||||
|
match_data[i].basis_rot /
|
||||||
|
2);
|
||||||
item_transform.origin =
|
item_transform.origin =
|
||||||
match_data[i].offset;
|
match_data[i].offset;
|
||||||
if (match_data[i].exterior)
|
if (match_data[i].exterior)
|
||||||
|
|||||||
Reference in New Issue
Block a user