#include "math/vector.h"
ScriptedObject::ScriptedObject(const lisp::Lisp& lisp)
- : solid(true), physic_enabled(true), visible(true)
+ : solid(true), physic_enabled(true), visible(true), new_vel_set(false)
{
lisp.get("name", name);
if(name == "")
void
ScriptedObject::set_velocity(float x, float y)
{
- physic.set_velocity(x, y);
+ new_vel = Vector(x, y);
+ new_vel_set = true;
}
float
if(!physic_enabled)
return;
+ if(new_vel_set) {
+ physic.set_velocity(new_vel.x, new_vel.y);
+ new_vel_set = false;
+ }
movement = physic.get_movement(elapsed_time);
}