CODE
float myMass
//state_entry()
myMass = llGetMass()
//control
if ((level & CONTROL_ROT_RIGHT) | (level & CONTROL_RIGHT))
{
if(speed > 2.5)
{
turning = TRUE;
adecayoff = TRUE;
turn = .7;
llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION, <turn,0,0>);
}
else if(speed < 2.5)
{
turning = FALSE;
adecayoff = TRUE;
llApplyRotationalImpulse(<0,0,-.7> * myMass, TRUE);
}
}
if ((level & CONTROL_ROT_LEFT) | (level & CONTROL_LEFT))
{
if(speed > 2)
{
turning = TRUE;
adecayoff = TRUE;
turn = -.7;
llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION, <turn,0,0>);
}
else if(speed < 2)
{
turning = FALSE;
adecayoff = TRUE;
llApplyRotationalImpulse(<0,0,.7> * myMass, TRUE);
}
}
//turning()
if(turning)
{
llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION, <turn,0,0>);
turn = 0;
turning = FALSE;
}
//timer()
integer speed = (integer)(llVecMag(llGetVel()) * 1.94384449 + 0.5);