enemys always looking at you when you are the target
This commit is contained in:
@@ -67,13 +67,9 @@ void Enemy::update(float delta)
|
||||
dz *= speed*delta;
|
||||
|
||||
position.x += dx;
|
||||
position.z += dz;
|
||||
position.z += dz;
|
||||
|
||||
rotation.y = atan2f(target.x - position.x, target.z - position.z) * 180 / M_PI;
|
||||
}
|
||||
|
||||
/*rotation.y += 10.0f;
|
||||
if (rotation.y >= 360.0f)
|
||||
rotation.y = 0.0f;*/
|
||||
//std::cout << atan2f(target.z - position.z, target.x - position.x) * 180 / M_PI << std::endl;
|
||||
//rotation.y = atan2f(target.z - position.z, target.x - position.x) * 180 / M_PI ;
|
||||
|
||||
}
|
||||
|
||||
+17
@@ -14,6 +14,18 @@ float Vec3f::Length()
|
||||
return (float)sqrt(x*x+y*y+z*z);
|
||||
}
|
||||
|
||||
void Vec3f::Normalize()
|
||||
{
|
||||
float length = this->Length();
|
||||
|
||||
if (length != 0)
|
||||
{
|
||||
x = x / length;
|
||||
y = y / length;
|
||||
z = z / length;
|
||||
}
|
||||
}
|
||||
|
||||
float Vec3f::Distance(const Vec3f &other)
|
||||
{
|
||||
return (float)sqrt(pow(other.x - x, 2)+pow(other.y - y, 2)+pow(other.z - z, 2));
|
||||
@@ -42,6 +54,11 @@ Vec3f Vec3f::operator+(const Vec3f & other)
|
||||
return Vec3f(x + other.x, y + other.y, z + other.z);
|
||||
}
|
||||
|
||||
Vec3f Vec3f::operator-(const Vec3f & other)
|
||||
{
|
||||
return Vec3f(x - other.x, y - other.y, z - other.z);
|
||||
}
|
||||
|
||||
Vec3f Vec3f::operator/(float value)
|
||||
{
|
||||
return Vec3f(x / value, y / value, z / value);
|
||||
|
||||
@@ -15,9 +15,11 @@ public:
|
||||
Vec3f(const Vec3f &other);
|
||||
Vec3f(float x, float y, float z);
|
||||
float Length();
|
||||
void Normalize();
|
||||
float Distance(const Vec3f &);
|
||||
float& operator [](int);
|
||||
Vec3f operator + (const Vec3f &other);
|
||||
Vec3f operator -(const Vec3f &other);
|
||||
Vec3f operator / (float value);
|
||||
bool operator ==(const Vec3f &other);
|
||||
bool operator !=(const Vec3f &other);
|
||||
|
||||
+1
-6
@@ -24,11 +24,6 @@
|
||||
"id": 0,
|
||||
"pos": [ 1, 2, -10 ],
|
||||
"scale": 0.01
|
||||
},
|
||||
{
|
||||
"id": 0,
|
||||
"pos": [ 4, 2, -15 ],
|
||||
"scale": 0.01
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user