MainMenu::MainMenu(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainMenu) { ui->setupUi(this); //playFontMusic(); connect(ui->playButton,&QPushButton::clicked, this, &MainMenu::playButtonClicked); connect(ui->optionsButton,&QPushButton::clicked, this, &MainMenu::optionsButtonClicked); //connect(levelMenuEx, SIGNAL(backToMenu()), this, SLOT(showMenu())); ui->infoButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); ui->optionsButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); ui->playButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); ui->rulesButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); ui->label->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); connect(optionsWindow, SIGNAL(backToMenu()), this, SLOT(showMenu())); connect(rulesField, SIGNAL(backToMenu()), this, SLOT(showMenu())); connect(ui->rulesButton, &QPushButton::clicked, this, &MainMenu::rulesButtonClicked); connect(ui->infoButton, &QPushButton::clicked, this, &MainMenu::infoButtonClicked); //connect(gameField, SIGNAL(endGame()), this, SLOT(showMenu())); }
bool AboutLayer::init() { bool bRet = false; do { auto board = Sprite::create("ui/about-board.png"); CC_BREAK_IF(board == NULL); board->setPosition(Point(WINSIZE.width / 2 + 300, WINSIZE.height / 2)); this->addChild(board, enZOrderBoard, enTagBoard); auto actionTo = EaseElasticOut::create(MoveTo::create(1, Point(WINSIZE.width / 2, WINSIZE.height / 2))); board->runAction(actionTo); auto backBtn = Button::create("ui/back-btn.png", "ui/back-btn.png", ""); backBtn->addTouchEventListener([&](Ref* sender, Widget::TouchEventType type){ switch (type) { case ui::Widget::TouchEventType::BEGAN: break; case ui::Widget::TouchEventType::ENDED: backToMenu(); break; default: break; } }); backBtn->setPosition(Point(WINSIZE.width + 100, 60)); backBtn->runAction(EaseElasticOut::create(MoveTo::create(1, Point(WINSIZE.width / 2 - 100, WINSIZE.height / 2 - 190)))); this->addChild(backBtn, enZOrderBackBtn,enTagBackBtn); bRet = true; return bRet; } while (false); CCLOG("Func AboutLayer::init Run Error!"); return bRet; }
void startGame() { reset_hints(); endMenu(); wait(1); level_load("mainLevel.wmb"); // level_load("menuLevel2.wmb"); //wait(1); // wait until last_error becomes valid on_esc = NULL; gameCameraInit(); startIngameGUI(); playMusicGameDay(); startSnow(); // Start a new day dayOrNight = DAY; dayTime = 28800; hut_restart(); item_restart(); show_dayhint(); set(mtl_model, PASS_SOLID); random_seed(8); VECTOR tempVector; int i; for(i = 0; i < 100; i++) { vec_set(tempVector, vector(random(6400)-3200, random(6400)-3200, 0)); if(vec_length(tempVector) < 800) { i--; continue; } tempVector.z = 5000; tempVector.z -= c_trace(tempVector, vector(tempVector.x, tempVector.y, -5000), SCAN_TEXTURE|IGNORE_PASSABLE|IGNORE_FLAG2); if(hit.nz < 0.5) { i--; continue; } // ENTITY *tree = ent_create("pine_3.mdl", tempVector, 0); ENTITY *tree = ent_create("pine_3_reduced.mdl", tempVector, 0); set(tree, PASSABLE|SHADOW); vec_scale(tree.scale_x, random(0.5) + 0.5); tree.pan = random(360); tree->emask &= ~DYNAMIC; } random_seed(0); pssm_run(4); wait(1); // f*****g wait(1) seems to fix something which breaks everything var sunlightFactor = 0; var dayCounter = 0; while(isGameOver < 2) { if (isGameOver == 0) { updateGui(); goblin_loop(); item_spawn_loop(); dayTime += DAY_TIME_SPEED * time_step * 1; if(dayTime >= 86400) { dayTime -= 86400; dayCounter += 1; goblinSpawnDelay = maxv(16.0*3.0-dayCounter*2, 1); } hours = integer(dayTime/60.0/60.0); minutes = (integer(dayTime)-hours*60.0*60.0)/60.0; sunlightFactor = sinv((dayTime-28800.0)/(60.0*60.0*12.0)*180.0); // Day start if(dayTime >= 28800 && dayOrNight == NIGHT && dayTime < 72000) { dayOrNight = 3; fadeWithBlack(startDay); } // Day if(sunlightFactor > 0.0) { sun_light = sunlightFactor*60; } // Night start if(dayTime >= 72000 && dayOrNight == DAY) { dayOrNight = 3; fadeWithBlack(startNight); } // Night if(sunlightFactor <= 0.0) { sun_light = -sunlightFactor*30; } sun_angle.pan = (dayTime-28800.0)/(60.0*60.0*12.0)*180.0; sun_angle.tilt = abs(ang(asinv(sunlightFactor)))*70.0/180.0+10.0; d3d_fogcolor1.red = sun_light*255.0/100.0; d3d_fogcolor1.green = sun_light*255.0/100.0; d3d_fogcolor1.blue = sun_light*255.0/100.0; } /*if (key_l) { while(key_l) wait(1); shake(); }*/ if (key_esc) { while(key_esc) wait(1); break; } wait(1); } isGameOver = 0; backToMenu(); }