Commit 30bd2e29 authored by 柯南's avatar 柯南 Committed by fallenstardust

新命令

parent e581c9bc
...@@ -8,6 +8,14 @@ int enable_log = 0; ...@@ -8,6 +8,14 @@ int enable_log = 0;
bool exit_on_return = false; bool exit_on_return = false;
bool bot_mode = false; bool bot_mode = false;
void ClickButton(irr::gui::IGUIElement* btn) {
irr::SEvent event;
event.EventType = irr::EET_GUI_EVENT;
event.GUIEvent.EventType = irr::gui::EGET_BUTTON_CLICKED;
event.GUIEvent.Caller = btn;
ygo::mainGame->device->postEventFromUser(event);
}
#ifdef _IRR_ANDROID_PLATFORM_ #ifdef _IRR_ANDROID_PLATFORM_
int GetListBoxIndex(IGUIListBox* listbox, const wchar_t* target){ int GetListBoxIndex(IGUIListBox* listbox, const wchar_t* target){
int count = listbox->getItemCount(); int count = listbox->getItemCount();
...@@ -42,6 +50,8 @@ int main(int argc, char* argv[]) { ...@@ -42,6 +50,8 @@ int main(int argc, char* argv[]) {
* -d: deck edit * -d: deck edit
* -r: replay * -r: replay
*/ */
bool keep_on_return = false;
bool open_file = false;
#ifdef _IRR_ANDROID_PLATFORM_ #ifdef _IRR_ANDROID_PLATFORM_
//android //android
for(int i = 0; i < argc; ++i) { for(int i = 0; i < argc; ++i) {
...@@ -53,22 +63,21 @@ int main(int argc, char* argv[]) { ...@@ -53,22 +63,21 @@ int main(int argc, char* argv[]) {
#endif #endif
if(arg[0] == '-' && arg[1] == 'e') { if(arg[0] == '-' && arg[1] == 'e') {
ygo::dataManager.LoadDB(&arg[2]); ygo::dataManager.LoadDB(&arg[2]);
} else if(!strcmp(arg, "-j") || !strcmp(arg, "-d") || !strcmp(arg, "-r") || !strcmp(arg, "-s")) { } else if(!strcmp(arv, "-k")) { // Keep on return
exit_on_return = true; exit_on_return = false;
irr::SEvent event; keep_on_return = true;
event.EventType = irr::EET_GUI_EVENT;
event.GUIEvent.EventType = irr::gui::EGET_BUTTON_CLICKED;
} else if(!strcmp(arg, "-c")) { // Create host } else if(!strcmp(arg, "-c")) { // Create host
exit_on_return = !keep_on_return;
ygo::mainGame->HideElement(ygo::mainGame->wMainMenu); ygo::mainGame->HideElement(ygo::mainGame->wMainMenu);
event.GUIEvent.Caller = ygo::mainGame->btnJoinHost; ClickButton(ygo::mainGame->btnJoinHost);
ygo::mainGame->device->postEventFromUser(event);
break; break;
} else if(!strcmp(arg, "-j")) { // Join host } else if(!strcmp(arg, "-j")) { // Join host
event.GUIEvent.Caller = ygo::mainGame->btnJoinHost; exit_on_return = !keep_on_return;
ygo::mainGame->HideElement(ygo::mainGame->wMainMenu); ygo::mainGame->HideElement(ygo::mainGame->wMainMenu);
ygo::mainGame->device->postEventFromUser(event); ClickButton(ygo::mainGame->btnJoinHost);
break; break;
} else if(!strcmp(arg, "-r")) { // Replay } else if(!strcmp(arg, "-r")) { // Replay
exit_on_return = !keep_on_return;
int index = 0; int index = 0;
if((i+1) < argc){//下一个参数是录像名 if((i+1) < argc){//下一个参数是录像名
#ifdef _IRR_ANDROID_PLATFORM_ #ifdef _IRR_ANDROID_PLATFORM_
...@@ -78,17 +87,19 @@ int main(int argc, char* argv[]) { ...@@ -78,17 +87,19 @@ int main(int argc, char* argv[]) {
#endif #endif
wchar_t fname[1024]; wchar_t fname[1024];
BufferIO::DecodeUTF8(name, fname); BufferIO::DecodeUTF8(name, fname);
open_file = true;
index = GetListBoxIndex(ygo::mainGame->lstReplayList, fname); index = GetListBoxIndex(ygo::mainGame->lstReplayList, fname);
exit_on_return = true;//看完就退出
} }
event.GUIEvent.Caller = ygo::mainGame->btnReplayMode; ClickButton(ygo::mainGame->btnReplayMode);
ygo::mainGame->device->postEventFromUser(event); if(open_file){
ygo::mainGame->lstReplayList->setSelected(index); ygo::mainGame->lstReplayList->setSelected(index);
event.GUIEvent.Caller = ygo::mainGame->btnLoadReplay; ClickButton(ygo::mainGame->btnLoadReplay);
ygo::mainGame->device->postEventFromUser(event); }
break;//只播放一个 break;//只播放一个
} else if(!strcmp(arg, "-s")) { // Single } else if(!strcmp(arg, "-s")) { // Single
exit_on_return = !keep_on_return;
int index = 0; int index = 0;
if((i+1) < argc){//下一个参数是文件名 if((i+1) < argc){//下一个参数是文件名
#ifdef _IRR_ANDROID_PLATFORM_ #ifdef _IRR_ANDROID_PLATFORM_
...@@ -98,15 +109,15 @@ int main(int argc, char* argv[]) { ...@@ -98,15 +109,15 @@ int main(int argc, char* argv[]) {
#endif #endif
wchar_t fname[1024]; wchar_t fname[1024];
BufferIO::DecodeUTF8(name, fname); BufferIO::DecodeUTF8(name, fname);
open_file = true;
index = GetListBoxIndex(ygo::mainGame->lstReplayList, fname); index = GetListBoxIndex(ygo::mainGame->lstReplayList, fname);
//exit_on_return = true;//一次性
} }
event.GUIEvent.Caller = ygo::mainGame->btnSingleMode; ClickButton(ygo::mainGame->btnSingleMode);
ygo::mainGame->device->postEventFromUser(event); if(open_file){
ygo::mainGame->lstSinglePlayList->setSelected(index); ygo::mainGame->lstSinglePlayList->setSelected(index);
event.GUIEvent.Caller = ygo::mainGame->btnLoadSinglePlay; ClickButton(ygo::mainGame->btnLoadSinglePlay);
ygo::mainGame->device->postEventFromUser(event); }
break; break;
} }
} }
......
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