summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLizzy Fleckenstein <eliasfleckenstein@web.de>2023-02-26 22:30:48 +0100
committerLizzy Fleckenstein <eliasfleckenstein@web.de>2023-02-26 22:30:48 +0100
commitab7c3c2d7ce52d96dba6e13e852ef4dfd4f473ce (patch)
tree5b4d60299da48759b32dc9ded9ba54c393b8e4b5 /src
parent44f8227fe8f3b57c432bda6bfb0e0059e08aea1a (diff)
downloadmt_ser-ab7c3c2d7ce52d96dba6e13e852ef4dfd4f473ce.tar.xz
Support cgmath and collision
Diffstat (limited to 'src')
-rw-r--r--src/lib.rs95
1 files changed, 95 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 7cce3b6..ef72615 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -8,6 +8,8 @@ pub use paste;
pub use zstd;
use byteorder::{BigEndian, ReadBytesExt, WriteBytesExt};
+use cgmath::{Deg, Euler, Point1, Point2, Point3, Rad, Vector1, Vector2, Vector3, Vector4};
+use collision::{Aabb2, Aabb3};
use enumset::{EnumSet, EnumSetTypeWithRepr};
use paste::paste as paste_macro;
use std::{
@@ -614,3 +616,96 @@ struct RemoteRangeTo<T> {
struct RemoteRangeToInclusive<T> {
end: T,
}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Vector1")]
+#[allow(unused)]
+struct RemoteVector1<T> {
+ x: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Vector2")]
+#[allow(unused)]
+struct RemoteVector2<T> {
+ x: T,
+ y: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Vector3")]
+#[allow(unused)]
+struct RemoteVector3<T> {
+ x: T,
+ y: T,
+ z: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Vector4")]
+#[allow(unused)]
+struct RemoteVector4<T> {
+ x: T,
+ y: T,
+ z: T,
+ w: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Point1")]
+#[allow(unused)]
+struct RemotePoint1<T> {
+ x: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Point2")]
+#[allow(unused)]
+struct RemotePoint2<T> {
+ x: T,
+ y: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Point3")]
+#[allow(unused)]
+struct RemotePoint3<T> {
+ x: T,
+ y: T,
+ z: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Deg")]
+#[allow(unused)]
+struct RemoteDeg<T>(T);
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Rad")]
+#[allow(unused)]
+struct RemoteRad<T>(T);
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Euler")]
+#[allow(unused)]
+struct RemoteEuler<T> {
+ x: T,
+ y: T,
+ z: T,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Aabb2")]
+#[allow(unused)]
+struct RemoteAabb2<T> {
+ min: Point2<T>,
+ max: Point2<T>,
+}
+
+#[derive(MtSerialize, MtDeserialize)]
+#[mt(typename = "Aabb3")]
+#[allow(unused)]
+struct RemoteAabb3<T> {
+ min: Point3<T>,
+ max: Point3<T>,
+}