Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-2pick
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
ygopro-2pick
Commits
146f9952
Commit
146f9952
authored
Nov 17, 2018
by
nanahira
Browse files
Options
Browse Files
Download
Plain Diff
catchup
parents
db64011c
4a5626ea
Changes
13
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
95 additions
and
39 deletions
+95
-39
gframe/client_card.cpp
gframe/client_card.cpp
+1
-1
gframe/client_field.cpp
gframe/client_field.cpp
+4
-4
gframe/data_manager.cpp
gframe/data_manager.cpp
+6
-1
gframe/deck_con.cpp
gframe/deck_con.cpp
+6
-3
gframe/duelclient.cpp
gframe/duelclient.cpp
+4
-7
gframe/event_handler.cpp
gframe/event_handler.cpp
+7
-0
gframe/game.cpp
gframe/game.cpp
+43
-5
gframe/game.h
gframe/game.h
+7
-2
gframe/menu_handler.cpp
gframe/menu_handler.cpp
+2
-2
gframe/single_mode.cpp
gframe/single_mode.cpp
+4
-7
script
script
+1
-1
strings.conf
strings.conf
+7
-6
system.conf
system.conf
+3
-0
No files found.
gframe/client_card.cpp
View file @
146f9952
...
...
@@ -126,7 +126,7 @@ void ClientCard::UpdateInfo(char* buf) {
if
(
flag
&
QUERY_REASON
)
reason
=
BufferIO
::
ReadInt32
(
buf
);
if
(
flag
&
QUERY_REASON_CARD
)
BufferIO
::
ReadInt32
(
buf
)
;
buf
+=
4
;
if
(
flag
&
QUERY_EQUIP_CARD
)
{
int
c
=
BufferIO
::
ReadInt8
(
buf
);
int
l
=
BufferIO
::
ReadInt8
(
buf
);
...
...
gframe/client_field.cpp
View file @
146f9952
...
...
@@ -1477,11 +1477,11 @@ void ClientField::UpdateDeclarableCodeType(bool enter) {
return
;
}
for
(
auto
cit
=
dataManager
.
_strings
.
begin
();
cit
!=
dataManager
.
_strings
.
end
();
++
cit
)
{
if
(
cit
->
second
.
name
.
find
(
pname
)
!=
std
::
wstring
::
npos
)
{
if
(
cit
->
second
.
name
.
find
(
pname
)
!=
std
::
wstring
::
npos
||
mainGame
->
CheckRegEx
(
cit
->
second
.
name
,
pname
)
)
{
auto
cp
=
dataManager
.
GetCodePointer
(
cit
->
first
);
//verified by _strings
//datas.alias can be double card names or alias
if
(
is_declarable
(
cp
->
second
,
declarable_type
))
{
if
(
pname
==
cit
->
second
.
name
)
{
//exact match
if
(
pname
==
cit
->
second
.
name
||
mainGame
->
CheckRegEx
(
cit
->
second
.
name
,
pname
,
true
)
)
{
//exact match
mainGame
->
lstANCard
->
insertItem
(
0
,
cit
->
second
.
name
.
c_str
(),
-
1
);
ancard
.
insert
(
ancard
.
begin
(),
cit
->
first
);
}
else
{
...
...
@@ -1524,11 +1524,11 @@ void ClientField::UpdateDeclarableCodeOpcode(bool enter) {
return
;
}
for
(
auto
cit
=
dataManager
.
_strings
.
begin
();
cit
!=
dataManager
.
_strings
.
end
();
++
cit
)
{
if
(
cit
->
second
.
name
.
find
(
pname
)
!=
std
::
wstring
::
npos
)
{
if
(
cit
->
second
.
name
.
find
(
pname
)
!=
std
::
wstring
::
npos
||
mainGame
->
CheckRegEx
(
cit
->
second
.
name
,
pname
)
)
{
auto
cp
=
dataManager
.
GetCodePointer
(
cit
->
first
);
//verified by _strings
//datas.alias can be double card names or alias
if
(
is_declarable
(
cp
->
second
,
opcode
))
{
if
(
pname
==
cit
->
second
.
name
)
{
//exact match
if
(
pname
==
cit
->
second
.
name
||
mainGame
->
CheckRegEx
(
cit
->
second
.
name
,
pname
,
true
)
)
{
//exact match
mainGame
->
lstANCard
->
insertItem
(
0
,
cit
->
second
.
name
.
c_str
(),
-
1
);
ancard
.
insert
(
ancard
.
begin
(),
cit
->
first
);
}
else
{
...
...
gframe/data_manager.cpp
View file @
146f9952
#include "data_manager.h"
#include "game.h"
#include <stdio.h>
namespace
ygo
{
...
...
@@ -195,7 +196,11 @@ const wchar_t* DataManager::GetSetName(int code) {
unsigned
int
DataManager
::
GetSetCode
(
const
wchar_t
*
setname
)
{
for
(
auto
csit
=
_setnameStrings
.
begin
();
csit
!=
_setnameStrings
.
end
();
++
csit
)
{
auto
xpos
=
csit
->
second
.
find_first_of
(
L'|'
);
//setname|extra info
if
(
csit
->
second
.
compare
(
0
,
xpos
,
setname
)
==
0
)
if
(
csit
->
second
.
compare
(
0
,
xpos
,
setname
)
==
0
#ifndef YGOPRO_SERVER_MODE
||
mainGame
->
CheckRegEx
(
csit
->
second
,
setname
,
true
)
#endif
)
return
csit
->
first
;
}
return
0
;
...
...
gframe/deck_con.cpp
View file @
146f9952
...
...
@@ -184,7 +184,7 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) {
if
(
sel
==
-
1
)
break
;
mainGame
->
gMutex
.
Lock
();
mainGame
->
wRenameDeck
->
setText
(
dataManager
.
GetSysString
(
13
67
));
mainGame
->
wRenameDeck
->
setText
(
dataManager
.
GetSysString
(
13
76
));
mainGame
->
ebREName
->
setText
(
mainGame
->
cbDBDecks
->
getItem
(
sel
));
mainGame
->
PopupElement
(
mainGame
->
wRenameDeck
);
mainGame
->
gMutex
.
Unlock
();
...
...
@@ -203,7 +203,7 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) {
if
(
DeckManager
::
RenameDeck
(
mainGame
->
cbDBDecks
->
getItem
(
prev_sel
),
newname
))
{
mainGame
->
RefreshDeck
(
mainGame
->
cbDBDecks
);
mainGame
->
cbDBDecks
->
setSelected
(
prev_sel
);
mainGame
->
stACMessage
->
setText
(
dataManager
.
GetSysString
(
13
66
));
mainGame
->
stACMessage
->
setText
(
dataManager
.
GetSysString
(
13
75
));
mainGame
->
PopupElement
(
mainGame
->
wACMessage
,
20
);
}
else
{
mainGame
->
env
->
addMessageBox
(
L""
,
dataManager
.
GetSysString
(
1365
));
...
...
@@ -944,6 +944,7 @@ void DeckBuilder::FilterCards() {
int
trycode
=
BufferIO
::
GetVal
(
elements_iterator
->
c_str
());
bool
tryresult
=
dataManager
.
GetData
(
trycode
,
0
);
if
(
!
tryresult
&&
!
CardNameContains
(
text
.
name
.
c_str
(),
elements_iterator
->
c_str
())
&&
text
.
text
.
find
(
elements_iterator
->
c_str
())
==
std
::
wstring
::
npos
&&
!
mainGame
->
CheckRegEx
(
text
.
text
,
elements_iterator
->
c_str
())
&&
(
!
set_code_map
[
*
elements_iterator
]
||
!
check_set_code
(
data
,
set_code_map
[
*
elements_iterator
])))
{
is_target
=
false
;
break
;
...
...
@@ -1011,7 +1012,7 @@ void DeckBuilder::SortList() {
auto
left
=
results
.
begin
();
const
wchar_t
*
pstr
=
mainGame
->
ebCardName
->
getText
();
for
(
auto
it
=
results
.
begin
();
it
!=
results
.
end
();
++
it
)
{
if
(
wcscmp
(
pstr
,
dataManager
.
GetName
((
*
it
)
->
first
))
==
0
)
{
if
(
wcscmp
(
pstr
,
dataManager
.
GetName
((
*
it
)
->
first
))
==
0
||
mainGame
->
CheckRegEx
(
dataManager
.
GetName
((
*
it
)
->
first
),
pstr
,
true
)
)
{
std
::
iter_swap
(
left
,
it
);
++
left
;
}
...
...
@@ -1059,6 +1060,8 @@ bool DeckBuilder::CardNameContains(const wchar_t *haystack, const wchar_t *needl
if
(
!
haystack
)
{
return
false
;
}
if
(
mainGame
->
CheckRegEx
(
haystack
,
needle
))
return
true
;
int
i
=
0
;
int
j
=
0
;
while
(
haystack
[
i
])
{
...
...
gframe/duelclient.cpp
View file @
146f9952
...
...
@@ -712,12 +712,9 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame
->
btnCancelOrFinish
->
setVisible
(
false
);
mainGame
->
btnShuffle
->
setVisible
(
false
);
time_t
nowtime
=
time
(
NULL
);
struct
tm
*
localedtime
=
localtime
(
&
nowtime
);
char
timebuf
[
40
];
strftime
(
timebuf
,
40
,
"%Y-%m-%d %H-%M-%S"
,
localedtime
);
size_t
size
=
strlen
(
timebuf
)
+
1
;
wchar_t
timetext
[
80
];
mbstowcs
(
timetext
,
timebuf
,
size
);
tm
*
localedtime
=
localtime
(
&
nowtime
);
wchar_t
timetext
[
40
];
wcsftime
(
timetext
,
40
,
L"%Y-%m-%d %H-%M-%S"
,
localedtime
);
mainGame
->
ebRSName
->
setText
(
timetext
);
if
(
!
mainGame
->
chkAutoSaveReplay
->
isChecked
())
{
mainGame
->
wReplaySave
->
setText
(
dataManager
.
GetSysString
(
1340
));
...
...
@@ -729,7 +726,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
else
{
mainGame
->
actionParam
=
1
;
wchar_t
msgbuf
[
256
];
myswprintf
(
msgbuf
,
dataManager
.
GetSysString
(
13
76
),
timetext
);
myswprintf
(
msgbuf
,
dataManager
.
GetSysString
(
13
67
),
timetext
);
mainGame
->
SetStaticText
(
mainGame
->
stACMessage
,
310
,
mainGame
->
guiFont
,
msgbuf
);
mainGame
->
PopupElement
(
mainGame
->
wACMessage
,
20
);
mainGame
->
gMutex
.
Unlock
();
...
...
gframe/event_handler.cpp
View file @
146f9952
...
...
@@ -1857,6 +1857,13 @@ bool ClientField::OnCommonEvent(const irr::SEvent& event) {
return
true
;
break
;
}
case
CHECKBOX_REGEX
:
{
mainGame
->
gameConf
.
search_regex
=
mainGame
->
chkRegex
->
isChecked
()
?
1
:
0
;
if
(
mainGame
->
is_building
&&
!
mainGame
->
is_siding
)
mainGame
->
deckBuilder
.
InstantSearch
();
return
true
;
break
;
}
#ifdef YGOPRO_USE_IRRKLANG
case
CHECKBOX_ENABLE_MUSIC
:
{
if
(
!
mainGame
->
chkEnableMusic
->
isChecked
())
...
...
gframe/game.cpp
View file @
146f9952
...
...
@@ -15,6 +15,7 @@
#include "netserver.h"
#include "single_mode.h"
#include <sstream>
#include <regex>
#endif //YGOPRO_SERVER_MODE
unsigned
short
PRO_VERSION
=
0x1346
;
...
...
@@ -377,7 +378,7 @@ bool Game::Initialize() {
chkQuickAnimation
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabHelper
,
CHECKBOX_QUICK_ANIMATION
,
dataManager
.
GetSysString
(
1299
));
chkQuickAnimation
->
setChecked
(
gameConf
.
quick_animation
!=
0
);
posY
+=
30
;
chkAutoSaveReplay
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabHelper
,
-
1
,
dataManager
.
GetSysString
(
13
75
));
chkAutoSaveReplay
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabHelper
,
-
1
,
dataManager
.
GetSysString
(
13
66
));
chkAutoSaveReplay
->
setChecked
(
gameConf
.
auto_save_replay
!=
0
);
elmTabHelperLast
=
chkAutoSaveReplay
;
//system
...
...
@@ -411,9 +412,12 @@ bool Game::Initialize() {
chkAutoSearch
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
CHECKBOX_AUTO_SEARCH
,
dataManager
.
GetSysString
(
1358
));
chkAutoSearch
->
setChecked
(
gameConf
.
auto_search_limit
>=
0
);
posY
+=
30
;
chkMultiKeywords
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
CHECKBOX_MULTI_KEYWORDS
,
dataManager
.
GetSysString
(
137
7
));
chkMultiKeywords
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
CHECKBOX_MULTI_KEYWORDS
,
dataManager
.
GetSysString
(
137
8
));
chkMultiKeywords
->
setChecked
(
gameConf
.
search_multiple_keywords
>
0
);
posY
+=
30
;
chkRegex
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
CHECKBOX_REGEX
,
dataManager
.
GetSysString
(
1379
));
chkRegex
->
setChecked
(
gameConf
.
search_regex
>
0
);
posY
+=
30
;
env
->
addStaticText
(
dataManager
.
GetSysString
(
1282
),
rect
<
s32
>
(
posX
+
23
,
posY
+
3
,
posX
+
120
,
posY
+
28
),
false
,
false
,
tabSystem
);
btnWinResizeS
=
env
->
addButton
(
rect
<
s32
>
(
posX
+
115
,
posY
,
posX
+
145
,
posY
+
25
),
tabSystem
,
BUTTON_WINDOW_RESIZE_S
,
dataManager
.
GetSysString
(
1283
));
btnWinResizeM
=
env
->
addButton
(
rect
<
s32
>
(
posX
+
150
,
posY
,
posX
+
180
,
posY
+
25
),
tabSystem
,
BUTTON_WINDOW_RESIZE_M
,
dataManager
.
GetSysString
(
1284
));
...
...
@@ -632,10 +636,10 @@ bool Game::Initialize() {
scrFilter
->
setSmallStep
(
1
);
scrFilter
->
setVisible
(
false
);
//rename deck
wRenameDeck
=
env
->
addWindow
(
rect
<
s32
>
(
510
,
200
,
820
,
320
),
false
,
dataManager
.
GetSysString
(
13
67
));
wRenameDeck
=
env
->
addWindow
(
rect
<
s32
>
(
510
,
200
,
820
,
320
),
false
,
dataManager
.
GetSysString
(
13
76
));
wRenameDeck
->
getCloseButton
()
->
setVisible
(
false
);
wRenameDeck
->
setVisible
(
false
);
env
->
addStaticText
(
dataManager
.
GetSysString
(
13
68
),
rect
<
s32
>
(
20
,
25
,
290
,
45
),
false
,
false
,
wRenameDeck
);
env
->
addStaticText
(
dataManager
.
GetSysString
(
13
77
),
rect
<
s32
>
(
20
,
25
,
290
,
45
),
false
,
false
,
wRenameDeck
);
ebREName
=
env
->
addEditBox
(
L""
,
rect
<
s32
>
(
20
,
50
,
290
,
70
),
true
,
wRenameDeck
,
-
1
);
ebREName
->
setTextAlignment
(
irr
::
gui
::
EGUIA_CENTER
,
irr
::
gui
::
EGUIA_CENTER
);
btnREYes
=
env
->
addButton
(
rect
<
s32
>
(
70
,
80
,
140
,
105
),
wRenameDeck
,
BUTTON_RENAME_DECK_SAVE
,
dataManager
.
GetSysString
(
1341
));
...
...
@@ -1198,6 +1202,7 @@ void Game::LoadConfig() {
gameConf
.
separate_clear_button
=
1
;
gameConf
.
auto_search_limit
=
0
;
gameConf
.
search_multiple_keywords
=
1
;
gameConf
.
search_regex
=
0
;
gameConf
.
chkIgnoreDeckChanges
=
0
;
gameConf
.
defaultOT
=
1
;
gameConf
.
enable_bot_mode
=
1
;
...
...
@@ -1275,6 +1280,8 @@ void Game::LoadConfig() {
gameConf
.
auto_search_limit
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"search_multiple_keywords"
))
{
gameConf
.
search_multiple_keywords
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"search_regex"
))
{
gameConf
.
search_regex
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"ignore_deck_changes"
))
{
gameConf
.
chkIgnoreDeckChanges
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"default_ot"
))
{
...
...
@@ -1391,6 +1398,8 @@ void Game::LoadConfig() {
gameConf
.
auto_search_limit
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"search_multiple_keywords"
))
{
gameConf
.
search_multiple_keywords
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"search_regex"
))
{
gameConf
.
search_regex
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"ignore_deck_changes"
))
{
gameConf
.
chkIgnoreDeckChanges
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"default_ot"
))
{
...
...
@@ -1521,6 +1530,7 @@ void Game::SaveConfig() {
fprintf
(
fp
,
"auto_search_limit = %d
\n
"
,
gameConf
.
auto_search_limit
);
fprintf
(
fp
,
"#search_multiple_keywords = 0: Disable. 1: Search mutiple keywords with separator
\"
\"
. 2: with separator
\"
+
\"\n
"
);
fprintf
(
fp
,
"search_multiple_keywords = %d
\n
"
,
gameConf
.
search_multiple_keywords
);
fprintf
(
fp
,
"search_regex = %d
\n
"
,
gameConf
.
search_regex
);
fprintf
(
fp
,
"ignore_deck_changes = %d
\n
"
,
(
chkIgnoreDeckChanges
->
isChecked
()
?
1
:
0
));
fprintf
(
fp
,
"default_ot = %d
\n
"
,
gameConf
.
defaultOT
);
fprintf
(
fp
,
"enable_bot_mode = %d
\n
"
,
gameConf
.
enable_bot_mode
);
...
...
@@ -1720,7 +1730,7 @@ void Game::ErrorLog(const char* msg) {
if
(
!
fp
)
return
;
time_t
nowtime
=
time
(
NULL
);
struct
tm
*
localedtime
=
localtime
(
&
nowtime
);
tm
*
localedtime
=
localtime
(
&
nowtime
);
char
timebuf
[
40
];
strftime
(
timebuf
,
40
,
"%Y-%m-%d %H:%M:%S"
,
localedtime
);
fprintf
(
fp
,
"[%s]%s
\n
"
,
timebuf
,
msg
);
...
...
@@ -2165,6 +2175,34 @@ void Game::takeScreenshot() {
}
else
device
->
getLogger
()
->
log
(
L"Failed to take screenshot."
,
irr
::
ELL_WARNING
);
}
bool
Game
::
CheckRegEx
(
const
wchar_t
*
text
,
const
wchar_t
*
exp
,
bool
exact
)
{
if
(
!
gameConf
.
search_regex
)
return
false
;
bool
result
;
try
{
if
(
exact
)
result
=
std
::
regex_match
(
text
,
std
::
wregex
(
exp
));
else
result
=
std
::
regex_search
(
text
,
std
::
wregex
(
exp
));
}
catch
(...)
{
result
=
false
;
}
return
result
;
}
bool
Game
::
CheckRegEx
(
std
::
wstring
text
,
const
wchar_t
*
exp
,
bool
exact
)
{
if
(
!
gameConf
.
search_regex
)
return
false
;
bool
result
;
try
{
if
(
exact
)
result
=
std
::
regex_match
(
text
,
std
::
wregex
(
exp
));
else
result
=
std
::
regex_search
(
text
,
std
::
wregex
(
exp
));
}
catch
(...)
{
result
=
false
;
}
return
result
;
}
const
char
*
Game
::
GetLocaleDir
(
const
char
*
dir
)
{
if
(
!
gameConf
.
locale
||
!
wcscmp
(
gameConf
.
locale
,
L"default"
))
return
dir
;
...
...
gframe/game.h
View file @
146f9952
...
...
@@ -47,6 +47,7 @@ struct Config {
int
separate_clear_button
;
int
auto_search_limit
;
int
search_multiple_keywords
;
int
search_regex
;
int
chkIgnoreDeckChanges
;
int
defaultOT
;
int
enable_bot_mode
;
...
...
@@ -184,6 +185,8 @@ public:
int
LocalPlayer
(
int
player
);
const
wchar_t
*
LocalName
(
int
local_player
);
const
char
*
GetLocaleDir
(
const
char
*
dir
);
bool
CheckRegEx
(
const
wchar_t
*
text
,
const
wchar_t
*
exp
,
bool
exact
=
false
);
bool
CheckRegEx
(
std
::
wstring
text
,
const
wchar_t
*
exp
,
bool
exact
=
false
);
bool
HasFocus
(
EGUI_ELEMENT_TYPE
type
)
const
{
irr
::
gui
::
IGUIElement
*
focus
=
env
->
getFocus
();
...
...
@@ -321,6 +324,7 @@ public:
irr
::
gui
::
IGUICheckBox
*
chkIgnoreDeckChanges
;
irr
::
gui
::
IGUICheckBox
*
chkAutoSearch
;
irr
::
gui
::
IGUICheckBox
*
chkMultiKeywords
;
irr
::
gui
::
IGUICheckBox
*
chkRegex
;
irr
::
gui
::
IGUICheckBox
*
chkEnableSound
;
irr
::
gui
::
IGUICheckBox
*
chkEnableMusic
;
irr
::
gui
::
IGUIScrollBar
*
scrSoundVolume
;
...
...
@@ -739,6 +743,7 @@ extern HostInfo game_info;
#define SCROLL_TAB_SYSTEM 351
#define CHECKBOX_AUTO_SEARCH 360
#define CHECKBOX_MULTI_KEYWORDS 372
#define CHECKBOX_REGEX 373
#define CHECKBOX_ENABLE_SOUND 361
#define CHECKBOX_ENABLE_MUSIC 362
#define SCROLL_VOLUME 363
...
...
gframe/menu_handler.cpp
View file @
146f9952
...
...
@@ -475,7 +475,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
std
::
wstring
repinfo
;
time_t
curtime
=
ReplayMode
::
cur_replay
.
pheader
.
seed
;
tm
*
st
=
localtime
(
&
curtime
);
myswprintf
(
infobuf
,
L"%d/%d/%d %02d:%02d:%02d
\n
"
,
st
->
tm_year
+
1900
,
st
->
tm_mon
+
1
,
st
->
tm_mday
,
st
->
tm_hour
,
st
->
tm_min
,
st
->
tm_sec
);
wcsftime
(
infobuf
,
256
,
L"%Y/%m/%d %H:%M:%S
\n
"
,
st
);
repinfo
.
append
(
infobuf
);
wchar_t
namebuf
[
4
][
20
];
ReplayMode
::
cur_replay
.
ReadName
(
namebuf
[
0
]);
...
...
@@ -490,7 +490,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
myswprintf
(
infobuf
,
L"%ls
\n
===VS===
\n
%ls
\n
"
,
namebuf
[
0
],
namebuf
[
1
]);
repinfo
.
append
(
infobuf
);
mainGame
->
ebRepStartTurn
->
setText
(
L"1"
);
mainGame
->
SetStaticText
(
mainGame
->
stReplayInfo
,
180
,
mainGame
->
guiFont
,
(
wchar_t
*
)
repinfo
.
c_str
());
mainGame
->
SetStaticText
(
mainGame
->
stReplayInfo
,
180
,
mainGame
->
guiFont
,
repinfo
.
c_str
());
break
;
}
case
LISTBOX_BOT_LIST
:
{
...
...
gframe/single_mode.cpp
View file @
146f9952
...
...
@@ -132,12 +132,9 @@ int SingleMode::SinglePlayThread(void* param) {
}
last_replay
.
EndRecord
();
time_t
nowtime
=
time
(
NULL
);
struct
tm
*
localedtime
=
localtime
(
&
nowtime
);
char
timebuf
[
40
];
strftime
(
timebuf
,
40
,
"%Y-%m-%d %H-%M-%S"
,
localedtime
);
size_t
size
=
strlen
(
timebuf
)
+
1
;
wchar_t
timetext
[
80
];
mbstowcs
(
timetext
,
timebuf
,
size
);
tm
*
localedtime
=
localtime
(
&
nowtime
);
wchar_t
timetext
[
40
];
wcsftime
(
timetext
,
40
,
L"%Y-%m-%d %H-%M-%S"
,
localedtime
);
mainGame
->
ebRSName
->
setText
(
timetext
);
if
(
!
mainGame
->
chkAutoSaveReplay
->
isChecked
())
{
mainGame
->
wReplaySave
->
setText
(
dataManager
.
GetSysString
(
1340
));
...
...
@@ -148,7 +145,7 @@ int SingleMode::SinglePlayThread(void* param) {
}
else
{
mainGame
->
actionParam
=
1
;
wchar_t
msgbuf
[
256
];
myswprintf
(
msgbuf
,
dataManager
.
GetSysString
(
13
76
),
timetext
);
myswprintf
(
msgbuf
,
dataManager
.
GetSysString
(
13
67
),
timetext
);
mainGame
->
SetStaticText
(
mainGame
->
stACMessage
,
310
,
mainGame
->
guiFont
,
msgbuf
);
mainGame
->
PopupElement
(
mainGame
->
wACMessage
,
20
);
mainGame
->
gMutex
.
Unlock
();
...
...
script
@
0abaa730
Subproject commit
70db00ab03eed38d1138135b789066ae570ff3da
Subproject commit
0abaa73057cbd1065ff137750543bd75c5d356a7
strings.conf
View file @
146f9952
...
...
@@ -395,18 +395,19 @@
!
system
1363
是否删除这个录像?
!
system
1364
重命名录像
!
system
1365
重命名失败,可能存在同名文件
!
system
1366
重命名成功
!
system
1367
重命名卡组
!
system
1368
卡组文件:
!
system
1366
自动保存录像
!
system
1367
录像已自动保存为%
ls
.
yrp
!
system
1369
提取卡组
!
system
1370
星数↑
!
system
1371
攻击↑
!
system
1372
守备↑
!
system
1373
名称↓
!
system
1374
连接标记
!
system
1375
自动保存录像
!
system
1376
录像已自动保存为%
ls
.
yrp
!
system
1377
使用多个关键词搜索卡片
!
system
1375
重命名成功
!
system
1376
重命名卡组
!
system
1377
卡组文件:
!
system
1378
使用多个关键词搜索卡片
!
system
1379
使用正则表达式搜索卡片
!
system
1380
人机模式
!
system
1381
残局模式
!
system
1382
人机信息:
...
...
system.conf
View file @
146f9952
...
...
@@ -30,9 +30,12 @@ separate_clear_button = 1
auto_search_limit
=
2
#search_multiple_keywords = 0: Disable. 1: Search mutiple keywords with separator " ". 2: with separator "+"
search_multiple_keywords
=
1
search_regex
=
0
ignore_deck_changes
=
0
default_ot
=
1
enable_bot_mode
=
1
quick_animation
=
1
auto_save_replay
=
1
window_maximized
=
0
window_width
=
1024
window_height
=
640
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment