Example #1
0
void UFO::onUpdate()
{
	SE_TRANSFORM[ty] = 16.0f;
	SEVector3f dir = (playerPos - SE_TRANSFORM.translation()) / 10.0f;
	float power = dir.lengthSqaure() - 150.0f;
	if (power > 300.0f) power = 300.0f;
	SE_RIGIDBODY.resetVelocity(se_data::AXIS_Y);
	SE_RIGIDBODY.applyForce(dir.unify() * power * UFO_SPEED);
}
Example #2
0
void Bot::onUpdate()
{
    SEVector3f dir = (playerPos - SE_TRANSFORM.translation()) / 10.0f;

    float power = (dir.lengthSqaure() - 150.0f) / 2.0f;
    if (power > 90) power = 90.0f;
    dir[1] = 0.0f;
    dir = SE_MATRIX_ROTATE4(se_data::AXIS_Y, 90.0f - power)* SEVector4f(dir);
    SE_RIGIDBODY.applyForce(dir.unify() * BOT_SPEED);
}