void AIController::moveForward() {
    if (fabs(shipCoord().getX()) < DISTANCE_EPS + (fabs(shipCoord().getZ()) / 20) &&
        fabs(shipCoord().getY()) < DISTANCE_EPS + (fabs(shipCoord().getZ()) / 20) &&
        shipCoord().getZ() > 0) {
        rotated = true;
        if (targetSpeed().getZ() + MAX_SPEED_DIFF > 0) {
//            std::cout << "%";
            increasePower();
//            setPower(1);
        }
    }
    if (targetSpeed().getZ() + MAX_SPEED_DIFF < 0) {
//        std::cout << "^" << power << " ";
        decreasePower();
//        setPower(0);
    }
}
Пример #2
0
int Max6651ClosedLoop::begin() {
    println("Max6651ClosedLoop::begin()");
    if (!i2c_) {
        //println("No I2C interface configured.");
        return -1;
    }
    int error = setConfigRegister(mode_config_);
    write(COMMAND_GPIO_DEFINE, gpio_config_);
    write(COMMAND_ALARM_ENABLE, alarm_config_);
    write(COMMAND_TACH_COUNT_TIME, tachometer_count_time_);
    targetSpeed(maximumSpeed());
    // TODO: Return error code
    return error;
}
Пример #3
0
void ch_att::assignPoints()
{
	long est=0;
	
	// Health
	while (point>0 && hp<att*7/3)
	 {
		point--;
		increaseHealth();
	 }
	// Speed
	est=targetSpeed();
	while (point>0 && sp<SpeedCap && sp<=est)
	 {
		point--;
		increaseSpeed();
	 }
	// Strength
	while (point>0)
	 {
		point--;
		increaseStrength();
	 }
}