Commit d87ab6af authored by fallenstardust's avatar fallenstardust

add masterrule 2020

update strings.conf
parent e0395b91
...@@ -133,7 +133,7 @@ void DuelClient::ClientEvent(bufferevent *bev, short events, void *ctx) { ...@@ -133,7 +133,7 @@ void DuelClient::ClientEvent(bufferevent *bev, short events, void *ctx) {
cscg.info.draw_count = 1; cscg.info.draw_count = 1;
cscg.info.time_limit = 0; cscg.info.time_limit = 0;
cscg.info.lflist = 0; cscg.info.lflist = 0;
cscg.info.duel_rule = mainGame->chkBotOldRule->isChecked() ? DEFAULT_DUEL_RULE - 1 : DEFAULT_DUEL_RULE; cscg.info.duel_rule = mainGame->cbBotRule->getSelected() + 3;
cscg.info.no_check_deck = mainGame->chkBotNoCheckDeck->isChecked(); cscg.info.no_check_deck = mainGame->chkBotNoCheckDeck->isChecked();
cscg.info.no_shuffle_deck = mainGame->chkBotNoShuffleDeck->isChecked(); cscg.info.no_shuffle_deck = mainGame->chkBotNoShuffleDeck->isChecked();
} }
......
...@@ -286,7 +286,8 @@ bool Game::Initialize() { ...@@ -286,7 +286,8 @@ bool Game::Initialize() {
cbDuelRule->addItem(dataManager.GetSysString(1261)); cbDuelRule->addItem(dataManager.GetSysString(1261));
cbDuelRule->addItem(dataManager.GetSysString(1262)); cbDuelRule->addItem(dataManager.GetSysString(1262));
cbDuelRule->addItem(dataManager.GetSysString(1263)); cbDuelRule->addItem(dataManager.GetSysString(1263));
cbDuelRule->setSelected(DEFAULT_DUEL_RULE - 1); cbDuelRule->addItem(dataManager.GetSysString(1264));
cbDuelRule->setSelected(gameConf.default_rule - 1);
chkNoCheckDeck = env->addCheckBox(false, rect<s32>(20 * xScale, 325 * yScale, 170 * xScale, 350 * yScale), wCreateHost, -1, dataManager.GetSysString(1229)); chkNoCheckDeck = env->addCheckBox(false, rect<s32>(20 * xScale, 325 * yScale, 170 * xScale, 350 * yScale), wCreateHost, -1, dataManager.GetSysString(1229));
chkNoShuffleDeck = env->addCheckBox(false, rect<s32>(180 * xScale, 325 * yScale, 360 * xScale, 350 * yScale), wCreateHost, -1, dataManager.GetSysString(1230)); chkNoShuffleDeck = env->addCheckBox(false, rect<s32>(180 * xScale, 325 * yScale, 360 * xScale, 350 * yScale), wCreateHost, -1, dataManager.GetSysString(1230));
env->addStaticText(dataManager.GetSysString(1231), rect<s32>(20 * xScale, 370 * yScale, 320 * xScale, 405 * yScale), false, false, wCreateHost); env->addStaticText(dataManager.GetSysString(1231), rect<s32>(20 * xScale, 370 * yScale, 320 * xScale, 405 * yScale), false, false, wCreateHost);
...@@ -898,7 +899,11 @@ bool Game::Initialize() { ...@@ -898,7 +899,11 @@ bool Game::Initialize() {
btnBotCancel = env->addButton(rect<s32>(460 * xScale, 310 * yScale, 570 * xScale, 350 * yScale), tabBot, BUTTON_CANCEL_SINGLEPLAY, dataManager.GetSysString(1210)); btnBotCancel = env->addButton(rect<s32>(460 * xScale, 310 * yScale, 570 * xScale, 350 * yScale), tabBot, BUTTON_CANCEL_SINGLEPLAY, dataManager.GetSysString(1210));
env->addStaticText(dataManager.GetSysString(1382), rect<s32>(360 * xScale, 10 * yScale, 550 * xScale, 30 * yScale), false, true, tabBot); env->addStaticText(dataManager.GetSysString(1382), rect<s32>(360 * xScale, 10 * yScale, 550 * xScale, 30 * yScale), false, true, tabBot);
stBotInfo = env->addStaticText(L"", rect<s32>(360 * xScale, 40 * yScale, 560 * xScale, 160 * yScale), false, true, tabBot); stBotInfo = env->addStaticText(L"", rect<s32>(360 * xScale, 40 * yScale, 560 * xScale, 160 * yScale), false, true, tabBot);
chkBotOldRule = env->addCheckBox(false, rect<s32>(360 * xScale, 100 * yScale, 560 * xScale, 130 * yScale), tabBot, CHECKBOX_BOT_OLD_RULE, dataManager.GetSysString(1383)); cbBotRule = CAndroidGUIComboBox::addAndroidComboBox(env, rect<s32>(360 * xScale, 100 * yScale, 560 * xScale, 130 * yScale), tabBot, COMBOBOX_BOT_RULE);
cbBotRule->addItem(dataManager.GetSysString(1262));
cbBotRule->addItem(dataManager.GetSysString(1263));
cbBotRule->addItem(dataManager.GetSysString(1264));
cbBotRule->setSelected(gameConf.default_rule - 3);
chkBotHand = env->addCheckBox(false, rect<s32>(360 * xScale, 140 * yScale, 560 * xScale, 170 * yScale), tabBot, -1, dataManager.GetSysString(1384)); chkBotHand = env->addCheckBox(false, rect<s32>(360 * xScale, 140 * yScale, 560 * xScale, 170 * yScale), tabBot, -1, dataManager.GetSysString(1384));
chkBotNoCheckDeck = env->addCheckBox(false, rect<s32>(360 * xScale, 180 * yScale, 560 * xScale, 210 * yScale), tabBot, -1, dataManager.GetSysString(1229)); chkBotNoCheckDeck = env->addCheckBox(false, rect<s32>(360 * xScale, 180 * yScale, 560 * xScale, 210 * yScale), tabBot, -1, dataManager.GetSysString(1229));
chkBotNoShuffleDeck = env->addCheckBox(false, rect<s32>(360 * xScale, 220 * yScale, 560 * xScale, 250 * yScale), tabBot, -1, dataManager.GetSysString(1230)); chkBotNoShuffleDeck = env->addCheckBox(false, rect<s32>(360 * xScale, 220 * yScale, 560 * xScale, 250 * yScale), tabBot, -1, dataManager.GetSysString(1230));
...@@ -1431,8 +1436,11 @@ void Game::RefreshBot() { ...@@ -1431,8 +1436,11 @@ void Game::RefreshBot() {
fgets(linebuf, 256, fp); fgets(linebuf, 256, fp);
newinfo.support_master_rule_3 = !!strstr(linebuf, "SUPPORT_MASTER_RULE_3"); newinfo.support_master_rule_3 = !!strstr(linebuf, "SUPPORT_MASTER_RULE_3");
newinfo.support_new_master_rule = !!strstr(linebuf, "SUPPORT_NEW_MASTER_RULE"); newinfo.support_new_master_rule = !!strstr(linebuf, "SUPPORT_NEW_MASTER_RULE");
if((chkBotOldRule->isChecked() && newinfo.support_master_rule_3) newinfo.support_master_rule_2020 = !!strstr(linebuf, "SUPPORT_MASTER_RULE_2020");
|| (!chkBotOldRule->isChecked() && newinfo.support_new_master_rule)) int rule = cbBotRule->getSelected() + 3;
if((rule == 3 && newinfo.support_master_rule_3)
|| (rule == 4 && newinfo.support_new_master_rule)
|| (rule == 5 && newinfo.support_master_rule_2020))
botInfo.push_back(newinfo); botInfo.push_back(newinfo);
continue; continue;
} }
...@@ -1489,6 +1497,7 @@ void Game::LoadConfig() { ...@@ -1489,6 +1497,7 @@ void Game::LoadConfig() {
gameConf.music_volume = android::getIntSetting(appMain, "music_volume", 50); gameConf.music_volume = android::getIntSetting(appMain, "music_volume", 50);
gameConf.music_mode = android::getIntSetting(appMain, "music_mode", 1); gameConf.music_mode = android::getIntSetting(appMain, "music_mode", 1);
//defult Setting without checked //defult Setting without checked
gameConf.default_rule = DEFAULT_DUEL_RULE;
gameConf.hide_setname = 0; gameConf.hide_setname = 0;
gameConf.hide_hint_button = 0; gameConf.hide_hint_button = 0;
gameConf.separate_clear_button = 1; gameConf.separate_clear_button = 1;
......
...@@ -37,6 +37,7 @@ struct Config { ...@@ -37,6 +37,7 @@ struct Config {
int chkWaitChain; int chkWaitChain;
int chkIgnore1; int chkIgnore1;
int chkIgnore2; int chkIgnore2;
int default_rule;
int hide_setname; int hide_setname;
int hide_hint_button; int hide_hint_button;
int control_mode; int control_mode;
...@@ -99,6 +100,7 @@ struct BotInfo { ...@@ -99,6 +100,7 @@ struct BotInfo {
wchar_t desc[256]; wchar_t desc[256];
bool support_master_rule_3; bool support_master_rule_3;
bool support_new_master_rule; bool support_new_master_rule;
bool support_master_rule_2020;
}; };
struct FadingUnit { struct FadingUnit {
...@@ -349,7 +351,7 @@ public: ...@@ -349,7 +351,7 @@ public:
irr::gui::IGUIStaticText* stBotInfo; irr::gui::IGUIStaticText* stBotInfo;
irr::gui::IGUIButton* btnStartBot; irr::gui::IGUIButton* btnStartBot;
irr::gui::IGUIButton* btnBotCancel; irr::gui::IGUIButton* btnBotCancel;
irr::gui::IGUICheckBox* chkBotOldRule; irr::gui::IGUIComboBox* cbBotRule;
irr::gui::IGUICheckBox* chkBotHand; irr::gui::IGUICheckBox* chkBotHand;
irr::gui::IGUICheckBox* chkBotNoCheckDeck; irr::gui::IGUICheckBox* chkBotNoCheckDeck;
irr::gui::IGUICheckBox* chkBotNoShuffleDeck; irr::gui::IGUICheckBox* chkBotNoShuffleDeck;
...@@ -662,7 +664,7 @@ private: ...@@ -662,7 +664,7 @@ private:
#define BUTTON_CANCEL_SINGLEPLAY 152 #define BUTTON_CANCEL_SINGLEPLAY 152
#define LISTBOX_BOT_LIST 153 #define LISTBOX_BOT_LIST 153
#define BUTTON_BOT_START 154 #define BUTTON_BOT_START 154
#define CHECKBOX_BOT_OLD_RULE 155 #define COMBOBOX_BOT_RULE 155
#define EDITBOX_CHAT 199 #define EDITBOX_CHAT 199
#define BUTTON_MSG_OK 200 #define BUTTON_MSG_OK 200
......
...@@ -565,6 +565,10 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -565,6 +565,10 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
} }
case irr::gui::EGET_COMBO_BOX_CHANGED: { case irr::gui::EGET_COMBO_BOX_CHANGED: {
switch(id) { switch(id) {
case COMBOBOX_BOT_RULE: {
mainGame->RefreshBot();
break;
}
case COMBOBOX_HP_CATEGORY: { case COMBOBOX_HP_CATEGORY: {
int catesel = mainGame->cbCategorySelect->getSelected(); int catesel = mainGame->cbCategorySelect->getSelected();
if(catesel == 3) { if(catesel == 3) {
...@@ -603,10 +607,6 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -603,10 +607,6 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
} }
break; break;
} }
case CHECKBOX_BOT_OLD_RULE: {
mainGame->RefreshBot();
break;
}
} }
break; break;
} }
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
!system 94 是否现在使用这张卡的效果? !system 94 是否现在使用这张卡的效果?
!system 95 是否使用[%ls]的效果? !system 95 是否使用[%ls]的效果?
!system 96 是否使用[%ls]的效果代替破坏? !system 96 是否使用[%ls]的效果代替破坏?
!system 97 是否把[%ls]在魔法与陷阱区域盖放 !system 97 是否把[%ls]在魔法与陷阱区域放置
!system 98 是否要解放对方怪兽? !system 98 是否要解放对方怪兽?
!system 100 先攻 !system 100 先攻
!system 101 后攻 !system 101 后攻
...@@ -311,6 +311,7 @@ ...@@ -311,6 +311,7 @@
!system 1261 大师规则2 !system 1261 大师规则2
!system 1262 大师规则3 !system 1262 大师规则3
!system 1263 新大师规则 !system 1263 新大师规则
!system 1264 大师规则2020
!system 1270 卡片信息 !system 1270 卡片信息
!system 1271 消息记录 !system 1271 消息记录
!system 1272 清除记录 !system 1272 清除记录
...@@ -411,7 +412,6 @@ ...@@ -411,7 +412,6 @@
!system 1380 人机模式 !system 1380 人机模式
!system 1381 残局模式 !system 1381 残局模式
!system 1382 人机信息: !system 1382 人机信息:
!system 1383 使用旧规则(大师规则3)
!system 1384 电脑锁定出剪刀 !system 1384 电脑锁定出剪刀
!system 1385 列表为空,可能误删了文件,请卸载重装或者清除应用数据重启 !system 1385 列表为空,可能误删了文件,请卸载重装或者清除应用数据重启
!system 1390 等待行动中... !system 1390 等待行动中...
...@@ -1009,3 +1009,4 @@ ...@@ -1009,3 +1009,4 @@
!setname 0x138 巨石遗物 メガリス !setname 0x138 巨石遗物 メガリス
!setname 0x139 守护神官 守護神官 !setname 0x139 守护神官 守護神官
!setname 0x13a 拟声 オノマト !setname 0x13a 拟声 オノマト
!setname 0x13b 叛逆 リベリオン
...@@ -311,6 +311,7 @@ ...@@ -311,6 +311,7 @@
!system 1261 Master Rules 2 !system 1261 Master Rules 2
!system 1262 Master Rules 3 !system 1262 Master Rules 3
!system 1263 New Master Rules !system 1263 New Master Rules
!system 1264 Master Rules 2020
!system 1270 Card !system 1270 Card
!system 1271 Log !system 1271 Log
!system 1272 Clear Log !system 1272 Clear Log
...@@ -408,7 +409,6 @@ ...@@ -408,7 +409,6 @@
!system 1380 Single Mode !system 1380 Single Mode
!system 1381 Puzzle Mode !system 1381 Puzzle Mode
!system 1382 Single Options: !system 1382 Single Options:
!system 1383 Master Rules 3
!system 1384 Always plays scissors !system 1384 Always plays scissors
!system 1385 Empty List !system 1385 Empty List
!system 1390 Waiting... !system 1390 Waiting...
...@@ -999,3 +999,4 @@ ...@@ -999,3 +999,4 @@
!setname 0x138 Megalith !setname 0x138 Megalith
!setname 0x139 Palladium Oracle !setname 0x139 Palladium Oracle
!setname 0x13a Onomato !setname 0x13a Onomato
!setname 0x13b Rebellion
...@@ -310,7 +310,8 @@ ...@@ -310,7 +310,8 @@
!system 1260 마스터룰1 !system 1260 마스터룰1
!system 1261 마스터룰2 !system 1261 마스터룰2
!system 1262 마스터룰3 !system 1262 마스터룰3
!system 1263 마스터룰4 !system 1263 new마스터룰
!system 1263 마스터룰2020
!system 1270 카드 정보 !system 1270 카드 정보
!system 1271 로그 !system 1271 로그
!system 1272 로그 지우기 !system 1272 로그 지우기
...@@ -402,7 +403,6 @@ ...@@ -402,7 +403,6 @@
!system 1372 수비력↑ !system 1372 수비력↑
!system 1373 이름↓ !system 1373 이름↓
!system 1374 링크 마커 !system 1374 링크 마커
!system 1379 확장팩 스크립트 사용하기
!system 1380 AI 모드 !system 1380 AI 모드
!system 1381 퍼즐 모드 !system 1381 퍼즐 모드
!system 1382 AI 정보: !system 1382 AI 정보:
...@@ -1001,4 +1001,5 @@ ...@@ -1001,4 +1001,5 @@
!setname 0x137 전화 !setname 0x137 전화
!setname 0x138 메가리스 !setname 0x138 메가리스
!setname 0x139 오노마토 !setname 0x139 오노마토
!setname 0x13a 수호신관 !setname 0x13a 수호신관
\ No newline at end of file !setname 0x13b 리벨리온
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment