Example #1
0
/**
* Load stuff from the currently loaded mods into some arrays.
**/
void Menu::loadModBits(UIUpdate* ui)
{
	Mod* mod = GEng()->mm->getSupplOrBase();

	this->gm->loadModBits(ui);

	// Logo
	delete(this->logo);
	this->logo = this->render->loadSprite("menu/logo.png", mod);
	if (!this->logo) {
		this->logo = this->render->loadSprite("menu/logo.png", GEng()->mm->getBase());
	}

	// Background
	delete(this->bg);
	this->bg = this->render->loadSprite("menu/bg.jpg", mod);
	if (!this->bg) {
		this->bg = this->render->loadSprite("menu/bg.jpg", GEng()->mm->getBase());
	}

	// Rotating model
	delete(this->play);
	this->model = NULL;
	this->play = NULL;
	if (!mod->getMenuModelName().empty()) {
		this->model_rot = -10.0f;
		this->model = mod->getAssimpModel(mod->getMenuModelName());
		if (this->model != NULL) {
			this->play = new AnimPlay(this->model);
		}
	}

	// Font always loaded from base mod
	if (this->font == NULL) {
		this->font = new OpenGLFont(this->render, "DejaVuSans", GEng()->mm->getBase(), 20.0f * GEng()->gui_scale);
	}

	this->loadMenuItems();
}