void GameWinScene::createUIElements() { UIElement* element = new UIElement(UI_TYPE::BUTTON, GameConstants::WINDOW_CENTRE, Vector2D(50, 50), ">You Win!\nPress A to return to \n Main Menu<", "exit2"); element->setAlpha(0); element->setAppear([element](float dt){ element->changeAlpha(510 * dt); }); element->setAppearCondition([element](float dt)->bool{ return element->testAlpha(255, 255 * dt); }); element->setDisappear([element](float dt){ element->changeAlpha(-510 * dt); }); element->setDisappearCondition([element](float dt)->bool{ return element->testAlpha(0, -255 * dt); }); element->setSize(150); m_menu.addElement(element); }
void PauseScene::createUIElements() { UIElement* element = new UIElement(UI_TYPE::BUTTON, Vector2D(GameConstants::WINDOW_CENTRE.x, 150), Vector2D(50, 50), ">RESUME<", "exit2"); element->setFunctionality([&](){ m_resume(); }); element->setAlpha(0); element->setAppear([element](float dt){ element->changeAlpha(510 * dt); }); element->setAppearCondition([element](float dt)->bool{ return element->testAlpha(255, 255 * dt); }); element->setDisappear([element](float dt){ element->changeAlpha(-510 * dt); }); element->setDisappearCondition([element](float dt)->bool{ return element->testAlpha(0, -255 * dt); }); element->setSize(150); m_menu.addElement(element); element = new UIElement(UI_TYPE::BUTTON, Vector2D(GameConstants::WINDOW_CENTRE.x - 170, 320), Vector2D(50, 50), ">RESET<", "options2"); element->setFunctionality([&](){ SceneManager::getInstance()->switchTo(Scenes::MAINMENU); SceneManager::getInstance()->switchTo(Scenes::GAME); }); element->setAlpha(0); element->setAppear([element](float dt){ element->changeAlpha(510 * dt); }); element->setAppearCondition([element](float dt)->bool{ return element->testAlpha(255, 255 * dt); }); element->setDisappear([element](float dt){ element->changeAlpha(-510 * dt); }); element->setDisappearCondition([element](float dt)->bool{ return element->testAlpha(0, -255 * dt); }); element->setSize(150); m_menu.addElement(element); element = new UIElement(UI_TYPE::BUTTON, Vector2D(GameConstants::WINDOW_CENTRE.x, 490), Vector2D(50, 50), ">EXIT<", "help2"); element->setFunctionality([element](){ SceneManager::getInstance()->switchTo(Scenes::MAINMENU); }); element->setAlpha(0); element->setAppear([element](float dt){ element->changeAlpha(510 * dt); }); element->setAppearCondition([element](float dt)->bool{ return element->testAlpha(255, 255 * dt); }); element->setDisappear([element](float dt){ element->changeAlpha(-510 * dt); }); element->setDisappearCondition([element](float dt)->bool{ return element->testAlpha(0, -255 * dt); }); element->setSize(150); m_menu.addElement(element); m_menu.setEnd(); }