mikymod 12 лет назад
Родитель
Сommit
ee152758bb
1 измененных файлов с 141 добавлено и 0 удалено
  1. 141 0
      src/script/binds/Vec2Binds.cpp

+ 141 - 0
src/script/binds/Vec2Binds.cpp

@@ -0,0 +1,141 @@
+#include "ScriptSystem.h"
+
+namespace crown
+{
+
+extern "C"
+{
+
+	Vec2&				vec2(float nx, float ny);					
+
+	Vec2&				vec2_add(Vec2& self, const Vec2& a);			
+
+	Vec2& 				vec2_subtract(Vec2& self, const Vec2& a);			
+
+	Vec2&				vec2_multiply(Vec2& self, float k);			
+
+	Vec2&				vec2_divide(Vec2& self, float k);
+
+	float				vec2_dot(Vec2& self, const Vec2& a);				
+
+	bool				vec2_equals(Vec2& self, const Vec2& other);	
+
+	bool				vec2_lower(Vec2& self, const Vec2& other);		
+
+	bool				vec2_greater(Vec2& self, const Vec2& other);
+
+	float				vec2_length(Vec2& self);
+
+	float				vec2_squared_length(Vec2& self);
+
+	void				vec2_set_length(Vec2& self, float len);					
+
+	Vec2&				vec2_normalize(Vec2& self);
+
+	Vec2&				vec2_negate(Vec2& self);
+
+	float				vec2_get_distance_to(Vec2& self, const Vec2& a);
+
+	float				vec2_get_angle_between(Vec2& self, const Vec2& a);
+
+	void				vec2_zero(Vec2& self);
+}
+
+Vec2& vec2(float nx, float ny)
+{
+	return scripter()->next_vec2(nx, ny);
+}
+
+Vec2& vec2_add(Vec2& self, const Vec2& a)
+{
+	self += a;
+
+	return self;
+}
+
+Vec2& vec2_subtract(Vec2& self, const Vec2& a)
+{
+	self -= a;
+
+	return self;
+}
+
+Vec2& vec2_multiply(Vec2& self, float k)
+{
+	self *= k;
+
+	return self;
+}
+
+Vec2& vec2_divide(Vec2& self, float k)
+{
+	self /= k;
+
+	return self;
+}
+
+float vec2_dot(Vec2& self, const Vec2& a)
+{
+	return self.dot(a);
+}
+
+bool vec2_equals(Vec2& self, const Vec2& other)
+{
+	return self == other;
+}
+
+bool vec2_lower(Vec2& self, const Vec2& other)
+{
+	return self < other;
+}
+
+bool vec2_greater(Vec2& self, const Vec2& other)
+{
+	return self > other;
+}
+
+float vec2_length(Vec2& self)
+{
+	self.length();
+}
+
+float vec2_squared_length(Vec2& self)
+{
+	return self.squared_length();
+}
+
+void vec2_set_length(Vec2& self, float len)
+{
+	self.set_length(len);
+}
+
+Vec2& vec2_normalize(Vec2& self)
+{
+	self.normalize();
+
+	return self;
+}
+
+Vec2& vec2_negate(Vec2& self)
+{
+	self.negate();
+
+	return self;
+}
+
+float vec2_get_distance_to(Vec2& self, const Vec2& a)
+{
+	return self.get_distance_to(a);
+}
+
+float vec2_get_angle_between(Vec2& self, const Vec2& a)
+{
+	return self.get_angle_between(a);
+}
+
+void vec2_zero(Vec2& self)
+{
+	self.zero();
+}
+
+} // namespace crown