Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro
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
List
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
YGOPRO-520DIY
ygopro
Commits
d3b6ad4c
Commit
d3b6ad4c
authored
May 28, 2023
by
nanahira
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of github.com:Fluorohydride/ygopro
parents
28e812ff
e36d58d4
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
292 additions
and
63 deletions
+292
-63
gframe/data_manager.cpp
gframe/data_manager.cpp
+1
-1
gframe/drawing.cpp
gframe/drawing.cpp
+16
-14
gframe/duelclient.cpp
gframe/duelclient.cpp
+31
-21
gframe/event_handler.cpp
gframe/event_handler.cpp
+8
-1
gframe/game.cpp
gframe/game.cpp
+16
-4
gframe/game.h
gframe/game.h
+7
-4
lflist.conf
lflist.conf
+213
-18
No files found.
gframe/data_manager.cpp
View file @
d3b6ad4c
...
...
@@ -279,7 +279,7 @@ const wchar_t* DataManager::FormatRace(int race) {
wchar_t
*
p
=
racBuffer
;
unsigned
filter
=
1
;
int
i
=
1020
;
for
(;
filter
!=
0x2000000
;
filter
<<=
1
,
++
i
)
{
for
(;
filter
<
(
1
<<
RACES_COUNT
)
;
filter
<<=
1
,
++
i
)
{
if
(
race
&
filter
)
{
BufferIO
::
CopyWStrRef
(
GetSysString
(
i
),
p
,
16
);
*
p
=
L'|'
;
...
...
gframe/drawing.cpp
View file @
d3b6ad4c
...
...
@@ -637,6 +637,7 @@ void Game::DrawMisc() {
DrawShadowText
(
numFont
,
dInfo
.
strLP
[
0
],
Resize
(
330
,
12
,
631
,
30
),
Resize
(
0
,
1
,
2
,
0
),
0xffffff00
,
0xff000000
,
true
,
false
,
0
);
DrawShadowText
(
numFont
,
dInfo
.
strLP
[
1
],
Resize
(
691
,
12
,
992
,
30
),
Resize
(
0
,
1
,
2
,
0
),
0xffffff00
,
0xff000000
,
true
,
false
,
0
);
if
(
!
gameConf
.
hide_player_name
)
{
recti
p1size
=
Resize
(
335
,
31
,
629
,
50
);
recti
p2size
=
Resize
(
986
,
31
,
986
,
50
);
if
(
!
dInfo
.
isTag
||
!
dInfo
.
tag_player
[
0
])
...
...
@@ -652,6 +653,7 @@ void Game::DrawMisc() {
p2size
.
UpperLeftCorner
.
X
-=
cld
.
Width
;
textFont
->
draw
(
dInfo
.
clientname_tag
,
p2size
,
0xffffffff
,
false
,
false
,
0
);
}
}
driver
->
draw2DRectangle
(
Resize
(
632
,
10
,
688
,
30
),
0x00000000
,
0x00000000
,
0xffffffff
,
0xffffffff
);
driver
->
draw2DRectangle
(
Resize
(
632
,
30
,
688
,
50
),
0xffffffff
,
0xffffffff
,
0x00000000
,
0x00000000
);
DrawShadowText
(
lpcFont
,
dataManager
.
GetNumString
(
dInfo
.
turn
),
Resize
(
635
,
5
,
687
,
40
),
Resize
(
0
,
0
,
2
,
0
),
0x8000ffff
,
0x80000000
,
true
,
false
,
0
);
...
...
gframe/duelclient.cpp
View file @
d3b6ad4c
...
...
@@ -570,8 +570,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame
->
stHostPrepDuelist
[
2
]
->
setVisible
(
false
);
mainGame
->
stHostPrepDuelist
[
3
]
->
setVisible
(
false
);
}
for
(
int
i
=
0
;
i
<
4
;
++
i
)
for
(
int
i
=
0
;
i
<
4
;
++
i
)
{
mainGame
->
chkHostPrepReady
[
i
]
->
setChecked
(
false
);
mainGame
->
stHostPrepDuelist
[
i
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
i
]
->
setToolTipText
(
L""
);
}
mainGame
->
btnHostPrepReady
->
setVisible
(
true
);
mainGame
->
btnHostPrepNotReady
->
setVisible
(
false
);
mainGame
->
dInfo
.
time_limit
=
pkt
->
info
.
time_limit
;
...
...
@@ -581,10 +584,6 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame
->
deckBuilder
.
filterList
=
deckManager
.
GetLFListContent
(
pkt
->
info
.
lflist
);
if
(
mainGame
->
deckBuilder
.
filterList
==
nullptr
)
mainGame
->
deckBuilder
.
filterList
=
&
deckManager
.
_lfList
[
0
].
content
;
mainGame
->
stHostPrepDuelist
[
0
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
1
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
2
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
3
]
->
setText
(
L""
);
mainGame
->
stHostPrepOB
->
setText
(
L""
);
mainGame
->
SetStaticText
(
mainGame
->
stHostPrepRule
,
180
,
mainGame
->
guiFont
,
str
.
c_str
());
mainGame
->
RefreshCategoryDeck
(
mainGame
->
cbCategorySelect
,
mainGame
->
cbDeckSelect
);
...
...
@@ -723,11 +722,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame
->
btnSpectatorSwap
->
setVisible
(
true
);
}
if
(
selftype
!=
1
)
{
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
ext
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
ext
(),
mainGame
->
dInfo
.
clientname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
clientname
,
20
);
}
else
{
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
ext
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
ext
(),
mainGame
->
dInfo
.
clientname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
clientname
,
20
);
}
}
else
{
if
(
selftype
>
3
)
{
...
...
@@ -737,15 +736,15 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame
->
btnSpectatorSwap
->
setVisible
(
true
);
}
if
(
selftype
>
1
&&
selftype
<
4
)
{
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
2
]
->
getT
ext
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
3
]
->
getT
ext
(),
mainGame
->
dInfo
.
hostname_tag
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
ext
(),
mainGame
->
dInfo
.
clientname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
ext
(),
mainGame
->
dInfo
.
clientname_tag
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
2
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
3
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
hostname_tag
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
clientname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
clientname_tag
,
20
);
}
else
{
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
ext
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
ext
(),
mainGame
->
dInfo
.
hostname_tag
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
2
]
->
getT
ext
(),
mainGame
->
dInfo
.
clientname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
3
]
->
getT
ext
(),
mainGame
->
dInfo
.
clientname_tag
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
0
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
hostname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
1
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
hostname_tag
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
2
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
clientname
,
20
);
BufferIO
::
CopyWStr
(
mainGame
->
stHostPrepDuelist
[
3
]
->
getT
oolTipText
().
c_str
(),
mainGame
->
dInfo
.
clientname_tag
,
20
);
}
mainGame
->
dInfo
.
tag_player
[
0
]
=
false
;
mainGame
->
dInfo
.
tag_player
[
1
]
=
false
;
...
...
@@ -922,7 +921,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
BufferIO
::
CopyWStr
(
pkt
->
name
,
mainGame
->
dInfo
.
clientname
,
20
);
}
mainGame
->
gMutex
.
lock
();
if
(
mainGame
->
gameConf
.
hide_player_name
)
mainGame
->
stHostPrepDuelist
[
pkt
->
pos
]
->
setText
(
L"[********]"
);
else
mainGame
->
stHostPrepDuelist
[
pkt
->
pos
]
->
setText
(
name
);
mainGame
->
stHostPrepDuelist
[
pkt
->
pos
]
->
setToolTipText
(
name
);
mainGame
->
gMutex
.
unlock
();
mainGame
->
FlashWindow
();
break
;
...
...
@@ -936,9 +939,14 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame
->
gMutex
.
lock
();
if
(
state
<
8
)
{
soundManager
.
PlaySoundEffect
(
SOUND_PLAYER_ENTER
);
wchar_t
*
prename
=
(
wchar_t
*
)
mainGame
->
stHostPrepDuelist
[
pos
]
->
getText
();
wchar_t
*
prename
=
(
wchar_t
*
)
mainGame
->
stHostPrepDuelist
[
pos
]
->
getToolTipText
().
c_str
();
if
(
mainGame
->
gameConf
.
hide_player_name
)
mainGame
->
stHostPrepDuelist
[
state
]
->
setText
(
L"[********]"
);
else
mainGame
->
stHostPrepDuelist
[
state
]
->
setText
(
prename
);
mainGame
->
stHostPrepDuelist
[
state
]
->
setToolTipText
(
prename
);
mainGame
->
stHostPrepDuelist
[
pos
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
pos
]
->
setToolTipText
(
L""
);
mainGame
->
chkHostPrepReady
[
pos
]
->
setChecked
(
false
);
if
(
pos
==
0
)
BufferIO
::
CopyWStr
(
prename
,
mainGame
->
dInfo
.
hostname
,
20
);
...
...
@@ -962,12 +970,14 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
}
}
else
if
(
state
==
PLAYERCHANGE_LEAVE
)
{
mainGame
->
stHostPrepDuelist
[
pos
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
pos
]
->
setToolTipText
(
L""
);
mainGame
->
chkHostPrepReady
[
pos
]
->
setChecked
(
false
);
}
else
if
(
state
==
PLAYERCHANGE_OBSERVE
)
{
watching
++
;
wchar_t
watchbuf
[
32
];
myswprintf
(
watchbuf
,
L"%ls%d"
,
dataManager
.
GetSysString
(
1253
),
watching
);
mainGame
->
stHostPrepDuelist
[
pos
]
->
setText
(
L""
);
mainGame
->
stHostPrepDuelist
[
pos
]
->
setToolTipText
(
L""
);
mainGame
->
chkHostPrepReady
[
pos
]
->
setChecked
(
false
);
mainGame
->
stHostPrepOB
->
setText
(
watchbuf
);
}
...
...
@@ -3788,7 +3798,7 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
/*int player = */
mainGame
->
LocalPlayer
(
BufferIO
::
ReadInt8
(
pbuf
));
mainGame
->
dField
.
announce_count
=
BufferIO
::
ReadInt8
(
pbuf
);
int
available
=
BufferIO
::
ReadInt32
(
pbuf
);
for
(
int
i
=
0
,
filter
=
0x1
;
i
<
25
;
++
i
,
filter
<<=
1
)
{
for
(
int
i
=
0
,
filter
=
0x1
;
i
<
RACES_COUNT
;
++
i
,
filter
<<=
1
)
{
mainGame
->
chkRace
[
i
]
->
setChecked
(
false
);
if
(
filter
&
available
)
mainGame
->
chkRace
[
i
]
->
setVisible
(
true
);
...
...
gframe/event_handler.cpp
View file @
d3b6ad4c
...
...
@@ -853,7 +853,7 @@ bool ClientField::OnEvent(const irr::SEvent& event) {
}
case
CHECK_RACE
:
{
int
rac
=
0
,
filter
=
0x1
,
count
=
0
;
for
(
int
i
=
0
;
i
<
25
;
++
i
,
filter
<<=
1
)
{
for
(
int
i
=
0
;
i
<
RACES_COUNT
;
++
i
,
filter
<<=
1
)
{
if
(
mainGame
->
chkRace
[
i
]
->
isChecked
())
{
rac
|=
filter
;
count
++
;
...
...
@@ -1966,6 +1966,13 @@ bool ClientField::OnCommonEvent(const irr::SEvent& event) {
return
true
;
break
;
}
case
CHECKBOX_HIDE_PLAYER_NAME
:
{
mainGame
->
gameConf
.
hide_player_name
=
mainGame
->
chkHidePlayerName
->
isChecked
()
?
1
:
0
;
if
(
mainGame
->
gameConf
.
hide_player_name
)
mainGame
->
ClearChatMsg
();
return
true
;
break
;
}
case
CHECKBOX_PREFER_EXPANSION
:
{
mainGame
->
gameConf
.
prefer_expansion_script
=
mainGame
->
chkPreferExpansionScript
->
isChecked
()
?
1
:
0
;
return
true
;
...
...
gframe/game.cpp
View file @
d3b6ad4c
...
...
@@ -12,7 +12,7 @@
#include <sstream>
#include <regex>
unsigned
short
PRO_VERSION
=
0x13
54
;
unsigned
short
PRO_VERSION
=
0x13
60
;
namespace
ygo
{
...
...
@@ -431,6 +431,9 @@ bool Game::Initialize() {
chkIgnore2
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
-
1
,
dataManager
.
GetSysString
(
1291
));
chkIgnore2
->
setChecked
(
gameConf
.
chkIgnore2
!=
0
);
posY
+=
30
;
chkHidePlayerName
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
CHECKBOX_HIDE_PLAYER_NAME
,
dataManager
.
GetSysString
(
1289
));
chkHidePlayerName
->
setChecked
(
gameConf
.
hide_player_name
!=
0
);
posY
+=
30
;
chkIgnoreDeckChanges
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
-
1
,
dataManager
.
GetSysString
(
1357
));
chkIgnoreDeckChanges
->
setChecked
(
gameConf
.
chkIgnoreDeckChanges
!=
0
);
posY
+=
30
;
...
...
@@ -485,7 +488,7 @@ bool Game::Initialize() {
chkEnablePScale
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
posX
,
posY
,
posX
+
260
,
posY
+
25
),
tabSystem
,
-
1
,
dataManager
.
GetSysString
(
1269
));
chkEnablePScale
->
setChecked
(
gameConf
.
chkEnablePScale
!=
0
);
posY
+=
30
;
env
->
addStaticText
(
dataManager
.
GetSysString
(
12
89
),
rect
<
s32
>
(
posX
+
23
,
posY
+
3
,
posX
+
160
,
posY
+
28
),
false
,
false
,
tabSystem
);
env
->
addStaticText
(
dataManager
.
GetSysString
(
12
67
),
rect
<
s32
>
(
posX
+
23
,
posY
+
3
,
posX
+
160
,
posY
+
28
),
false
,
false
,
tabSystem
);
cbLocale
=
env
->
addComboBox
(
rect
<
s32
>
(
posX
+
150
,
posY
+
4
,
posX
+
250
,
posY
+
21
),
tabSystem
,
COMBOBOX_LOCALE
);
RefreshLocales
();
elmTabSystemLast
=
cbLocale
;
...
...
@@ -625,7 +628,7 @@ bool Game::Initialize() {
wANRace
=
env
->
addWindow
(
rect
<
s32
>
(
480
,
200
,
850
,
410
),
false
,
dataManager
.
GetSysString
(
563
));
wANRace
->
getCloseButton
()
->
setVisible
(
false
);
wANRace
->
setVisible
(
false
);
for
(
int
filter
=
0x1
,
i
=
0
;
i
<
25
;
filter
<<=
1
,
++
i
)
for
(
int
filter
=
0x1
,
i
=
0
;
i
<
RACES_COUNT
;
filter
<<=
1
,
++
i
)
chkRace
[
i
]
=
env
->
addCheckBox
(
false
,
rect
<
s32
>
(
10
+
(
i
%
4
)
*
90
,
25
+
(
i
/
4
)
*
25
,
100
+
(
i
%
4
)
*
90
,
50
+
(
i
/
4
)
*
25
),
wANRace
,
CHECK_RACE
,
dataManager
.
FormatRace
(
filter
));
//selection hint
...
...
@@ -772,7 +775,7 @@ bool Game::Initialize() {
cbRace
=
env
->
addComboBox
(
rect
<
s32
>
(
60
,
40
+
75
/
6
,
190
,
60
+
75
/
6
),
wFilter
,
COMBOBOX_RACE
);
cbRace
->
setMaxSelectionRows
(
10
);
cbRace
->
addItem
(
dataManager
.
GetSysString
(
1310
),
0
);
for
(
int
filter
=
0x1
;
filter
!=
0x2000000
;
filter
<<=
1
)
for
(
int
filter
=
0x1
;
filter
<
(
1
<<
RACES_COUNT
)
;
filter
<<=
1
)
cbRace
->
addItem
(
dataManager
.
FormatRace
(
filter
),
filter
);
stAttack
=
env
->
addStaticText
(
dataManager
.
GetSysString
(
1322
),
rect
<
s32
>
(
205
,
22
+
50
/
6
,
280
,
42
+
50
/
6
),
false
,
false
,
wFilter
);
ebAttack
=
env
->
addEditBox
(
L""
,
rect
<
s32
>
(
260
,
20
+
50
/
6
,
340
,
40
+
50
/
6
),
true
,
wFilter
,
EDITBOX_INPUTS
);
...
...
@@ -1463,6 +1466,8 @@ bool Game::LoadConfigFromFile(const char* file) {
gameConf
.
auto_save_replay
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"draw_single_chain"
))
{
gameConf
.
draw_single_chain
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"hide_player_name"
))
{
gameConf
.
hide_player_name
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"prefer_expansion_script"
))
{
gameConf
.
prefer_expansion_script
=
atoi
(
valbuf
);
}
else
if
(
!
strcmp
(
strbuf
,
"ask_mset"
))
{
...
...
@@ -1559,6 +1564,7 @@ void Game::LoadConfig() {
gameConf
.
quick_animation
=
0
;
gameConf
.
auto_save_replay
=
0
;
gameConf
.
draw_single_chain
=
0
;
gameConf
.
hide_player_name
=
0
;
gameConf
.
prefer_expansion_script
=
0
;
gameConf
.
ask_mset
=
0
;
gameConf
.
enable_sound
=
true
;
...
...
@@ -1698,6 +1704,7 @@ void Game::SaveConfig() {
fprintf
(
fp
,
"quick_animation = %d
\n
"
,
gameConf
.
quick_animation
);
fprintf
(
fp
,
"auto_save_replay = %d
\n
"
,
(
chkAutoSaveReplay
->
isChecked
()
?
1
:
0
));
fprintf
(
fp
,
"draw_single_chain = %d
\n
"
,
gameConf
.
draw_single_chain
);
fprintf
(
fp
,
"hide_player_name = %d
\n
"
,
gameConf
.
hide_player_name
);
fprintf
(
fp
,
"prefer_expansion_script = %d
\n
"
,
gameConf
.
prefer_expansion_script
);
fprintf
(
fp
,
"ask_mset = %d
\n
"
,
gameConf
.
ask_mset
);
fprintf
(
fp
,
"window_maximized = %d
\n
"
,
(
gameConf
.
window_maximized
?
1
:
0
));
...
...
@@ -1836,6 +1843,8 @@ void Game::AddChatMsg(const wchar_t* msg, int player) {
chatMsg
[
0
].
clear
();
chatTiming
[
0
]
=
1200
;
chatType
[
0
]
=
player
;
if
(
gameConf
.
hide_player_name
&&
player
<
4
)
player
=
10
;
switch
(
player
)
{
case
0
:
//from host
chatMsg
[
0
].
append
(
dInfo
.
hostname
);
...
...
@@ -1867,6 +1876,9 @@ void Game::AddChatMsg(const wchar_t* msg, int player) {
case
9
:
//error message
chatMsg
[
0
].
append
(
L"[Script Error]: "
);
break
;
case
10
:
//hidden name
chatMsg
[
0
].
append
(
L"[********]: "
);
break
;
default:
//from watcher or unknown
if
(
player
<
11
||
player
>
19
)
chatMsg
[
0
].
append
(
L"[---]: "
);
...
...
gframe/game.h
View file @
d3b6ad4c
...
...
@@ -59,6 +59,7 @@ struct Config {
bool
resize_popup_menu
;
int
auto_save_replay
;
int
draw_single_chain
;
int
hide_player_name
;
int
prefer_expansion_script
;
int
ask_mset
;
bool
enable_sound
;
...
...
@@ -327,6 +328,7 @@ public:
irr
::
gui
::
IGUICheckBox
*
chkAutoSaveReplay
;
irr
::
gui
::
IGUICheckBox
*
chkDrawSingleChain
;
irr
::
gui
::
IGUICheckBox
*
chkAskMSet
;
irr
::
gui
::
IGUICheckBox
*
chkHidePlayerName
;
irr
::
gui
::
IGUIWindow
*
tabSystem
;
irr
::
gui
::
IGUIElement
*
elmTabSystemLast
;
irr
::
gui
::
IGUIScrollBar
*
scrTabSystem
;
...
...
@@ -490,7 +492,7 @@ public:
irr
::
gui
::
IGUICheckBox
*
chkAttribute
[
7
];
//announce race
irr
::
gui
::
IGUIWindow
*
wANRace
;
irr
::
gui
::
IGUICheckBox
*
chkRace
[
25
];
irr
::
gui
::
IGUICheckBox
*
chkRace
[
RACES_COUNT
];
//cmd menu
irr
::
gui
::
IGUIWindow
*
wCmdMenu
;
irr
::
gui
::
IGUIButton
*
btnActivate
;
...
...
@@ -840,9 +842,10 @@ extern Game* mainGame;
#define CHECKBOX_PREFER_EXPANSION 373
#define CHECKBOX_DRAW_SINGLE_CHAIN 374
#define CHECKBOX_LFLIST 375
#define CHECKBOX_REGEX 376
#define COMBOBOX_LOCALE 377
#define CHECKBOX_ASK_MSET 378
#define CHECKBOX_HIDE_PLAYER_NAME 376
#define CHECKBOX_REGEX 377
#define COMBOBOX_LOCALE 378
#define CHECKBOX_ASK_MSET 379
#define BUTTON_BIG_CARD_CLOSE 380
#define BUTTON_BIG_CARD_ZOOM_IN 381
...
...
lflist.conf
View file @
d3b6ad4c
#[2023.
1][2023.2 TCG
][2022.10][2022.7][2022.4][2022.1][2021.10][2021.7][2021.4][2021.1][2020.10][2020.7][2020.4][2020.1][2019.10][2019.7][2019.4][2019.1][2018.10][2018.7][2018.4][2018.1][2017.10][2017.7][2017.4][2017.1][2016.10][2016.7][2016.4][2016.1][2015.10][2015.4][2015.1][2014.10][2014.7][2014.4][2014.2][2013.9][2022.12 TCG][2022.10 TCG][2022.5 TCG][2022.2 TCG][2021.10 TCG][2021.7 TCG][2021.3 TCG][2020.12 TCG][2020.9 TCG][2020.6 TCG][2020.4 TCG][2020.1 TCG][2019.10 TCG][2019.7 TCG][2019.4 TCG][2019.1 TCG][2018.12 TCG][2018.9 TCG][2018.5 TCG][2018.2 TCG][2017.11 TCG][2017.9 TCG][2017.6 TCG][2017.3 TCG][2016.8 TCG][2016.4 TCG][2015.11 TCG][2015.7 TCG][2015.4 TCG][2015.1 TCG][2014.10 TCG][2014.7 TCG][2014.4 TCG][2014.1.1 TCG][2013.10.11 TCG][2013.3.1][2012.9.1][2012.3.1][2011.9.1]
!
2023
.
1
#[2023.
4][2023.2 TCG][2023.1
][2022.10][2022.7][2022.4][2022.1][2021.10][2021.7][2021.4][2021.1][2020.10][2020.7][2020.4][2020.1][2019.10][2019.7][2019.4][2019.1][2018.10][2018.7][2018.4][2018.1][2017.10][2017.7][2017.4][2017.1][2016.10][2016.7][2016.4][2016.1][2015.10][2015.4][2015.1][2014.10][2014.7][2014.4][2014.2][2013.9][2022.12 TCG][2022.10 TCG][2022.5 TCG][2022.2 TCG][2021.10 TCG][2021.7 TCG][2021.3 TCG][2020.12 TCG][2020.9 TCG][2020.6 TCG][2020.4 TCG][2020.1 TCG][2019.10 TCG][2019.7 TCG][2019.4 TCG][2019.1 TCG][2018.12 TCG][2018.9 TCG][2018.5 TCG][2018.2 TCG][2017.11 TCG][2017.9 TCG][2017.6 TCG][2017.3 TCG][2016.8 TCG][2016.4 TCG][2015.11 TCG][2015.7 TCG][2015.4 TCG][2015.1 TCG][2014.10 TCG][2014.7 TCG][2014.4 TCG][2014.1.1 TCG][2013.10.11 TCG][2013.3.1][2012.9.1][2012.3.1][2011.9.1]
!
2023
.
4
#forbidden
91869203
0
--アマゾネスの射手
20663556
0
--イレカエル
44910027
0
--ヴィクトリー・ドラゴン
51858306
0
--エクリプス・ワイバーン
53804307
0
--焔征竜-ブラスター
07563579
0
--
Em
ヒグルミ
17330916
0
--
EM
モンキーボード
34945480
0
--外神アザトート
...
...
@@ -14,7 +13,6 @@
11384280
0
--キャノン・ソルジャー
17412721
0
--旧神ノーデン
50588353
0
--水晶機巧-ハリファイバー
67441435
0
--グローアップ・バルブ
34124316
0
--サイバーポッド
02563463
0
--流離のグリフォンライダー
88071625
0
--
The
tyrant
NEPTUNE
...
...
@@ -26,6 +24,7 @@
86148577
0
--守護竜エルピィ
88581108
0
--真竜皇
V
.
F
.
D
.
21377582
0
--真竜剣皇マスター
P
27381364
0
--スプライト・エルフ
94677445
0
--星杯の神子イヴ
16923472
0
--ゼンマイハンター
15341821
0
--ダンディライオン
...
...
@@ -91,15 +90,17 @@
#limit
76794549
1
--アストログラフ・マジシャン
40177746
1
--イーバ
25862681
1
--エンシェント・フェアリー・ドラゴン
53804307
1
--焔征竜-ブラスター
32909498
1
--クシャトリラ・フェンリル
68304193
1
--クシャトリラ・ユニコーン
67441435
1
--グローアップ・バルブ
12289247
1
--クロノグラフ・マジシャン
99937011
1
--剣神官ムドラ
62320425
1
--古衛兵アギド
25926710
1
--古尖兵ケルベク
38814750
1
--
PSY
フレームギア・γ
74586817
1
--
PSY
フレームロード・Ω
26889158
1
--転生炎獣ガゼル
74997493
1
--鎖龍蛇-スカルデット
32731036
1
--深淵の獣ルベリオン
69811710
1
--宵星の騎士ギルス
78872731
1
--十二獣モルモラット
06602300
1
--重爆撃禽 ボム・フェネクス
...
...
@@ -108,28 +109,30 @@
78080961
1
--
SPYRAL
-ジーニアス
81275020
1
--
SR
ベイゴマックス
13533678
1
--スプライト・ジェット
76145933
1
--スプライト・ブルー
82385847
1
--ダイナレスラー・パンクラトプス
15291624
1
--超雷龍-サンダー・ドラゴン
00572850
1
--ティアラメンツ・シェイレーン
37961969
1
--ティアラメンツ・ハゥフニス
74078255
1
--ティアラメンツ・メイルゥ
73956664
1
--ティアラメンツ・レイノハート
90953320
1
--
TG
ハイパー・ライブラリアン
69015963
1
--デビル・フランケン
18326736
1
--星守の騎士 プトレマイオス
90448279
1
--天霆號アーゼウス
17266660
1
--朱光の宣告者
69610326
1
--覇王眷竜ダークヴルム
06637331
1
--深淵の獣ドルイドヴルム
72656408
1
--深淵の獣バルドレイク
33854624
1
--深淵の獣マグナムート
33396948
1
--封印されしエクゾディア
44519536
1
--封印されし者の左足
07902349
1
--封印されし者の左腕
08124921
1
--封印されし者の右足
70903634
1
--封印されし者の右腕
09047460
1
--
BF
-隠れ蓑のスチーム
25725326
1
--プランキッズ・ミュー
35272499
1
--捕食植物オフリス・スコーピオ
24094258
1
--ヘビーメタルフォーゼ・エレクトラム
33508719
1
--メタモルポット
83107873
1
--雷鳥龍-サンダー・ドラゴン
89399912
1
--嵐征竜-テンペスト
92746535
1
--竜剣士ラスター
P
77103950
1
--壱世壊=ペルレイノ
...
...
@@ -145,7 +148,6 @@
32807846
1
--増援
72892473
1
--手札抹殺
73628505
1
--テラ・フォーミング
01984618
1
--天底の使徒
13035077
1
--ドラゴニック
D
18144506
1
--ハーピィの羽根帚
75500286
1
--封印の黄金櫃
...
...
@@ -155,24 +157,25 @@
73468603
1
--盆回し
93600443
1
--マスク・チェンジ・セカンド
65681983
1
--抹殺の指名者
46448938
1
--魔導書の神判
71832012
1
--六世壊=パライゾス
36637374
1
--烙印開幕
44362883
1
--烙印融合
27970830
1
--六武の門
02295440
1
--ワン・フォー・ワン
82732705
1
--スキルドレイン
35316708
1
--刻の封印
21076084
1
--トリックスター・リンカーネイション
23002292
1
--レッド・リブート
#semi limit
30741503
2
--オルフェゴール・ガラテア
09126351
2
--鬼ガエル
63288573
2
--閃刀姫-カガリ
37961969
2
--ティアラメンツ・ハゥフニス
25862681
2
--エンシェント・フェアリー・ドラゴン
26889158
2
--転生炎獣ガゼル
74997493
2
--鎖龍蛇-スカルデット
91800273
2
--ディメンション・アトラクター
09411399
2
--
D
-
HERO
ディアボリックガイ
18326736
2
--星守の騎士 プトレマイオス
87209160
2
--鉄獣戦線 フラクトール
03078576
2
--八汰烏
09047460
2
--
BF
-隠れ蓑のスチーム
83107873
2
--雷鳥龍-サンダー・ドラゴン
03285551
2
--アラメシアの儀
66957584
2
--インフェルニティガン
57103969
2
--炎舞-「天璣」
...
...
@@ -183,11 +186,13 @@
12580477
2
--サンダー・ボルト
63166095
2
--閃刀起動-エンゲージ
48130397
2
--超融合
01984618
2
--天底の使徒
11110587
2
--隣の芝刈り
35371948
2
--トリックスター・ライトステージ
31434645
2
--呪われしエルドランド
24224830
2
--墓穴の指名者
46448938
2
--魔導書の神判
14532163
2
--ライトニング・ストーム
92107604
2
--神碑の泉
!
2023
.
2
TCG
#forbidden
...
...
@@ -381,6 +386,196 @@
08491961
2
--
Lyrilusc
-
Recital
Starling
35261759
2
--
Pot
of
Desires
!
2023
.
1
#forbidden
91869203
0
--アマゾネスの射手
20663556
0
--イレカエル
44910027
0
--ヴィクトリー・ドラゴン
51858306
0
--エクリプス・ワイバーン
53804307
0
--焔征竜-ブラスター
07563579
0
--
Em
ヒグルミ
17330916
0
--
EM
モンキーボード
34945480
0
--外神アザトート
90411554
0
--巌征竜-レドックス
08903700
0
--儀式魔人リリーサー
11384280
0
--キャノン・ソルジャー
17412721
0
--旧神ノーデン
50588353
0
--水晶機巧-ハリファイバー
67441435
0
--グローアップ・バルブ
34124316
0
--サイバーポッド
02563463
0
--流離のグリフォンライダー
88071625
0
--
The
tyrant
NEPTUNE
61665245
0
--サモン・ソーサレス
52653092
0
--
SNo
.
0
ホープ・ゼアル
48905153
0
--十二獣ドランシア
85115440
0
--十二獣ブルホーン
59537380
0
--守護竜アガーペイン
86148577
0
--守護竜エルピィ
88581108
0
--真竜皇
V
.
F
.
D
.
21377582
0
--真竜剣皇マスター
P
94677445
0
--星杯の神子イヴ
16923472
0
--ゼンマイハンター
15341821
0
--ダンディライオン
37818794
0
--超魔導竜騎士-ドラグーン・オブ・レッドアイズ
92731385
0
--ティアラメンツ・キトカロス
79875176
0
--トゥーン・キャノン・ソルジャー
75732622
0
--トーチ・ゴーレム
22593417
0
--トポロジック・ガンブラー・ドラゴン
39064822
0
--トロイメア・ゴブリン
03679218
0
--トロイメア・マーメイド
54719828
0
--
No
.
16
色の支配者ショック・ルーラー
58820923
0
--
No
.
95
ギャラクシーアイズ・ダークマター・ドラゴン
26400609
0
--瀑征竜-タイダル
71525232
0
--破滅竜ガンドラ
X
78706415
0
--ファイバーポッド
93369354
0
--フィッシュボーグ-ガンナー
23558733
0
--フェニキシアン・クラスター・アマリリス
09929398
0
--
BF
-朧影のゴウフウ
70369116
0
--捕食植物ヴェルテ・アナコンダ
31178212
0
--マジェスペクター・ユニコーン
63101919
0
--マジックテンペスター
34206604
0
--魔導サイエンティスト
04423206
0
--
M
.
X
-セイバー インヴォーカー
14702066
0
--メガキャノン・ソルジャー
96782886
0
--メンタルマスター
90809975
0
--餅カエル
83152482
0
--ユニオン・キャリアー
34086406
0
--ラヴァルバル・チェイン
85243784
0
--リンクロス
73356503
0
--烈風の結界像
57421866
0
--レベル・スティーラー
41482598
0
--悪夢の蜃気楼
44763025
0
--いたずら好きな双子悪魔
17375316
0
--押収
19613556
0
--大嵐
74191942
0
--苦渋の選択
42829885
0
--強引な番兵
45986603
0
--強奪
55144522
0
--強欲な壺
23557835
0
--次元融合
31423101
0
--神剣-フェニックスブレード
57953380
0
--生還の宝札
54447022
0
--ソウル・チャージ
60682203
0
--大寒波
69243953
0
--蝶の短剣-エルマ
79571449
0
--天使の施し
70828912
0
--早すぎた埋葬
42703248
0
--ハリケーン
76375976
0
--魔鍾洞
34906152
0
--マスドライバー
46411259
0
--突然変異
85602018
0
--遺言状
27174286
0
--異次元からの帰還
05851097
0
--虚無空間
93016201
0
--王宮の弾圧
61740673
0
--王宮の勅命
03280747
0
--第六感
64697231
0
--ダスト・シュート
80604091
0
--血の代償
32723153
0
--マジカル・エクスプロージョン
17178486
0
--ライフチェンジャー
28566710
0
--ラストバトル!
#limit
76794549
1
--アストログラフ・マジシャン
40177746
1
--イーバ
25862681
1
--エンシェント・フェアリー・ドラゴン
32909498
1
--クシャトリラ・フェンリル
68304193
1
--クシャトリラ・ユニコーン
12289247
1
--クロノグラフ・マジシャン
62320425
1
--古衛兵アギド
38814750
1
--
PSY
フレームギア・γ
74586817
1
--
PSY
フレームロード・Ω
26889158
1
--転生炎獣ガゼル
74997493
1
--鎖龍蛇-スカルデット
69811710
1
--宵星の騎士ギルス
78872731
1
--十二獣モルモラット
06602300
1
--重爆撃禽 ボム・フェネクス
28985331
1
--終末の騎士
63542003
1
--宿神像ケルドウ
78080961
1
--
SPYRAL
-ジーニアス
81275020
1
--
SR
ベイゴマックス
13533678
1
--スプライト・ジェット
82385847
1
--ダイナレスラー・パンクラトプス
15291624
1
--超雷龍-サンダー・ドラゴン
00572850
1
--ティアラメンツ・シェイレーン
73956664
1
--ティアラメンツ・レイノハート
90953320
1
--
TG
ハイパー・ライブラリアン
69015963
1
--デビル・フランケン
18326736
1
--星守の騎士 プトレマイオス
90448279
1
--天霆號アーゼウス
17266660
1
--朱光の宣告者
69610326
1
--覇王眷竜ダークヴルム
33854624
1
--深淵の獣マグナムート
33396948
1
--封印されしエクゾディア
44519536
1
--封印されし者の左足
07902349
1
--封印されし者の左腕
08124921
1
--封印されし者の右足
70903634
1
--封印されし者の右腕
09047460
1
--
BF
-隠れ蓑のスチーム
25725326
1
--プランキッズ・ミュー
35272499
1
--捕食植物オフリス・スコーピオ
24094258
1
--ヘビーメタルフォーゼ・エレクトラム
33508719
1
--メタモルポット
83107873
1
--雷鳥龍-サンダー・ドラゴン
89399912
1
--嵐征竜-テンペスト
92746535
1
--竜剣士ラスター
P
77103950
1
--壱世壊=ペルレイノ
33782437
1
--一時休戦
01845204
1
--簡易融合
81439173
1
--おろかな埋葬
23701465
1
--原初の種
04031928
1
--心変わり
83764718
1
--死者蘇生
46060017
1
--十二獣の会局
15443125
1
--スプライト・スターター
52340444
1
--閃刀機-ホーネットビット
32807846
1
--増援
72892473
1
--手札抹殺
73628505
1
--テラ・フォーミング
01984618
1
--天底の使徒
13035077
1
--ドラゴニック
D
18144506
1
--ハーピィの羽根帚
75500286
1
--封印の黄金櫃
52947044
1
--フュージョン・デステニー
07394770
1
--ブリリアント・フュージョン
28126717
1
--ふわんだりぃずと謎の地図
73468603
1
--盆回し
93600443
1
--マスク・チェンジ・セカンド
65681983
1
--抹殺の指名者
46448938
1
--魔導書の神判
71832012
1
--六世壊=パライゾス
36637374
1
--烙印開幕
44362883
1
--烙印融合
27970830
1
--六武の門
02295440
1
--ワン・フォー・ワン
35316708
1
--刻の封印
21076084
1
--トリックスター・リンカーネイション
23002292
1
--レッド・リブート
#semi limit
30741503
2
--オルフェゴール・ガラテア
09126351
2
--鬼ガエル
63288573
2
--閃刀姫-カガリ
37961969
2
--ティアラメンツ・ハゥフニス
91800273
2
--ディメンション・アトラクター
09411399
2
--
D
-
HERO
ディアボリックガイ
87209160
2
--鉄獣戦線 フラクトール
03078576
2
--八汰烏
03285551
2
--アラメシアの儀
66957584
2
--インフェルニティガン
57103969
2
--炎舞-「天璣」
35726888
2
--おろかな副葬
67723438
2
--緊急テレポート
84211599
2
--金満で謙虚な壺
35261759
2
--強欲で貪欲な壺
12580477
2
--サンダー・ボルト
63166095
2
--閃刀起動-エンゲージ
48130397
2
--超融合
11110587
2
--隣の芝刈り
35371948
2
--トリックスター・ライトステージ
31434645
2
--呪われしエルドランド
24224830
2
--墓穴の指名者
14532163
2
--ライトニング・ストーム
!
2022
.
10
#forbidden
91869203
0
--アマゾネスの射手
...
...
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