Engine::Engine() { Sanguosha = this; lua = CreateLuaState(); DoLuaScript(lua, "lua/config.lua"); QStringList package_names = GetConfigFromLuaState(lua, "package_names").toStringList(); foreach(QString name, package_names) if(name != "ThreeKingdoms") addPackage(name); addPackage("ThreeKingdoms"); QStringList scene_names = GetConfigFromLuaState(lua, "scene_names").toStringList(); foreach(QString name, scene_names) addScenario(name); DoLuaScript(lua, "lua/sanguosha.lua"); // available game modes modes["02p"] = tr("2 players"); //modes["02pbb"] = tr("2 players (using blance beam)"); modes["02_1v1"] = tr("2 players (KOF style)"); modes["03p"] = tr("3 players"); modes["03_3kingdoms"] = tr("3 players(3 kingdoms mode)"); modes["04p"] = tr("4 players"); modes["04_1v3"] = tr("4 players (Hulao Pass)"); modes["05p"] = tr("5 players"); modes["06p"] = tr("6 players"); modes["06_3v3"] = tr("6 players (3v3)"); modes["06pd"] = tr("6 players (2 renegades)"); modes["07p"] = tr("7 players"); modes["08p"] = tr("8 players"); modes["08pd"] = tr("8 players (2 renegades)"); modes["08pz"] = tr("8 players (0 renegade)"); modes["09p"] = tr("9 players"); modes["10pd"] = tr("10 players"); modes["10p"] = tr("10 players (1 renegade)"); modes["10pz"] = tr("10 players (0 renegade)"); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(deleteLater())); foreach(QString ban, getBanPackages()){ addBanPackage(ban); }
Engine::Engine() { Sanguosha = this; lua = CreateLuaState(); DoLuaScript(lua, "lua/config.lua"); QStringList package_names = GetConfigFromLuaState(lua, "package_names").toStringList(); foreach(QString name, package_names) addPackage(name); QStringList scene_names = GetConfigFromLuaState(lua, "scene_names").toStringList(); foreach(QString name, scene_names) addScenario(name); DoLuaScript(lua, "lua/sanguosha.lua"); // available game modes modes["02p"] = tr("2 players"); //modes["02pbb"] = tr("2 players (using blance beam)"); modes["02_1v1"] = tr("2 players (KOF style)"); modes["03p"] = tr("3 players"); modes["04p"] = tr("4 players"); modes["04_1v3"] = tr("4 players (Hulao Pass)"); modes["05p"] = tr("5 players"); modes["05_2v3"] = tr("5 players (Changban Slope)"); modes["06p"] = tr("6 players"); modes["06pd"] = tr("6 players (2 renegades)"); modes["06_3v3"] = tr("6 players (3v3)"); modes["07p"] = tr("7 players"); modes["08p"] = tr("8 players"); modes["08pd"] = tr("8 players (2 renegades)"); modes["08pz"] = tr("8 players (0 renegade)"); modes["09p"] = tr("9 players"); modes["10pd"] = tr("10 players"); modes["10p"] = tr("10 players (1 renegade)"); modes["10pz"] = tr("10 players (0 renegade)"); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(deleteLater())); foreach(QString ban, getBanPackages()) addBanPackage(ban); foreach(const Skill *skill, skills.values()){ Skill *mutable_skill = const_cast<Skill *>(skill); mutable_skill->initMediaSource(); } }
AboutUsDialog::AboutUsDialog(QWidget *parent) : QDialog(parent) { setWindowTitle(tr("About Us")); resize(800, 600); list = new QListWidget; list->setMaximumWidth(150); content_box = new QTextBrowser; content_box->setOpenExternalLinks(true); content_box->setProperty("description", true); QHBoxLayout *layout = new QHBoxLayout; layout->addWidget(content_box); layout->addWidget(list); setLayout(layout); QStringList developers = GetConfigFromLuaState(Sanguosha->getLuaState(), "developers").toStringList(); developers.prepend(tr("QSanguosha-Hegemony-V2")); foreach (QString name, developers) { QListWidgetItem *item = new QListWidgetItem(name, list); item->setData(Qt::UserRole, name); }
Engine::Engine() { Sanguosha = this; lua = CreateLuaState(); if (!DoLuaScript(lua, "lua/config.lua")) exit(1); QStringList stringlist_sp_convert = GetConfigFromLuaState(lua, "convert_pairs").toStringList(); foreach (QString cv_pair, stringlist_sp_convert) { QStringList pairs = cv_pair.split("->"); QStringList cv_to = pairs.at(1).split("|"); foreach (QString to, cv_to) sp_convert_pairs.insertMulti(pairs.at(0), to); }
void CompanionTable::init() { QStringList companionList = GetConfigFromLuaState(Sanguosha->getLuaState(), "companion_pairs").toStringList(); foreach (const QString &companions, companionList) { QStringList ones_others = companions.split("+"); QStringList ones = ones_others.first().split("|"); QStringList others = ones_others.last().split("|"); foreach (const QString &one, ones) { m_companions[one] += others.toSet(); } foreach (const QString &other, others) { m_companions[other] += ones.toSet(); } }
Engine::Engine() { Sanguosha = this; lua = CreateLuaState(); if (!DoLuaScript(lua, "lua/config.lua")) exit(1); QStringList stringlist_sp_convert = GetConfigFromLuaState(lua, "convert_pairs").toStringList(); foreach (QString cv_pair, stringlist_sp_convert) { QStringList pairs = cv_pair.split("->"); QStringList cv_to = pairs.at(1).split("|"); foreach (QString to, cv_to) sp_convert_pairs.insertMulti(pairs.at(0), to); } extra_hidden_generals = GetConfigFromLuaState(lua, "extra_hidden_generals").toStringList(); removed_hidden_generals = GetConfigFromLuaState(lua, "removed_hidden_generals").toStringList(); extra_default_lords = GetConfigFromLuaState(lua, "extra_default_lords").toStringList(); removed_default_lords = GetConfigFromLuaState(lua, "removed_default_lords").toStringList(); QStringList package_names = GetConfigFromLuaState(lua, "package_names").toStringList(); foreach (QString name, package_names) addPackage(name); _loadMiniScenarios(); _loadModScenarios(); m_customScene = new CustomScenario; if (!DoLuaScript(lua, "lua/sanguosha.lua")) exit(1); // available game modes
Engine::Engine() { Sanguosha = this; lua = CreateLuaState(); DoLuaScript(lua, "lua/config.lua"); QStringList stringlist_sp_convert = GetConfigFromLuaState(lua, "convert_pairs").toStringList(); foreach (QString cv_pair, stringlist_sp_convert) { QStringList pairs = cv_pair.split("->"); QStringList cv_to = pairs.at(1).split("|"); foreach (QString to, cv_to) sp_convert_pairs.insertMulti(pairs.at(0), to); } QStringList package_names = GetConfigFromLuaState(lua, "package_names").toStringList(); foreach (QString name, package_names) addPackage(name); _loadMiniScenarios(); _loadModScenarios(); m_customScene = new CustomScenario(); DoLuaScript(lua, "lua/sanguosha.lua"); // available game modes modes["02p"] = tr("2 players"); modes["03p"] = tr("3 players"); modes["04p"] = tr("4 players"); modes["05p"] = tr("5 players"); modes["06p"] = tr("6 players");
void Settings::init() { if (!qApp->arguments().contains("-server")) { QString font_path = value("DefaultFontPath", "font/simli.ttf").toString(); int font_id = QFontDatabase::addApplicationFont(font_path); if (font_id != -1) { QString font_family = QFontDatabase::applicationFontFamilies(font_id).first(); BigFont.setFamily(font_family); SmallFont.setFamily(font_family); TinyFont.setFamily(font_family); } else QMessageBox::warning(NULL, tr("Warning"), tr("Font file %1 could not be loaded!").arg(font_path)); BigFont.setPixelSize(56); SmallFont.setPixelSize(27); TinyFont.setPixelSize(18); SmallFont.setWeight(QFont::Bold); AppFont = value("AppFont", QApplication::font("QMainWindow")).value<QFont>(); UIFont = value("UIFont", QApplication::font("QTextEdit")).value<QFont>(); TextEditColor = QColor(value("TextEditColor", "white").toString()); SkillDescriptionInToolTipColor = value("SkillDescriptionInToolTipColor", "#FFFF33").toString(); SkillDescriptionInOverviewColor = value("SkillDescriptionInOverviewColor", "#FF0080").toString(); ToolTipBackgroundColor = value("ToolTipBackgroundColor", "#000000").toString(); } CountDownSeconds = value("CountDownSeconds", 3).toInt(); GameMode = value("GameMode", "02p").toString(); QStringList banpackagelist = value("BanPackages").toStringList(); setValue("BanPackages", banpackagelist); BanPackages = value("BanPackages").toStringList(); RandomSeat = value("RandomSeat", true).toBool(); EnableCheat = value("EnableCheat", false).toBool(); FreeChoose = EnableCheat && value("FreeChoose", false).toBool(); ForbidSIMC = value("ForbidSIMC", false).toBool(); DisableChat = value("DisableChat", false).toBool(); Enable2ndGeneral = true; EnableBasara = true; EnableHegemony = true; Address = value("Address", QString()).toString(); EnableAI = value("EnableAI", true).toBool(); OriginAIDelay = value("OriginAIDelay", 1000).toInt(); AlterAIDelayAD = value("AlterAIDelayAD", false).toBool(); AIDelayAD = value("AIDelayAD", 0).toInt(); SurrenderAtDeath = value("SurrenderAtDeath", false).toBool(); LuckCardLimitation = value("LuckCardLimitation", 0).toInt(); ServerPort = value("ServerPort", 9527u).toUInt(); DisableLua = value("DisableLua", false).toBool(); #ifdef Q_OS_WIN32 UserName = value("UserName", qgetenv("USERNAME")).toString(); #else UserName = value("USERNAME", qgetenv("USER")).toString(); #endif if (UserName == "Admin" || UserName == "Administrator") UserName = tr("Sanguosha-fans"); ServerName = value("ServerName", tr("%1's server").arg(UserName)).toString(); HostAddress = value("HostAddress", "127.0.0.1").toString(); UserAvatar = value("UserAvatar", "zhouyu").toString(); HistoryIPs = value("HistoryIPs").toStringList(); DetectorPort = value("DetectorPort", 9526u).toUInt(); MaxCards = value("MaxCards", 15).toInt(); EnableHotKey = value("EnableHotKey", true).toBool(); NeverNullifyMyTrick = value("NeverNullifyMyTrick", true).toBool(); EnableMinimizeDialog = value("EnableMinimizeDialog", false).toBool(); EnableAutoTarget = value("EnableAutoTarget", true).toBool(); EnableIntellectualSelection = value("EnableIntellectualSelection", true).toBool(); EnableDoubleClick = value("EnableDoubleClick", false).toBool(); NullificationCountDown = value("NullificationCountDown", 8).toInt(); OperationTimeout = value("OperationTimeout", 15).toInt(); OperationNoLimit = value("OperationNoLimit", false).toBool(); EnableEffects = value("EnableEffects", true).toBool(); EnableLastWord = value("EnableLastWord", true).toBool(); EnableBgMusic = value("EnableBgMusic", true).toBool(); BGMVolume = value("BGMVolume", 1.0f).toFloat(); EffectVolume = value("EffectVolume", 1.0f).toFloat(); BackgroundImage = value("BackgroundImage", "image/backdrop/new-version.jpg").toString(); TableBgImage = value("TableBgImage", "image/backdrop/default.jpg").toString(); EnableAutoSaveRecord = value("EnableAutoSaveRecord", false).toBool(); NetworkOnly = value("NetworkOnly", false).toBool(); RecordSavePaths = value("RecordSavePaths", "records/").toBool();; lua_State *lua = Sanguosha->getLuaState(); Config.ExtraHiddenGenerals = GetConfigFromLuaState(lua, "extra_hidden_generals").toStringList(); Config.RemovedHiddenGenerals = GetConfigFromLuaState(lua, "removed_hidden_generals").toStringList(); }