void rpm2LEDs(DWORD curRate) { //if (curRate < 1000) { SetLEDs(0b00000000); MotorState = FALSE; curRate = 10;} //else { MotorState = TRUE; } int per = (curRate / PWM_PERIOD) * 100; int setting = toSetting(per); SetLEDs(setting); /* SetLEDs(setting); if (curRate < 25 ) { SetLEDs(0b00000000); } if (curRate >= 50 ) { SetLEDs(0b10000000); } if (curRate >= 100) { SetLEDs(0b11000000); } if (curRate >= 150) { SetLEDs(0b11100000); } if (curRate >= 175) { SetLEDs(0b11110000); } if (curRate >= 200) { SetLEDs(0b11111000); } */ }
// this is constructor. Menu::Menu(Configuration & newConfig) : config(newConfig), gui(config.window) { /* initialize the menu state */ state = STATE::getUserName; gui.setFont(tgui::Font(config.fontMan.get("Carlito-Bold.ttf"))); //set the default font of gui titlePic = std::make_shared<tgui::Picture>(); titlePic->setTexture(config.texMan.get("title.png")); titlePic->setPosition(100, 50); titlePic->setSize(600, 150); /* initialize the background */ backgrd.setSize(sf::Vector2f(config.window.getSize())); backgrd.setTexture(&config.texMan.get("Tower1.png")); /* initialize the getUserName gui */ state_getUserName.initialize(config); state_getUserName.confirm->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); //config.player_name->connect("mousereleased", [&]() {state_getUserName.textBox->setText("")}); config.player_name = state_getUserName.textBox->getText(); toMainMenu(); }); /* initialize the mainMenu gui */ state_mainMenu.initialize(config); state_mainMenu.startButton->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); tomodeChoice(); }); state_mainMenu.settingButton->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); toSetting(); }); state_mainMenu.exitButton->connect("mousereleased", [&]() {config.window.close(); }); /* initialize the setting gui */ state_settings.initialize(config); state_settings.backButton->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); toMainMenu(); }); state_settings.MusVol->connect("valuechanged", [&]() { float value = state_settings.MusVol->getValue() * 10.f; config.musMan.setVolume(value); }); state_settings.sonVol->connect("valuechanged", [&]() { float value = state_settings.sonVol->getValue() * 10.f; config.soundMan.setVolume(value); }); /* initialize modeChoice gui */ state_modeChoice.initialize(config); state_modeChoice.client->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); toConnect(); }); state_modeChoice.server->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); toLobby(); }); state_modeChoice.back->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); toMainMenu(); }); /* initialize connect gui */ state_connect.initialize(config); state_connect.backButton->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); tomodeChoice(); }); state_connect.connectButton->connect("mousereleased", [&]() { config.soundMan.get("Decision2.ogg").play(); toConnecting(); config.window.clear(); draw(); config.window.display(); tryConnect(); if (lobbyPtr) { toLobby(); } else { state_connecting.text->setText("Failed to connect the server."); state_connecting.backButton->show(); } }); /* initialize connecting gui */ state_connecting.initialize(config); state_connecting.backButton->connect("mousereleased", [&](){ config.soundMan.get("Decision2.ogg").play(); toConnect(); state_connecting.text->setText("Connecting..."); /// hide vs show ??? state_connecting.backButton->hide(); }); done = false; }