From 99a9d2b374dfe9ba00178437035e3184a9fbcf52 Mon Sep 17 00:00:00 2001 From: extrawurst Date: Sat, 8 Mar 2025 19:48:41 +0100 Subject: [PATCH] use origin instead of pivot and use trimesh instead of convex --- assets/maps/map1.map | 207 +++++++++++++++---------------------- assets/textures/origin.png | Bin 0 -> 2120 bytes src/gates.rs | 17 +-- src/tb_entities.rs | 40 +++---- trenchbroom/hedz/hedz.fgd | 7 +- 5 files changed, 109 insertions(+), 162 deletions(-) create mode 100644 assets/textures/origin.png diff --git a/assets/maps/map1.map b/assets/maps/map1.map index cff8a2a..95d7e1c 100644 --- a/assets/maps/map1.map +++ b/assets/maps/map1.map @@ -484,60 +484,6 @@ } // brush 53 { -( 512 1008 -256 ) ( 512 1009 -256 ) ( 512 1008 -255 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1008 -256 ) ( 512 1008 -255 ) ( 513 1008 -256 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1008 -256 ) ( 513 1008 -256 ) ( 512 1009 -256 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1136 -128 ) ( 640 1137 -128 ) ( 641 1136 -128 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1136 -224 ) ( 641 1136 -224 ) ( 640 1136 -223 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1136 -224 ) ( 640 1136 -223 ) ( 640 1137 -224 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 90 1 1 -} -// brush 54 -{ -( 640 1008 -128 ) ( 640 1009 -128 ) ( 640 1008 -127 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1008 -128 ) ( 640 1008 -127 ) ( 641 1008 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1008 -128 ) ( 641 1008 -128 ) ( 640 1009 -128 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 768 1136 0 ) ( 768 1137 0 ) ( 769 1136 0 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 768 1136 -96 ) ( 769 1136 -96 ) ( 768 1136 -95 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 768 1136 -96 ) ( 768 1136 -95 ) ( 768 1137 -96 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 90 1 1 -} -// brush 55 -{ -( 512 1008 -128 ) ( 512 1009 -128 ) ( 512 1008 -127 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1008 -128 ) ( 512 1008 -127 ) ( 513 1008 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1008 -128 ) ( 513 1008 -128 ) ( 512 1009 -128 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1136 0 ) ( 640 1137 0 ) ( 641 1136 0 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1136 -96 ) ( 641 1136 -96 ) ( 640 1136 -95 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1136 -96 ) ( 640 1136 -95 ) ( 640 1137 -96 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 90 1 1 -} -// brush 56 -{ -( 512 1136 -128 ) ( 512 1137 -128 ) ( 512 1136 -127 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1136 -128 ) ( 512 1136 -127 ) ( 513 1136 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1136 -128 ) ( 513 1136 -128 ) ( 512 1137 -128 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1264 0 ) ( 640 1265 0 ) ( 641 1264 0 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1264 -96 ) ( 641 1264 -96 ) ( 640 1264 -95 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1264 -96 ) ( 640 1264 -95 ) ( 640 1265 -96 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 90 1 1 -} -// brush 57 -{ -( 512 1136 -256 ) ( 512 1137 -256 ) ( 512 1136 -255 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1136 -256 ) ( 512 1136 -255 ) ( 513 1136 -256 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 512 1136 -256 ) ( 513 1136 -256 ) ( 512 1137 -256 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1264 -128 ) ( 640 1265 -128 ) ( 641 1264 -128 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 640 1264 -224 ) ( 641 1264 -224 ) ( 640 1264 -223 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1264 -224 ) ( 640 1264 -223 ) ( 640 1265 -224 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 90 1 1 -} -// brush 58 -{ -( 640 1136 -128 ) ( 640 1137 -128 ) ( 640 1136 -127 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1136 -128 ) ( 640 1136 -127 ) ( 641 1136 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 640 1136 -128 ) ( 641 1136 -128 ) ( 640 1137 -128 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 768 1264 0 ) ( 768 1265 0 ) ( 769 1264 0 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 90 1 1 -( 768 1264 -96 ) ( 769 1264 -96 ) ( 768 1264 -95 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 90 1 1 -( 768 1264 -96 ) ( 768 1264 -95 ) ( 768 1265 -96 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 90 1 1 -} -// brush 59 -{ ( 3728 640 -256 ) ( 3728 641 -256 ) ( 3728 640 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 640 -256 ) ( 3728 640 -255 ) ( 3729 640 -256 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 640 -256 ) ( 3729 640 -256 ) ( 3728 641 -256 ) crate [ -1 0 0 -240 ] [ 0 -1 0 0 ] 90 1 1 @@ -545,7 +491,7 @@ ( 3856 768 -224 ) ( 3857 768 -224 ) ( 3856 768 -223 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3856 768 -224 ) ( 3856 768 -223 ) ( 3856 769 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 60 +// brush 54 { ( 3728 512 -256 ) ( 3728 513 -256 ) ( 3728 512 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 512 -256 ) ( 3728 512 -255 ) ( 3729 512 -256 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -554,7 +500,7 @@ ( 3856 640 -224 ) ( 3857 640 -224 ) ( 3856 640 -223 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3856 640 -224 ) ( 3856 640 -223 ) ( 3856 641 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 61 +// brush 55 { ( 3728 512 -128 ) ( 3728 513 -128 ) ( 3728 512 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 512 -128 ) ( 3728 512 -127 ) ( 3729 512 -128 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -563,7 +509,7 @@ ( 3856 640 -96 ) ( 3857 640 -96 ) ( 3856 640 -95 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3856 640 -96 ) ( 3856 640 -95 ) ( 3856 641 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 62 +// brush 56 { ( 3728 640 -128 ) ( 3728 641 -128 ) ( 3728 640 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 640 -128 ) ( 3728 640 -127 ) ( 3729 640 -128 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -572,7 +518,7 @@ ( 3856 768 -96 ) ( 3857 768 -96 ) ( 3856 768 -95 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3856 768 -96 ) ( 3856 768 -95 ) ( 3856 769 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 63 +// brush 57 { ( 3728 384 -256 ) ( 3728 385 -256 ) ( 3728 384 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 384 -256 ) ( 3728 384 -255 ) ( 3729 384 -256 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -581,7 +527,7 @@ ( 3856 512 -224 ) ( 3857 512 -224 ) ( 3856 512 -223 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3856 512 -224 ) ( 3856 512 -223 ) ( 3856 513 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 64 +// brush 58 { ( 3600 640 -256 ) ( 3600 641 -256 ) ( 3600 640 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3600 640 -256 ) ( 3600 640 -255 ) ( 3601 640 -256 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -590,7 +536,7 @@ ( 3728 768 -224 ) ( 3729 768 -224 ) ( 3728 768 -223 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 768 -224 ) ( 3728 768 -223 ) ( 3728 769 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 65 +// brush 59 { ( 3600 512 -256 ) ( 3600 513 -256 ) ( 3600 512 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3600 512 -256 ) ( 3600 512 -255 ) ( 3601 512 -256 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -599,7 +545,7 @@ ( 3728 640 -224 ) ( 3729 640 -224 ) ( 3728 640 -223 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 640 -224 ) ( 3728 640 -223 ) ( 3728 641 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 66 +// brush 60 { ( 3600 512 -128 ) ( 3600 513 -128 ) ( 3600 512 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3600 512 -128 ) ( 3600 512 -127 ) ( 3601 512 -128 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -608,7 +554,7 @@ ( 3728 640 -96 ) ( 3729 640 -96 ) ( 3728 640 -95 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 640 -96 ) ( 3728 640 -95 ) ( 3728 641 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 67 +// brush 61 { ( 3600 640 -128 ) ( 3600 641 -128 ) ( 3600 640 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3600 640 -128 ) ( 3600 640 -127 ) ( 3601 640 -128 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -617,7 +563,7 @@ ( 3728 768 -96 ) ( 3729 768 -96 ) ( 3728 768 -95 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 768 -96 ) ( 3728 768 -95 ) ( 3728 769 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 68 +// brush 62 { ( 3600 640 0 ) ( 3600 641 0 ) ( 3600 640 1 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 3600 640 0 ) ( 3600 640 1 ) ( 3601 640 0 ) crate [ 1 0 0 240 ] [ 0 0 -1 0 ] 90 1 1 @@ -626,7 +572,7 @@ ( 3728 768 32 ) ( 3729 768 32 ) ( 3728 768 33 ) crate [ -1 0 0 -240 ] [ 0 0 -1 0 ] 90 1 1 ( 3728 768 32 ) ( 3728 768 33 ) ( 3728 769 32 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 69 +// brush 63 { ( 3440 512 -256 ) ( 3440 513 -256 ) ( 3440 512 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 512 -256 ) ( 3440 512 -255 ) ( 3441 512 -256 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -635,7 +581,7 @@ ( 3568 640 -224 ) ( 3569 640 -224 ) ( 3568 640 -223 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3568 640 -224 ) ( 3568 640 -223 ) ( 3568 641 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 70 +// brush 64 { ( 3440 512 -128 ) ( 3440 513 -128 ) ( 3440 512 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 512 -128 ) ( 3440 512 -127 ) ( 3441 512 -128 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -644,7 +590,7 @@ ( 3568 640 -96 ) ( 3569 640 -96 ) ( 3568 640 -95 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3568 640 -96 ) ( 3568 640 -95 ) ( 3568 641 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 71 +// brush 65 { ( 3440 640 -128 ) ( 3440 641 -128 ) ( 3440 640 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 640 -128 ) ( 3440 640 -127 ) ( 3441 640 -128 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -653,7 +599,7 @@ ( 3568 768 -96 ) ( 3569 768 -96 ) ( 3568 768 -95 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3568 768 -96 ) ( 3568 768 -95 ) ( 3568 769 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 72 +// brush 66 { ( 3440 640 -256 ) ( 3440 641 -256 ) ( 3440 640 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 640 -256 ) ( 3440 640 -255 ) ( 3441 640 -256 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -662,7 +608,7 @@ ( 3568 768 -224 ) ( 3569 768 -224 ) ( 3568 768 -223 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3568 768 -224 ) ( 3568 768 -223 ) ( 3568 769 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 73 +// brush 67 { ( 3440 640 0 ) ( 3440 641 0 ) ( 3440 640 1 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 640 0 ) ( 3440 640 1 ) ( 3441 640 0 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -671,7 +617,7 @@ ( 3568 768 32 ) ( 3569 768 32 ) ( 3568 768 33 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3568 768 32 ) ( 3568 768 33 ) ( 3568 769 32 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 74 +// brush 68 { ( 3440 384 -256 ) ( 3440 385 -256 ) ( 3440 384 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 384 -256 ) ( 3440 384 -255 ) ( 3441 384 -256 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -680,7 +626,7 @@ ( 3568 512 -224 ) ( 3569 512 -224 ) ( 3568 512 -223 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3568 512 -224 ) ( 3568 512 -223 ) ( 3568 513 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 75 +// brush 69 { ( 3312 512 -128 ) ( 3312 513 -128 ) ( 3312 512 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3312 512 -128 ) ( 3312 512 -127 ) ( 3313 512 -128 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -689,7 +635,7 @@ ( 3440 640 -96 ) ( 3441 640 -96 ) ( 3440 640 -95 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 640 -96 ) ( 3440 640 -95 ) ( 3440 641 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 76 +// brush 70 { ( 3312 640 -128 ) ( 3312 641 -128 ) ( 3312 640 -127 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3312 640 -128 ) ( 3312 640 -127 ) ( 3313 640 -128 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -698,7 +644,7 @@ ( 3440 768 -96 ) ( 3441 768 -96 ) ( 3440 768 -95 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 768 -96 ) ( 3440 768 -95 ) ( 3440 769 -96 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 77 +// brush 71 { ( 3312 640 -256 ) ( 3312 641 -256 ) ( 3312 640 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3312 640 -256 ) ( 3312 640 -255 ) ( 3313 640 -256 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -707,7 +653,7 @@ ( 3440 768 -224 ) ( 3441 768 -224 ) ( 3440 768 -223 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 768 -224 ) ( 3440 768 -223 ) ( 3440 769 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 78 +// brush 72 { ( 3312 512 -256 ) ( 3312 513 -256 ) ( 3312 512 -255 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 ( 3312 512 -256 ) ( 3312 512 -255 ) ( 3313 512 -256 ) crate [ 1 0 0 16 ] [ 0 0 -1 0 ] 270 1 1 @@ -716,7 +662,7 @@ ( 3440 640 -224 ) ( 3441 640 -224 ) ( 3440 640 -223 ) crate [ -1 0 0 -16 ] [ 0 0 -1 0 ] 270 1 1 ( 3440 640 -224 ) ( 3440 640 -223 ) ( 3440 641 -224 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 79 +// brush 73 { ( 3567.375 768 -256 ) ( 3567.375 768 -255 ) ( 3567.375 767 -256 ) fence [ 1.9967346175427393e-16 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3584 -256 -224 ) ( 3584 -256 -223 ) ( 3585 -256 -224 ) fence [ -1 1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -725,7 +671,7 @@ ( 3552 768 -256 ) ( 3553 768 -256 ) ( 3552 768 -255 ) fence [ 1 -1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3568 512 -224 ) ( 3568 511 -224 ) ( 3568 512 -223 ) fence [ -1.9967346175427393e-16 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 80 +// brush 74 { ( 1151.375 768 -256 ) ( 1151.375 768 -255 ) ( 1151.375 767 -256 ) fence [ 1.9967346175427393e-16 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1168 512 -224 ) ( 1168 512 -223 ) ( 1169 512 -224 ) fence [ -1 1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -734,7 +680,7 @@ ( 1136 768 -256 ) ( 1137 768 -256 ) ( 1136 768 -255 ) fence [ 1 -1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1152 512 -224 ) ( 1152 511 -224 ) ( 1152 512 -223 ) fence [ -1.9967346175427393e-16 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 81 +// brush 75 { ( 3776 1536 -256 ) ( 3776 1537 -256 ) ( 3776 1536 -255 ) TinyTexPack2/Brick/Brick_14_door [ 0 -1 0 0 ] [ 0 0 -1 0 ] 180 1 1 ( 3776 1536 -256 ) ( 3776 1536 -255 ) ( 3777 1536 -256 ) TinyTexPack2/Brick/Brick_14_door [ 1 0 0 0 ] [ 0 0 -1 0 ] 180 1 1 @@ -743,7 +689,7 @@ ( 3840 1792 -192 ) ( 3841 1792 -192 ) ( 3840 1792 -191 ) TinyTexPack2/Brick/Brick_14_door [ -1 0 0 0 ] [ 0 0 -1 0 ] 180 1 1 ( 3840 1728 -192 ) ( 3840 1728 -191 ) ( 3840 1729 -192 ) TinyTexPack2/Brick/Brick_14_door [ 0 1 0 0 ] [ 0 0 -1 0 ] 180 1 1 } -// brush 82 +// brush 76 { ( 3776 1536 0 ) ( 3776 1537 0 ) ( 3776 1536 1 ) TinyTexPack2/Brick/Brick_14-256x256 [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3776 1536 0 ) ( 3776 1536 1 ) ( 3777 1536 0 ) TinyTexPack2/Brick/Brick_14-256x256 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -752,7 +698,7 @@ ( 3840 1792 64 ) ( 3841 1792 64 ) ( 3840 1792 65 ) TinyTexPack2/Brick/Brick_14-256x256 [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3840 1728 64 ) ( 3840 1728 65 ) ( 3840 1729 64 ) TinyTexPack2/Brick/Brick_14-256x256 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 83 +// brush 77 { ( 1151.375 0 -256 ) ( 1151.375 0 -255 ) ( 1151.375 -1 -256 ) fence [ 1.9967346175427393e-16 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1168 -256 -224 ) ( 1168 -256 -223 ) ( 1169 -256 -224 ) fence [ -1 1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -761,7 +707,7 @@ ( 1136 0 -256 ) ( 1137 0 -256 ) ( 1136 0 -255 ) fence [ 1 -1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1152 -256 -224 ) ( 1152 -257 -224 ) ( 1152 -256 -223 ) fence [ -1.9967346175427393e-16 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 84 +// brush 78 { ( 3840 768 -320 ) ( 3840 769 -320 ) ( 3840 768 -319 ) tile [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3840 768 -320 ) ( 3840 768 -319 ) ( 3841 768 -320 ) tile [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -770,7 +716,7 @@ ( 5888 5376 -256 ) ( 5889 5376 -256 ) ( 5888 5376 -255 ) tile [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 5888 1088 -256 ) ( 5888 1088 -255 ) ( 5888 1089 -256 ) tile [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 85 +// brush 79 { ( -256 3840 -320 ) ( -256 3841 -320 ) ( -256 3840 -319 ) tile [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3008 3840 -320 ) ( 3008 3840 -319 ) ( 3009 3840 -320 ) tile [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -779,7 +725,7 @@ ( 3840 5376 -256 ) ( 3841 5376 -256 ) ( 3840 5376 -255 ) tile [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 3840 5376 -256 ) ( 3840 5376 -255 ) ( 3840 5377 -256 ) tile [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 86 +// brush 80 { ( -256 5376 -320 ) ( -256 5377 -320 ) ( -256 5376 -319 ) tile [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( -256 5376 -320 ) ( -256 5376 -319 ) ( -255 5376 -320 ) tile [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -788,7 +734,7 @@ ( 640 7424 -256 ) ( 641 7424 -256 ) ( 640 7424 -255 ) tile [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1792 5824 -256 ) ( 1792 5824 -255 ) ( 1792 5825 -256 ) tile [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 87 +// brush 81 { ( 768 768 -320 ) ( 768 768 -319 ) ( 768 767 -320 ) tile [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 832 -256 -256 ) ( 832 -256 -255 ) ( 833 -256 -256 ) tile [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -797,7 +743,7 @@ ( 768 768 -320 ) ( 769 768 -320 ) ( 768 768 -319 ) tile [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 5888 -256 -256 ) ( 5888 -257 -256 ) ( 5888 -256 -255 ) tile [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 88 +// brush 82 { ( -256 -768 -320 ) ( -256 -767 -320 ) ( -256 -768 -319 ) tile [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 640 -768 -320 ) ( 640 -768 -319 ) ( 641 -768 -320 ) tile [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -806,16 +752,7 @@ ( 704 1280 -256 ) ( 705 1280 -256 ) ( 704 1280 -255 ) tile [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 768 -704 -256 ) ( 768 -704 -255 ) ( 768 -703 -256 ) tile [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 89 -{ -( 640 880 -256 ) ( 640 881 -256 ) ( 640 880 -255 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 270 1 1 -( 640 880 -256 ) ( 640 880 -255 ) ( 641 880 -256 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 -( 640 880 -256 ) ( 641 880 -256 ) ( 640 881 -256 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 270 1 1 -( 768 1008 -128 ) ( 768 1009 -128 ) ( 769 1008 -128 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 270 1 1 -( 768 1008 -224 ) ( 769 1008 -224 ) ( 768 1008 -223 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 -( 768 1008 -224 ) ( 768 1008 -223 ) ( 768 1009 -224 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 270 1 1 -} -// brush 90 +// brush 83 { ( 3840 2288 -256 ) ( 3840 2289 -256 ) ( 3840 2288 -255 ) fence [ 1.5931734312618293e-15 1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 ( 3840 2303.375000000001 -256 ) ( 3840 2303.375000000001 -255 ) ( 3841 2303.375000000001 -256 ) fence [ -1 1.5931734312618293e-15 0 0 ] [ 0 0 -1 0 ] 90 1 1 @@ -824,7 +761,7 @@ ( 4096 2304 -224 ) ( 4097 2304 -224 ) ( 4096 2304 -223 ) fence [ 1 -1.5931734312618293e-15 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 4864 2320 -224 ) ( 4864 2320 -223 ) ( 4864 2321 -224 ) fence [ -1.5931734312618293e-15 -1 0 16 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 91 +// brush 84 { ( 4560 2304 -128 ) ( 4560 2560 -256 ) ( 4560 2560 -128 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 180 1 1 ( 4816 2304 -128 ) ( 4560 2304 -256 ) ( 4560 2304 -128 ) crate [ 1 0 0 48 ] [ 0 0 -1 0 ] 0 1 1 @@ -833,7 +770,7 @@ ( 4816 2560 -128 ) ( 4560 2560 -256 ) ( 4816 2560 -256 ) crate [ -1 0 0 80 ] [ 0 0 -1 0 ] 0 1 1 ( 4816 2560 -128 ) ( 4816 2304 -256 ) ( 4816 2304 -128 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 92 +// brush 85 { ( 4688 2560 -128 ) ( 4688 2816 -256 ) ( 4688 2816 -128 ) crate [ 0 -1 0 0 ] [ 0 0 -1 0 ] 180 1 1 ( 4816 2560 -128 ) ( 4560 2560 -256 ) ( 4560 2560 -128 ) crate [ 1 0 0 48 ] [ 0 0 -1 0 ] 180 1 1 @@ -842,7 +779,7 @@ ( 4816 2688 -128 ) ( 4560 2688 -256 ) ( 4816 2688 -256 ) crate [ -1 0 0 -48 ] [ 0 0 -1 0 ] 90 1 1 ( 4816 2816 -128 ) ( 4816 2560 -256 ) ( 4816 2560 -128 ) crate [ 0 1 0 0 ] [ 0 0 -1 0 ] 180 1 1 } -// brush 93 +// brush 86 { ( 4864 3056 -256 ) ( 4864 3057 -256 ) ( 4864 3056 -255 ) fence [ 1.5931734312618293e-15 1 0 -16 ] [ 0 0 -1 0 ] 90 1 1 ( 4864 3071.375000000001 -256 ) ( 4864 3071.375000000001 -255 ) ( 4865 3071.375000000001 -256 ) fence [ -1 1.5931734312618293e-15 0 0 ] [ 0 0 -1 0 ] 90 1 1 @@ -851,7 +788,7 @@ ( 5120 3072 -224 ) ( 5121 3072 -224 ) ( 5120 3072 -223 ) fence [ 1 -1.5931734312618293e-15 0 0 ] [ 0 0 -1 0 ] 90 1 1 ( 5888 3088 -224 ) ( 5888 3088 -223 ) ( 5888 3089 -224 ) fence [ -1.5931734312618293e-15 -1 0 16 ] [ 0 0 -1 0 ] 90 1 1 } -// brush 94 +// brush 87 { ( 1536 5568 -128 ) ( 1536 5824 -256 ) ( 1536 5824 -128 ) crate [ 0 -1 0 64 ] [ 0 0 -1 0 ] 180 1 1 ( 1792 5568 -128 ) ( 1536 5568 -256 ) ( 1536 5568 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 @@ -860,7 +797,7 @@ ( 1792 5824 -128 ) ( 1536 5824 -256 ) ( 1792 5824 -256 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1792 5824 -128 ) ( 1792 5568 -256 ) ( 1792 5568 -128 ) crate [ 0 1 0 -64 ] [ 0 0 -1 0 ] 0 1 1 } -// brush 95 +// brush 88 { ( 1664 5824 -128 ) ( 1664 6080 -256 ) ( 1664 6080 -128 ) crate [ 0 -1 0 64 ] [ 0 0 -1 0 ] 270 1 1 ( 1792 5824 -128 ) ( 1536 5824 -256 ) ( 1536 5824 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 @@ -869,7 +806,7 @@ ( 1792 5952 -128 ) ( 1536 5952 -256 ) ( 1792 5952 -256 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 180 1 1 ( 1792 6080 -128 ) ( 1792 5824 -256 ) ( 1792 5824 -128 ) crate [ 0 1 0 -64 ] [ 0 0 -1 0 ] 270 1 1 } -// brush 96 +// brush 89 { ( 1664 5568 128 ) ( 1664 5824 0 ) ( 1664 5824 128 ) crate [ 0 -1 0 -64 ] [ 0 0 -1 0 ] 270 1 1 ( 1792 5568 128 ) ( 1536 5568 0 ) ( 1536 5568 128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 @@ -878,6 +815,24 @@ ( 1792 5696 128 ) ( 1536 5696 0 ) ( 1792 5696 0 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 180 1 1 ( 1792 5824 128 ) ( 1792 5568 0 ) ( 1792 5568 128 ) crate [ 0 1 0 64 ] [ 0 0 -1 0 ] 270 1 1 } +// brush 90 +{ +( 640 880 -256 ) ( 640 881 -256 ) ( 640 880 -255 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 270 1 1 +( 640 880 -256 ) ( 640 880 -255 ) ( 641 880 -256 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 640 880 -256 ) ( 641 880 -256 ) ( 640 881 -256 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 270 1 1 +( 768 1008 -128 ) ( 768 1009 -128 ) ( 769 1008 -128 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 270 1 1 +( 768 1008 -224 ) ( 769 1008 -224 ) ( 768 1008 -223 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 768 1008 -224 ) ( 768 1008 -223 ) ( 768 1009 -224 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 270 1 1 +} +// brush 91 +{ +( 512 1008 -128 ) ( 512 1264 -256 ) ( 512 1264 -128 ) crate [ 0 -1 0 -16 ] [ 0 0 -1 0 ] 180 1 1 +( 768 1008 -128 ) ( 512 1008 -256 ) ( 512 1008 -128 ) crate [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 768 1264 -256 ) ( 512 1008 -256 ) ( 768 1008 -256 ) crate [ -1 0 0 0 ] [ 0 -1 0 -16 ] 0 1 1 +( 768 1264 0 ) ( 512 1008 0 ) ( 512 1264 0 ) crate [ 1 0 0 0 ] [ 0 -1 0 -16 ] 270 1 1 +( 768 1264 -128 ) ( 512 1264 -256 ) ( 768 1264 -256 ) crate [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 768 1264 -128 ) ( 768 1008 -256 ) ( 768 1008 -128 ) crate [ 0 1 0 16 ] [ 0 0 -1 0 ] 0 1 1 +} } // entity 1 { @@ -903,6 +858,29 @@ // entity 5 { "classname" "named_entity" +"name" "fence_02" +// brush 0 +{ +( 1136 496 -256 ) ( 1136 497 -256 ) ( 1136 496 -255 ) origin [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 1136 496 -256 ) ( 1136 496 -255 ) ( 1137 496 -256 ) origin [ 1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 1136 496 -256 ) ( 1137 496 -256 ) ( 1136 497 -256 ) origin [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1168 528 -240 ) ( 1168 529 -240 ) ( 1169 528 -240 ) origin [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1168 528 -240 ) ( 1169 528 -240 ) ( 1168 528 -239 ) origin [ -1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 1168 528 -240 ) ( 1168 528 -239 ) ( 1168 529 -240 ) origin [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 +} +// brush 1 +{ +( 1151.375 512 -256 ) ( 1151.375 512 -255 ) ( 1151.375 511 -256 ) fence [ 1.9967346175427393e-16 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 1168 256 -224 ) ( 1168 256 -223 ) ( 1169 256 -224 ) fence [ -1 1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 1136 512 -256 ) ( 1136 511 -256 ) ( 1137 512 -256 ) fence [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( 1168 256 256 ) ( 1169 256 256 ) ( 1168 255 256 ) fence [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( 1136 512 -256 ) ( 1137 512 -256 ) ( 1136 512 -255 ) fence [ 1 -1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 1152 256 -224 ) ( 1152 255 -224 ) ( 1152 256 -223 ) fence [ -1.9967346175427393e-16 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +} +// entity 6 +{ +"classname" "named_entity" "name" "fence_01" // brush 0 { @@ -913,30 +891,13 @@ ( 1136 256 -256 ) ( 1137 256 -256 ) ( 1136 256 -255 ) fence [ 1 -1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 ( 1152 0 -224 ) ( 1152 -1 -224 ) ( 1152 0 -223 ) fence [ -1.9967346175427393e-16 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 } -} -// entity 6 +// brush 1 { -"classname" "named_entity" -"name" "fence_02" -// brush 0 -{ -( 1151.375 512 -256 ) ( 1151.375 512 -255 ) ( 1151.375 511 -256 ) fence [ 1.9967346175427393e-16 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 -( 1168 256 -224 ) ( 1168 256 -223 ) ( 1169 256 -224 ) fence [ -1 1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 -( 1136 512 -256 ) ( 1136 511 -256 ) ( 1137 512 -256 ) fence [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 -( 1168 256 256 ) ( 1169 256 256 ) ( 1168 255 256 ) fence [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 -( 1136 512 -256 ) ( 1137 512 -256 ) ( 1136 512 -255 ) fence [ 1 -1.9967346175427393e-16 0 0 ] [ 0 0 -1 0 ] 0 1 1 -( 1152 256 -224 ) ( 1152 255 -224 ) ( 1152 256 -223 ) fence [ -1.9967346175427393e-16 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 1136 -16 -256 ) ( 1136 -15 -256 ) ( 1136 -16 -255 ) origin [ 0 -1 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 1136 -16 -256 ) ( 1136 -16 -255 ) ( 1137 -16 -256 ) origin [ 1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 1136 -16 -256 ) ( 1137 -16 -256 ) ( 1136 -15 -256 ) origin [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1168 16 -240 ) ( 1168 17 -240 ) ( 1169 16 -240 ) origin [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1168 16 -240 ) ( 1169 16 -240 ) ( 1168 16 -239 ) origin [ -1 0 0 0 ] [ 0 0 -1 0 ] 270 1 1 +( 1168 16 -240 ) ( 1168 16 -239 ) ( 1168 17 -240 ) origin [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } } -// entity 7 -{ -"classname" "pivot" -"origin" "1151.38 0 -248" -"name" "fence_01" -} -// entity 8 -{ -"classname" "pivot" -"origin" "1151.38 512 -248" -"name" "fence_02" -} diff --git a/assets/textures/origin.png b/assets/textures/origin.png new file mode 100644 index 0000000000000000000000000000000000000000..8b7af356b7317beb0f0fcd2a3d31daacc34f22cb GIT binary patch literal 2120 zcmd5-YfKzf6dqcm6r?_YP#aSwQ^5wZ;QN>fGD($Z9_Rj8%4wZ?{236&qViCBt+#+s;!)>vayP+O_`1Mkf8?9%ef#2@px z=R5bDd%pACd)rD&HYLQZjYAM5!B%W8gWnkCiCqETF9*xNL6AEgoTE~%v~QuEydP&+ zz82sizW{Lr$uA5EjMEEbv=+FzfB~EM=q!eEtO47uvy*ng1Uy`Eg9yqSN*vAxuT#%r zg#~f>AsPno1DQcXeqTVMLk3KZOT&M~Okk+$B6|&3rM(n2@ghKVxDF?=f;co^WLy;3Z7-k?jMNW`8 zK7cAQnOeS1HeeXU(V5^N#LY(!NHgU_A_xT`v^YsDbQe6l%u60#m|M}JIdgE-M45Bl zB9DSZxkLJv&JbdRrJU{d+q?Vyi^`B>OFblFhSWtR%qEZ=VF3_jK;r8}C$Q9mfV^I1 zLg9rr@jhNGhtdEBOgnEbS zK};&!RD{|rrd+K)H&;X9k@O0Sw9U`B!4?p3%bwZP^Y-l=dy`oy&R3_XqawgTIw&=( zI-_zPGhiDjVnLFsB_Y@_+76Y?GBRUkWVlX>q;wiGTSMkKw0X2HkIu=?B(*e2s##Qj zp5nWVAa&B z_7zm(U2>2Sfzb_{Yru>y7YBI=qos<-Q3|E-T(}_@1q^xs3^!Mr)*c!uXZF?Z0z!Q52=0`Pti;YIMybDL3k*EDl*`$lbB1liD0*Ksk^ zyfx{3VYVsVYRbyWYHdwkJHGRI>ebS*9P3}FyTU*0I*@vD$~DFw^Bvi6>NoFD^~c+) zGA(bj7dkJ$adn{UXvb$~UT-XzYMju2-H2D3Y-v4TgwVYsPYta)$2|M-`m&p6{EdkKUsC`?=#Q7%cS*X)|`rO&*v`sa`N;i9o5Gl`rx(q1|AG%bd`TPrLF$%h2E>K zwEErsZzZxTQt{q3=iB$~Xa#?c4I@qOAKpB8WPhQ_DkgVT{O&n^|HH=4bz7w}LxwiJ z!C`%6;LGW=O_!W4D|>!gojP9dz`4g$#{EOVA+q3}ge(8V`r3t#6W_a6*ZlazwIYi& z(ITxJ!80FY?;6?o<}bzs@3)89#Qt-&lMO3gj2{&fu0Pt-y?07KxNG#oXD%iG{HwA5 zU=W{1cCK^(k!tNMfmiw}p}0yykoZL9i9rq=Tmy}F+ssBsY?t%K#mQ9U4kTten37_J OcEn~WF`p=^Y5o`akg^K^ literal 0 HcmV?d00001 diff --git a/src/gates.rs b/src/gates.rs index 0a65846..3c72f48 100644 --- a/src/gates.rs +++ b/src/gates.rs @@ -1,9 +1,9 @@ use std::collections::HashMap; use avian3d::math::PI; -use bevy::{prelude::*, state::commands}; +use bevy::prelude::*; -use crate::tb_entities::{NamedEntity, Pivot}; +use crate::tb_entities::NamedEntity; #[derive(Resource)] enum GatesState { @@ -19,8 +19,7 @@ pub fn plugin(app: &mut App) { fn update( keyboard: Res>, mut state: ResMut, - mut names_entities: Query<(&NamedEntity, &mut Transform), Without>, - pivot_entities: Query<(&Pivot, &Transform)>, + mut names_entities: Query<(&NamedEntity, &mut Transform)>, ) { if keyboard.just_pressed(KeyCode::Digit1) { if matches!(*state, GatesState::Init) { @@ -35,15 +34,7 @@ fn update( for (named_entity, mut transform) in names_entities.iter_mut() { if let Some(fence) = fences.get(named_entity.name.as_str()) { - let Some((_, t)) = pivot_entities - .iter() - .find(|(p, _)| &p.name == named_entity.name.as_str()) - else { - warn!("Pivot not found for {}", named_entity.name); - continue; - }; - - transform.rotate_around(t.translation, *fence); + transform.rotate(*fence); } } } diff --git a/src/tb_entities.rs b/src/tb_entities.rs index 1bb6ae9..8cb4abc 100644 --- a/src/tb_entities.rs +++ b/src/tb_entities.rs @@ -32,20 +32,14 @@ impl SpawnPoint { #[derive(SolidClass, Component, Reflect)] #[reflect(Component)] -#[geometry(GeometryProvider::new().convex_collider().smooth_by_default_angle().render())] +#[geometry(GeometryProvider::new().trimesh_collider().smooth_by_default_angle().render())] pub struct Worldspawn; #[derive(SolidClass, Component, Reflect, Default)] #[reflect(Component)] -#[geometry(GeometryProvider::new().convex_collider().smooth_by_default_angle().render())] -pub struct NamedEntity { - pub name: String, -} - -#[derive(PointClass, Component, Reflect, Default)] -#[reflect(Component)] #[require(Transform)] -pub struct Pivot { +#[geometry(GeometryProvider::new().trimesh_collider().smooth_by_default_angle().render())] +pub struct NamedEntity { pub name: String, } @@ -67,17 +61,23 @@ impl EnemySpawn { world .commands() .entity(entity) - .insert(( - Visibility::default(), - RigidBody::Dynamic, - Collider::capsule(0.2, 1.), - LockedAxes::new().lock_rotation_z().lock_rotation_x(), - Name::from("Enemy"), - )) - .with_child(( - Transform::from_translation(Vec3::new(0., -0.6, 0.)).with_scale(Vec3::splat(1.5)), - SceneRoot(mesh), - )); + .insert((Name::from("Enemy"), Visibility::default())) + .with_children(|parent| { + parent + .spawn(( + Visibility::default(), + RigidBody::Dynamic, + Collider::capsule(0.4, 2.), + LockedAxes::new().lock_rotation_z().lock_rotation_x(), + Transform::from_translation(Vec3::new(0., 1.0, 0.)), + )) + .with_child(( + Visibility::default(), + Transform::from_translation(Vec3::new(0., -1.4, 0.)) + .with_scale(Vec3::splat(1.5)), + SceneRoot(mesh), + )); + }); } } diff --git a/trenchbroom/hedz/hedz.fgd b/trenchbroom/hedz/hedz.fgd index d5828ed..074f5fb 100644 --- a/trenchbroom/hedz/hedz.fgd +++ b/trenchbroom/hedz/hedz.fgd @@ -64,12 +64,7 @@ [ ] -@SolidClass = named_entity -[ - name(string) : "name" : "" : "" -] - -@PointClass base(transform) = pivot +@SolidClass base(transform) = named_entity [ name(string) : "name" : "" : "" ]