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
f16f9eb0
Commit
f16f9eb0
authored
Sep 18, 2018
by
nanahira
Browse files
Options
Browse Files
Download
Plain Diff
merge
parents
f6e362ab
dcf1c266
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
66 additions
and
15 deletions
+66
-15
gframe/config.h
gframe/config.h
+5
-3
gframe/replay_mode.cpp
gframe/replay_mode.cpp
+3
-0
gframe/single_duel.cpp
gframe/single_duel.cpp
+25
-2
gframe/tag_duel.cpp
gframe/tag_duel.cpp
+31
-8
ocgcore
ocgcore
+1
-1
premake4.lua
premake4.lua
+1
-1
No files found.
gframe/config.h
View file @
f16f9eb0
...
...
@@ -12,11 +12,9 @@
#include <ws2tcpip.h>
#ifdef _MSC_VER
#define myswprintf _swprintf
#define mywcsncasecmp _wcsnicmp
#define mystrncasecmp _strnicmp
#else
#define myswprintf swprintf
#define mywcsncasecmp wcsncasecmp
#define mystrncasecmp strncasecmp
#endif
...
...
@@ -44,7 +42,6 @@
#define SOCKET_ERRNO() (errno)
#include <wchar.h>
#define myswprintf(buf, fmt, ...) swprintf(buf, 4096, fmt, ##__VA_ARGS__)
#define mywcsncasecmp wcsncasecmp
#define mystrncasecmp strncasecmp
inline
int
_wtoi
(
const
wchar_t
*
s
)
{
...
...
@@ -53,6 +50,11 @@ inline int _wtoi(const wchar_t * s) {
}
#endif
template
<
size_t
N
,
typename
...
TR
>
inline
int
myswprintf
(
wchar_t
(
&
buf
)[
N
],
const
wchar_t
*
fmt
,
TR
...
args
)
{
return
swprintf
(
buf
,
N
,
fmt
,
args
...);
}
#ifndef YGOPRO_SERVER_MODE
#include <irrlicht.h>
#ifdef __APPLE__
...
...
gframe/replay_mode.cpp
View file @
f16f9eb0
...
...
@@ -156,6 +156,9 @@ bool ReplayMode::StartDuel() {
cur_replay
.
ReadName
(
mainGame
->
dInfo
.
clientname
);
}
pduel
=
create_duel
(
rnd
.
rand
());
#ifdef YGOPRO_SERVER_MODE
preload_script
(
pduel
,
"./script/special.lua"
,
0
);
#endif
int
start_lp
=
cur_replay
.
ReadInt32
();
int
start_hand
=
cur_replay
.
ReadInt32
();
int
draw_count
=
cur_replay
.
ReadInt32
();
...
...
gframe/single_duel.cpp
View file @
f16f9eb0
...
...
@@ -534,6 +534,9 @@ void SingleDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
set_message_handler
((
message_handler
)
SingleDuel
::
MessageHandler
);
rnd
.
reset
(
seed
);
pduel
=
create_duel
(
rnd
.
rand
());
#ifdef YGOPRO_SERVER_MODE
preload_script
(
pduel
,
"./script/special.lua"
,
0
);
#endif
set_player_info
(
pduel
,
0
,
host_info
.
start_lp
,
host_info
.
start_hand
,
host_info
.
draw_count
);
set_player_info
(
pduel
,
1
,
host_info
.
start_lp
,
host_info
.
start_hand
,
host_info
.
draw_count
);
int
opt
=
(
int
)
host_info
.
duel_rule
<<
16
;
...
...
@@ -1805,7 +1808,7 @@ void SingleDuel::RequestField(DuelPlayer* dp) {
BufferIO
::
WriteInt16
(
pbuf_p
,
phase
);
NetServer
::
SendBufferToPlayer
(
dp
,
STOC_GAME_MSG
,
phasebuf
,
3
);
char
query_buffer
[
256
];
char
query_buffer
[
1024
];
int
length
=
query_field_info
(
pduel
,
(
unsigned
char
*
)
query_buffer
);
NetServer
::
SendBufferToPlayer
(
dp
,
STOC_GAME_MSG
,
query_buffer
,
length
);
RefreshMzone
(
1
-
player
,
0xffdfff
,
0
,
dp
);
...
...
@@ -1851,7 +1854,11 @@ void SingleDuel::RefreshMzone(int player, int flag, int use_cache, DuelPlayer* d
void
SingleDuel
::
RefreshMzone
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x20000
];
#else
char
query_buffer
[
0x2000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -1895,7 +1902,11 @@ void SingleDuel::RefreshSzone(int player, int flag, int use_cache, DuelPlayer* d
void
SingleDuel
::
RefreshSzone
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x20000
];
#else
char
query_buffer
[
0x2000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -1939,7 +1950,11 @@ void SingleDuel::RefreshHand(int player, int flag, int use_cache, DuelPlayer* dp
void
SingleDuel
::
RefreshHand
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x20000
];
#else
char
query_buffer
[
0x2000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -1987,7 +2002,11 @@ void SingleDuel::RefreshGrave(int player, int flag, int use_cache, DuelPlayer* d
void
SingleDuel
::
RefreshGrave
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x20000
];
#else
char
query_buffer
[
0x2000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2017,7 +2036,11 @@ void SingleDuel::RefreshExtra(int player, int flag, int use_cache, DuelPlayer* d
void
SingleDuel
::
RefreshExtra
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x20000
];
#else
char
query_buffer
[
0x2000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2051,7 +2074,7 @@ if(!dp || dp == players[player])
}
#ifdef YGOPRO_SERVER_MODE
void
SingleDuel
::
RefreshRemoved
(
int
player
,
int
flag
,
int
use_cache
,
DuelPlayer
*
dp
)
{
char
query_buffer
[
0x2000
];
char
query_buffer
[
0x2000
0
];
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
gframe/tag_duel.cpp
View file @
f16f9eb0
...
...
@@ -511,6 +511,9 @@ void TagDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
set_message_handler
((
message_handler
)
TagDuel
::
MessageHandler
);
rnd
.
reset
(
seed
);
pduel
=
create_duel
(
rnd
.
rand
());
#ifdef YGOPRO_SERVER_MODE
preload_script
(
pduel
,
"./script/special.lua"
,
0
);
#endif
set_player_info
(
pduel
,
0
,
host_info
.
start_lp
,
host_info
.
start_hand
,
host_info
.
draw_count
);
set_player_info
(
pduel
,
1
,
host_info
.
start_lp
,
host_info
.
start_hand
,
host_info
.
draw_count
);
int
opt
=
(
int
)
host_info
.
duel_rule
<<
16
;
...
...
@@ -1908,7 +1911,7 @@ void TagDuel::RequestField(DuelPlayer* dp) {
BufferIO
::
WriteInt16
(
pbuf_p
,
phase
);
NetServer
::
SendBufferToPlayer
(
dp
,
STOC_GAME_MSG
,
phasebuf
,
3
);
char
query_buffer
[
256
];
char
query_buffer
[
1024
];
int
length
=
query_field_info
(
pduel
,
(
unsigned
char
*
)
query_buffer
);
NetServer
::
SendBufferToPlayer
(
dp
,
STOC_GAME_MSG
,
query_buffer
,
length
);
RefreshMzone
(
1
-
player
,
0xffdfff
,
0
,
dp
);
...
...
@@ -1954,7 +1957,11 @@ void TagDuel::RefreshMzone(int player, int flag, int use_cache, DuelPlayer* dp)
void
TagDuel
::
RefreshMzone
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
char
query_buffer
[
0x2000
];
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x40000
];
#else
char
query_buffer
[
0x4000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2008,7 +2015,11 @@ void TagDuel::RefreshSzone(int player, int flag, int use_cache, DuelPlayer* dp)
void
TagDuel
::
RefreshSzone
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
char
query_buffer
[
0x2000
];
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x40000
];
#else
char
query_buffer
[
0x4000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2062,7 +2073,11 @@ void TagDuel::RefreshHand(int player, int flag, int use_cache, DuelPlayer* dp)
void
TagDuel
::
RefreshHand
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
char
query_buffer
[
0x2000
];
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x40000
];
#else
char
query_buffer
[
0x4000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2112,7 +2127,11 @@ void TagDuel::RefreshGrave(int player, int flag, int use_cache, DuelPlayer* dp)
void
TagDuel
::
RefreshGrave
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
char
query_buffer
[
0x2000
];
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x40000
];
#else
char
query_buffer
[
0x4000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2142,7 +2161,11 @@ void TagDuel::RefreshExtra(int player, int flag, int use_cache, DuelPlayer* dp)
void
TagDuel
::
RefreshExtra
(
int
player
,
int
flag
,
int
use_cache
)
#endif //YGOPRO_SERVER_MODE
{
char
query_buffer
[
0x2000
];
#ifdef YGOPRO_SERVER_MODE
char
query_buffer
[
0x40000
];
#else
char
query_buffer
[
0x4000
];
#endif
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2178,7 +2201,7 @@ if(!dp || dp == cur_player[player])
}
#ifdef YGOPRO_SERVER_MODE
void
TagDuel
::
RefreshRemoved
(
int
player
,
int
flag
,
int
use_cache
,
DuelPlayer
*
dp
)
{
char
query_buffer
[
0x
2
000
];
char
query_buffer
[
0x
40
000
];
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_DATA
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
@@ -2214,7 +2237,7 @@ void TagDuel::RefreshRemoved(int player, int flag, int use_cache, DuelPlayer* dp
}
#endif
void
TagDuel
::
RefreshSingle
(
int
player
,
int
location
,
int
sequence
,
int
flag
)
{
char
query_buffer
[
0x
2
000
];
char
query_buffer
[
0x
4
000
];
char
*
qbuf
=
query_buffer
;
BufferIO
::
WriteInt8
(
qbuf
,
MSG_UPDATE_CARD
);
BufferIO
::
WriteInt8
(
qbuf
,
player
);
...
...
ocgcore
@
e4cd79bf
Subproject commit
74dfabcae52037dc09e5340b76985c90d45d5973
Subproject commit
e4cd79bf91cc524451fbaae30009b3740966b1bb
premake4.lua
View file @
f16f9eb0
...
...
@@ -25,7 +25,7 @@ solution "ygo"
configuration
"vs*"
flags
"EnableSSE2"
buildoptions
{
"-wd4996"
}
buildoptions
{
"-wd4996"
,
"/utf-8"
}
defines
{
"_CRT_SECURE_NO_WARNINGS"
}
configuration
"not vs*"
...
...
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