diff --git a/assets/maps/map1.map b/assets/maps/map1.map index aa95919..01cd8cf 100644 --- a/assets/maps/map1.map +++ b/assets/maps/map1.map @@ -657,7 +657,7 @@ { ( 832 7168 -304 ) ( 832 7169 -304 ) ( 832 7168 -303 ) canals [ 4.812271809458903e-16 -0.9999999999999999 0 64 ] [ 0 0 -1 16 ] 270 1 1 ( 896 6592 -368 ) ( 895 6592 -368 ) ( 896 6592 -367 ) canals [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] [ 0 0 -1 16 ] 180 1 1 -( 896 6720 -880 ) ( 896 6721 -880 ) ( 895 6720 -880 ) canals [ 4.812271809458903e-16 -0.9999999999999999 0 64 ] [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] 180 1 1 +( 896 6720 -768 ) ( 896 6721 -768 ) ( 895 6720 -768 ) canals [ 4.812271809458903e-16 -0.9999999999999999 0 64 ] [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] 180 1 1 ( 704 7168 -304 ) ( 703 7168 -304 ) ( 704 7169 -304 ) canals [ -4.812271809458903e-16 0.9999999999999999 0 -64 ] [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] 270 1 1 ( 704 7168 -304 ) ( 704 7168 -303 ) ( 703 7168 -304 ) canals [ -1.0000000000000007 5.456456664689579e-16 0 -128 ] [ 0 0 -1 16 ] 0 1 1 ( 896 6720 -368 ) ( 896 6720 -367 ) ( 896 6721 -368 ) canals [ -4.812271809458903e-16 0.9999999999999999 0 -64 ] [ 0 0 -1 16 ] 0 1 1 @@ -682,12 +682,12 @@ } // brush 75 { -( -512 6592 -1648 ) ( -512 6593 -1648 ) ( -512 6592 -1647 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 -( 832 6592 -1648 ) ( 832 6592 -1647 ) ( 833 6592 -1648 ) canals [ 1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 -( 832 6592 -1648 ) ( 833 6592 -1648 ) ( 832 6593 -1648 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 -( 1472 7168 -1584 ) ( 1472 7169 -1584 ) ( 1473 7168 -1584 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 -( 1472 7168 -1584 ) ( 1473 7168 -1584 ) ( 1472 7168 -1583 ) canals [ -1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 -( 1472 7168 -1584 ) ( 1472 7168 -1583 ) ( 1472 7169 -1584 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( -2048 6592 -1664 ) ( -2048 6593 -1664 ) ( -2048 6592 -1663 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 832 6592 -1664 ) ( 832 6592 -1663 ) ( 833 6592 -1664 ) canals [ 1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 832 6592 -1664 ) ( 833 6592 -1664 ) ( 832 6593 -1664 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1472 7168 -1600 ) ( 1472 7169 -1600 ) ( 1473 7168 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1472 7168 -1600 ) ( 1473 7168 -1600 ) ( 1472 7168 -1599 ) canals [ -1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 1472 7168 -1600 ) ( 1472 7168 -1599 ) ( 1472 7169 -1600 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 } // brush 76 { @@ -716,6 +716,69 @@ ( 2878 5376 784 ) ( 2879 5376 784 ) ( 2878 5376 785 ) blue-fence [ -1 1.8369701987210297e-16 0 62 ] [ 0 0 -1 16 ] 0 1 1 ( 2880 5248 848 ) ( 2880 5247 848 ) ( 2880 5248 849 ) blue-fence [ 1.8369701987210297e-16 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 } +// brush 79 +{ +( -2048 7232 -1600 ) ( -2048 7232 -1599 ) ( -2048 7231 -1600 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 832 7168 -1024 ) ( 832 7168 -1023 ) ( 833 7168 -1024 ) canals [ 1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 192 7232 -1600 ) ( 192 7231 -1600 ) ( 193 7232 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 832 7168 -768 ) ( 833 7168 -768 ) ( 832 7167 -768 ) canals [ -1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 192 7232 -1600 ) ( 193 7232 -1600 ) ( 192 7232 -1599 ) canals [ -1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 832 7168 -1024 ) ( 832 7167 -1024 ) ( 832 7168 -1023 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +} +// brush 80 +{ +( -1280 6592 -1600 ) ( -1280 6592 -1599 ) ( -1280 6591 -1600 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 832 6528 -1024 ) ( 832 6528 -1023 ) ( 833 6528 -1024 ) canals [ 1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 192 6592 -1600 ) ( 192 6591 -1600 ) ( 193 6592 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 832 6528 -768 ) ( 833 6528 -768 ) ( 832 6527 -768 ) canals [ -1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 192 6592 -1600 ) ( 193 6592 -1600 ) ( 192 6592 -1599 ) canals [ -1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 832 6528 -1024 ) ( 832 6527 -1024 ) ( 832 6528 -1023 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +} +// brush 81 +{ +( -2048 6592 -768 ) ( -2048 6593 -768 ) ( -2048 6592 -767 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 192 6592 -768 ) ( 192 6592 -767 ) ( 193 6592 -768 ) canals [ 1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 192 6592 -768 ) ( 193 6592 -768 ) ( 192 6593 -768 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 832 7168 -704 ) ( 832 7169 -704 ) ( 833 7168 -704 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 832 7168 -704 ) ( 833 7168 -704 ) ( 832 7168 -703 ) canals [ -1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 832 7168 -704 ) ( 832 7168 -703 ) ( 832 7169 -704 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +} +// brush 82 +{ +( -2048 6464 -1664 ) ( -2048 6465 -1664 ) ( -2048 6464 -1663 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 5504 -1664 ) ( -2048 5504 -1663 ) ( -2047 5504 -1664 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 6464 -1664 ) ( -2047 6464 -1664 ) ( -2048 6465 -1664 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -1600 ) ( -1280 6593 -1600 ) ( -1279 6592 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -1600 ) ( -1279 6592 -1600 ) ( -1280 6592 -1599 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 6592 -1600 ) ( -1280 6592 -1599 ) ( -1280 6593 -1600 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +// brush 83 +{ +( -1280 6464 -1600 ) ( -1280 6465 -1600 ) ( -1280 6464 -1599 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 5504 -1600 ) ( -1280 5504 -1599 ) ( -1279 5504 -1600 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 6464 -1600 ) ( -1279 6464 -1600 ) ( -1280 6465 -1600 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1216 6528 -768 ) ( -1216 6529 -768 ) ( -1215 6528 -768 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1216 6528 -1536 ) ( -1215 6528 -1536 ) ( -1216 6528 -1535 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1216 6528 -1536 ) ( -1216 6528 -1535 ) ( -1216 6529 -1536 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +// brush 84 +{ +( -2112 7104 -1600 ) ( -2112 7105 -1600 ) ( -2112 7104 -1599 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2112 6144 -1600 ) ( -2112 6144 -1599 ) ( -2111 6144 -1600 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2112 7104 -1600 ) ( -2111 7104 -1600 ) ( -2112 7105 -1600 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -2048 7168 -768 ) ( -2048 7169 -768 ) ( -2047 7168 -768 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -2048 7168 -1536 ) ( -2047 7168 -1536 ) ( -2048 7168 -1535 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 7168 -1536 ) ( -2048 7168 -1535 ) ( -2048 7169 -1536 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +// brush 85 +{ +( -2048 6464 -768 ) ( -2048 6465 -768 ) ( -2048 6464 -767 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 5504 -768 ) ( -2048 5504 -767 ) ( -2047 5504 -768 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 6464 -768 ) ( -2047 6464 -768 ) ( -2048 6465 -768 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -704 ) ( -1280 6593 -704 ) ( -1279 6592 -704 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -704 ) ( -1279 6592 -704 ) ( -1280 6592 -703 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 6592 -704 ) ( -1280 6592 -703 ) ( -1280 6593 -704 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} } // entity 1 { @@ -1107,3 +1170,16 @@ ( 1184 6912 -1376 ) ( 1184 6912 -1375 ) ( 1184 6913 -1376 ) origin [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } } +// entity 35 +{ +"classname" "water" +// brush 0 +{ +( -2112 6976 -1600 ) ( -2112 6977 -1600 ) ( -2112 6976 -1599 ) water [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 320 6528 -1600 ) ( 320 6528 -1599 ) ( 321 6528 -1600 ) water [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 320 6976 -1600 ) ( 321 6976 -1600 ) ( 320 6977 -1600 ) water [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( 832 7360 -1536 ) ( 832 7361 -1536 ) ( 833 7360 -1536 ) water [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( 832 7232 -1536 ) ( 833 7232 -1536 ) ( 832 7232 -1535 ) water [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 832 7360 -1536 ) ( 832 7360 -1535 ) ( 832 7361 -1536 ) water [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +} diff --git a/assets/textures/water.material b/assets/textures/water.material new file mode 100644 index 0000000..989da95 --- /dev/null +++ b/assets/textures/water.material @@ -0,0 +1,5 @@ + +type = "StandardMaterial" + +[material] +base_color_texture = "water.png" diff --git a/assets/textures/water.png b/assets/textures/water.png new file mode 100644 index 0000000..a895066 Binary files /dev/null and b/assets/textures/water.png differ diff --git a/src/tb_entities.rs b/src/tb_entities.rs index 5000850..673551a 100644 --- a/src/tb_entities.rs +++ b/src/tb_entities.rs @@ -48,6 +48,11 @@ impl SpawnPoint { #[geometry(GeometryProvider::new().convex_collider())] pub struct Worldspawn; +#[derive(SolidClass, Component, Reflect, Default)] +#[reflect(Component)] +#[geometry(GeometryProvider::new())] +pub struct Water; + #[derive(SolidClass, Component, Reflect, Default)] #[reflect(Component)] #[require(Transform)] diff --git a/trenchbroom/hedz/hedz.fgd b/trenchbroom/hedz/hedz.fgd index ed720a4..731248e 100644 --- a/trenchbroom/hedz/hedz.fgd +++ b/trenchbroom/hedz/hedz.fgd @@ -126,6 +126,10 @@ scale(vector) : "Scale" : "1 1 1" : "" ] +@SolidClass = water +[ +] + @SolidClass = worldspawn [ ]