Commit 602ffdac authored by nanahira's avatar nanahira Committed by GitHub

clean abuse of ptr/int32, support 64-bit environment. (Track of #397) (#451)

parent 5c68e9f2
...@@ -8,13 +8,12 @@ ...@@ -8,13 +8,12 @@
#ifndef COMMON_H_ #ifndef COMMON_H_
#define COMMON_H_ #define COMMON_H_
typedef unsigned long uptr; #include <stdint.h>
typedef unsigned long long uint64; typedef unsigned long long uint64;
typedef unsigned int uint32; typedef unsigned int uint32;
typedef unsigned short uint16; typedef unsigned short uint16;
typedef unsigned char uint8; typedef unsigned char uint8;
typedef unsigned char byte; typedef unsigned char byte;
typedef long ptr;
typedef long long int64; typedef long long int64;
typedef int int32; typedef int int32;
typedef short int16; typedef short int16;
......
...@@ -422,7 +422,7 @@ int32 effect::is_activate_ready(effect* reason_effect, uint8 playerid, const tev ...@@ -422,7 +422,7 @@ int32 effect::is_activate_ready(effect* reason_effect, uint8 playerid, const tev
pduel->lua->add_param(e.reason_effect, PARAM_TYPE_EFFECT); pduel->lua->add_param(e.reason_effect, PARAM_TYPE_EFFECT);
pduel->lua->add_param(e.reason, PARAM_TYPE_INT); pduel->lua->add_param(e.reason, PARAM_TYPE_INT);
pduel->lua->add_param(e.reason_player, PARAM_TYPE_INT); pduel->lua->add_param(e.reason_player, PARAM_TYPE_INT);
pduel->lua->add_param((ptr)0, PARAM_TYPE_INT); pduel->lua->add_param(0, PARAM_TYPE_INT);
if(!pduel->lua->check_condition(cost, 9)) { if(!pduel->lua->check_condition(cost, 9)) {
reason_effect->cost_checked = FALSE; reason_effect->cost_checked = FALSE;
return FALSE; return FALSE;
...@@ -440,7 +440,7 @@ int32 effect::is_activate_ready(effect* reason_effect, uint8 playerid, const tev ...@@ -440,7 +440,7 @@ int32 effect::is_activate_ready(effect* reason_effect, uint8 playerid, const tev
pduel->lua->add_param(e.reason_effect, PARAM_TYPE_EFFECT); pduel->lua->add_param(e.reason_effect, PARAM_TYPE_EFFECT);
pduel->lua->add_param(e.reason, PARAM_TYPE_INT); pduel->lua->add_param(e.reason, PARAM_TYPE_INT);
pduel->lua->add_param(e.reason_player, PARAM_TYPE_INT); pduel->lua->add_param(e.reason_player, PARAM_TYPE_INT);
pduel->lua->add_param((ptr)0, PARAM_TYPE_INT); pduel->lua->add_param(0, PARAM_TYPE_INT);
if(!pduel->lua->check_condition(target, 9)) { if(!pduel->lua->check_condition(target, 9)) {
reason_effect->cost_checked = FALSE; reason_effect->cost_checked = FALSE;
return FALSE; return FALSE;
......
...@@ -3349,7 +3349,7 @@ int32 field::check_chain_target(uint8 chaincount, card * pcard) { ...@@ -3349,7 +3349,7 @@ int32 field::check_chain_target(uint8 chaincount, card * pcard) {
pduel->lua->add_param(pchain->evt.reason_effect , PARAM_TYPE_EFFECT); pduel->lua->add_param(pchain->evt.reason_effect , PARAM_TYPE_EFFECT);
pduel->lua->add_param(pchain->evt.reason, PARAM_TYPE_INT); pduel->lua->add_param(pchain->evt.reason, PARAM_TYPE_INT);
pduel->lua->add_param(pchain->evt.reason_player, PARAM_TYPE_INT); pduel->lua->add_param(pchain->evt.reason_player, PARAM_TYPE_INT);
pduel->lua->add_param((ptr)0, PARAM_TYPE_INT); pduel->lua->add_param(0, PARAM_TYPE_INT);
pduel->lua->add_param(pcard, PARAM_TYPE_CARD); pduel->lua->add_param(pcard, PARAM_TYPE_CARD);
return pduel->lua->check_condition(peffect->target, 10); return pduel->lua->check_condition(peffect->target, 10);
} }
......
...@@ -156,10 +156,10 @@ struct processor_unit { ...@@ -156,10 +156,10 @@ struct processor_unit {
uint16 step; uint16 step;
effect* peffect; effect* peffect;
group* ptarget; group* ptarget;
ptr arg1; int32 arg1;
ptr arg2; int32 arg2;
ptr arg3; int32 arg3;
ptr arg4; int32 arg4;
void* ptr1; void* ptr1;
void* ptr2; void* ptr2;
...@@ -266,7 +266,7 @@ struct processor { ...@@ -266,7 +266,7 @@ struct processor {
std::unordered_map<uint32, uint32> spsummon_once_map[2]; std::unordered_map<uint32, uint32> spsummon_once_map[2];
std::multimap<int32, card*, std::greater<int32>> xmaterial_lst; std::multimap<int32, card*, std::greater<int32>> xmaterial_lst;
ptr temp_var[4]; int32 temp_var[4];
uint32 global_flag; uint32 global_flag;
uint16 pre_field[2]; uint16 pre_field[2];
std::set<uint16> opp_mzone; std::set<uint16> opp_mzone;
...@@ -522,7 +522,7 @@ public: ...@@ -522,7 +522,7 @@ public:
int32 check_spself_from_hand_trigger(const chain& ch) const; int32 check_spself_from_hand_trigger(const chain& ch) const;
int32 is_able_to_enter_bp(); int32 is_able_to_enter_bp();
void add_process(uint16 type, uint16 step, effect* peffect, group* target, ptr arg1, ptr arg2, ptr arg3 = 0, ptr arg4 = 0, void* ptr1 = nullptr, void* ptr2 = nullptr); void add_process(uint16 type, uint16 step, effect* peffect, group* target, int32 arg1, int32 arg2, int32 arg3 = 0, int32 arg4 = 0, void* ptr1 = nullptr, void* ptr2 = nullptr);
int32 process(); int32 process();
int32 execute_cost(uint16 step, effect* peffect, uint8 triggering_player); int32 execute_cost(uint16 step, effect* peffect, uint8 triggering_player);
int32 execute_operation(uint16 step, effect* peffect, uint8 triggering_player); int32 execute_operation(uint16 step, effect* peffect, uint8 triggering_player);
......
...@@ -192,11 +192,11 @@ void interpreter::add_param(void *param, int32 type, bool front) { ...@@ -192,11 +192,11 @@ void interpreter::add_param(void *param, int32 type, bool front) {
else else
params.emplace_back(param, type); params.emplace_back(param, type);
} }
void interpreter::add_param(ptr param, int32 type, bool front) { void interpreter::add_param(int32 param, int32 type, bool front) {
if(front) if(front)
params.emplace_front((void*)param, type); params.emplace_front((void*)(intptr_t)param, type);
else else
params.emplace_back((void*)param, type); params.emplace_back((void*)(intptr_t)param, type);
} }
void interpreter::push_param(lua_State* L, bool is_coroutine) { void interpreter::push_param(lua_State* L, bool is_coroutine) {
int32 pushed = 0; int32 pushed = 0;
...@@ -205,13 +205,13 @@ void interpreter::push_param(lua_State* L, bool is_coroutine) { ...@@ -205,13 +205,13 @@ void interpreter::push_param(lua_State* L, bool is_coroutine) {
uint32 type = it.second; uint32 type = it.second;
switch(type) { switch(type) {
case PARAM_TYPE_INT: case PARAM_TYPE_INT:
lua_pushinteger(L, (ptr) it.first); lua_pushinteger(L, (lua_Integer)it.first);
break; break;
case PARAM_TYPE_STRING: case PARAM_TYPE_STRING:
lua_pushstring(L, (const char *) it.first); lua_pushstring(L, (const char *)it.first);
break; break;
case PARAM_TYPE_BOOLEAN: case PARAM_TYPE_BOOLEAN:
lua_pushboolean(L, (int32)(ptr)it.first); lua_pushboolean(L, (int32)(intptr_t)it.first);
break; break;
case PARAM_TYPE_CARD: { case PARAM_TYPE_CARD: {
if (it.first) if (it.first)
...@@ -235,11 +235,11 @@ void interpreter::push_param(lua_State* L, bool is_coroutine) { ...@@ -235,11 +235,11 @@ void interpreter::push_param(lua_State* L, bool is_coroutine) {
break; break;
} }
case PARAM_TYPE_FUNCTION: { case PARAM_TYPE_FUNCTION: {
function2value(L, (int32)(ptr)it.first); function2value(L, (int32)(intptr_t)it.first);
break; break;
} }
case PARAM_TYPE_INDEX: { case PARAM_TYPE_INDEX: {
int32 index = (int32)(ptr)it.first; int32 index = (int32)(intptr_t)it.first;
if(index > 0) if(index > 0)
lua_pushvalue(L, index); lua_pushvalue(L, index);
else if(is_coroutine) { else if(is_coroutine) {
......
...@@ -50,7 +50,7 @@ public: ...@@ -50,7 +50,7 @@ public:
int32 load_script(const char* script_name); int32 load_script(const char* script_name);
int32 load_card_script(uint32 code); int32 load_card_script(uint32 code);
void add_param(void* param, int32 type, bool front = false); void add_param(void* param, int32 type, bool front = false);
void add_param(ptr param, int32 type, bool front = false); void add_param(int32 param, int32 type, bool front = false);
void push_param(lua_State* L, bool is_coroutine = false); void push_param(lua_State* L, bool is_coroutine = false);
int32 call_function(int32 f, uint32 param_count, int32 ret_count); int32 call_function(int32 f, uint32 param_count, int32 ret_count);
int32 call_card_function(card* pcard, const char* f, uint32 param_count, int32 ret_count); int32 call_card_function(card* pcard, const char* f, uint32 param_count, int32 ret_count);
......
...@@ -57,13 +57,13 @@ uint32 default_card_reader(uint32 code, card_data* data) { ...@@ -57,13 +57,13 @@ uint32 default_card_reader(uint32 code, card_data* data) {
uint32 default_message_handler(void* pduel, uint32 message_type) { uint32 default_message_handler(void* pduel, uint32 message_type) {
return 0; return 0;
} }
extern "C" DECL_DLLEXPORT ptr create_duel(uint32 seed) { extern "C" DECL_DLLEXPORT intptr_t create_duel(uint32 seed) {
duel* pduel = new duel(); duel* pduel = new duel();
duel_set.insert(pduel); duel_set.insert(pduel);
pduel->random.reset(seed); pduel->random.reset(seed);
return (ptr)pduel; return (intptr_t)pduel;
} }
extern "C" DECL_DLLEXPORT void start_duel(ptr pduel, int32 options) { extern "C" DECL_DLLEXPORT void start_duel(intptr_t pduel, int32 options) {
duel* pd = (duel*)pduel; duel* pd = (duel*)pduel;
pd->game_field->core.duel_options |= options & 0xffff; pd->game_field->core.duel_options |= options & 0xffff;
int32 duel_rule = options >> 16; int32 duel_rule = options >> 16;
...@@ -103,14 +103,14 @@ extern "C" DECL_DLLEXPORT void start_duel(ptr pduel, int32 options) { ...@@ -103,14 +103,14 @@ extern "C" DECL_DLLEXPORT void start_duel(ptr pduel, int32 options) {
} }
pd->game_field->add_process(PROCESSOR_TURN, 0, 0, 0, 0, 0); pd->game_field->add_process(PROCESSOR_TURN, 0, 0, 0, 0, 0);
} }
extern "C" DECL_DLLEXPORT void end_duel(ptr pduel) { extern "C" DECL_DLLEXPORT void end_duel(intptr_t pduel) {
duel* pd = (duel*)pduel; duel* pd = (duel*)pduel;
if(duel_set.count(pd)) { if(duel_set.count(pd)) {
duel_set.erase(pd); duel_set.erase(pd);
delete pd; delete pd;
} }
} }
extern "C" DECL_DLLEXPORT void set_player_info(ptr pduel, int32 playerid, int32 lp, int32 startcount, int32 drawcount) { extern "C" DECL_DLLEXPORT void set_player_info(intptr_t pduel, int32 playerid, int32 lp, int32 startcount, int32 drawcount) {
duel* pd = (duel*)pduel; duel* pd = (duel*)pduel;
if(lp > 0) if(lp > 0)
pd->game_field->player[playerid].lp = lp; pd->game_field->player[playerid].lp = lp;
...@@ -119,22 +119,22 @@ extern "C" DECL_DLLEXPORT void set_player_info(ptr pduel, int32 playerid, int32 ...@@ -119,22 +119,22 @@ extern "C" DECL_DLLEXPORT void set_player_info(ptr pduel, int32 playerid, int32
if(drawcount >= 0) if(drawcount >= 0)
pd->game_field->player[playerid].draw_count = drawcount; pd->game_field->player[playerid].draw_count = drawcount;
} }
extern "C" DECL_DLLEXPORT void get_log_message(ptr pduel, byte* buf) { extern "C" DECL_DLLEXPORT void get_log_message(intptr_t pduel, byte* buf) {
strcpy((char*)buf, ((duel*)pduel)->strbuffer); strcpy((char*)buf, ((duel*)pduel)->strbuffer);
} }
extern "C" DECL_DLLEXPORT int32 get_message(ptr pduel, byte* buf) { extern "C" DECL_DLLEXPORT int32 get_message(intptr_t pduel, byte* buf) {
int32 len = ((duel*)pduel)->read_buffer(buf); int32 len = ((duel*)pduel)->read_buffer(buf);
((duel*)pduel)->clear_buffer(); ((duel*)pduel)->clear_buffer();
return len; return len;
} }
extern "C" DECL_DLLEXPORT int32 process(ptr pduel) { extern "C" DECL_DLLEXPORT int32 process(intptr_t pduel) {
duel* pd = (duel*)pduel; duel* pd = (duel*)pduel;
int result = pd->game_field->process(); int result = pd->game_field->process();
while((result & 0xffff) == 0 && (result & 0xf0000) == 0) while((result & 0xffff) == 0 && (result & 0xf0000) == 0)
result = pd->game_field->process(); result = pd->game_field->process();
return result; return result;
} }
extern "C" DECL_DLLEXPORT void new_card(ptr pduel, uint32 code, uint8 owner, uint8 playerid, uint8 location, uint8 sequence, uint8 position) { extern "C" DECL_DLLEXPORT void new_card(intptr_t pduel, uint32 code, uint8 owner, uint8 playerid, uint8 location, uint8 sequence, uint8 position) {
duel* ptduel = (duel*)pduel; duel* ptduel = (duel*)pduel;
if(ptduel->game_field->is_location_useable(playerid, location, sequence)) { if(ptduel->game_field->is_location_useable(playerid, location, sequence)) {
card* pcard = ptduel->new_card(code); card* pcard = ptduel->new_card(code);
...@@ -150,7 +150,7 @@ extern "C" DECL_DLLEXPORT void new_card(ptr pduel, uint32 code, uint8 owner, uin ...@@ -150,7 +150,7 @@ extern "C" DECL_DLLEXPORT void new_card(ptr pduel, uint32 code, uint8 owner, uin
} }
} }
} }
extern "C" DECL_DLLEXPORT void new_tag_card(ptr pduel, uint32 code, uint8 owner, uint8 location) { extern "C" DECL_DLLEXPORT void new_tag_card(intptr_t pduel, uint32 code, uint8 owner, uint8 location) {
duel* ptduel = (duel*)pduel; duel* ptduel = (duel*)pduel;
if(owner > 1 || !(location & (LOCATION_DECK | LOCATION_EXTRA))) if(owner > 1 || !(location & (LOCATION_DECK | LOCATION_EXTRA)))
return; return;
...@@ -174,7 +174,7 @@ extern "C" DECL_DLLEXPORT void new_tag_card(ptr pduel, uint32 code, uint8 owner, ...@@ -174,7 +174,7 @@ extern "C" DECL_DLLEXPORT void new_tag_card(ptr pduel, uint32 code, uint8 owner,
break; break;
} }
} }
extern "C" DECL_DLLEXPORT int32 query_card(ptr pduel, uint8 playerid, uint8 location, uint8 sequence, int32 query_flag, byte* buf, int32 use_cache) { extern "C" DECL_DLLEXPORT int32 query_card(intptr_t pduel, uint8 playerid, uint8 location, uint8 sequence, int32 query_flag, byte* buf, int32 use_cache) {
if(playerid != 0 && playerid != 1) if(playerid != 0 && playerid != 1)
return 0; return 0;
duel* ptduel = (duel*)pduel; duel* ptduel = (duel*)pduel;
...@@ -207,7 +207,7 @@ extern "C" DECL_DLLEXPORT int32 query_card(ptr pduel, uint8 playerid, uint8 loca ...@@ -207,7 +207,7 @@ extern "C" DECL_DLLEXPORT int32 query_card(ptr pduel, uint8 playerid, uint8 loca
return 4; return 4;
} }
} }
extern "C" DECL_DLLEXPORT int32 query_field_count(ptr pduel, uint8 playerid, uint8 location) { extern "C" DECL_DLLEXPORT int32 query_field_count(intptr_t pduel, uint8 playerid, uint8 location) {
duel* ptduel = (duel*)pduel; duel* ptduel = (duel*)pduel;
if(playerid != 0 && playerid != 1) if(playerid != 0 && playerid != 1)
return 0; return 0;
...@@ -236,7 +236,7 @@ extern "C" DECL_DLLEXPORT int32 query_field_count(ptr pduel, uint8 playerid, uin ...@@ -236,7 +236,7 @@ extern "C" DECL_DLLEXPORT int32 query_field_count(ptr pduel, uint8 playerid, uin
} }
return 0; return 0;
} }
extern "C" DECL_DLLEXPORT int32 query_field_card(ptr pduel, uint8 playerid, uint8 location, int32 query_flag, byte* buf, int32 use_cache) { extern "C" DECL_DLLEXPORT int32 query_field_card(intptr_t pduel, uint8 playerid, uint8 location, int32 query_flag, byte* buf, int32 use_cache) {
if(playerid != 0 && playerid != 1) if(playerid != 0 && playerid != 1)
return 0; return 0;
duel* ptduel = (duel*)pduel; duel* ptduel = (duel*)pduel;
...@@ -285,7 +285,7 @@ extern "C" DECL_DLLEXPORT int32 query_field_card(ptr pduel, uint8 playerid, uint ...@@ -285,7 +285,7 @@ extern "C" DECL_DLLEXPORT int32 query_field_card(ptr pduel, uint8 playerid, uint
} }
return (int32)(p - buf); return (int32)(p - buf);
} }
extern "C" DECL_DLLEXPORT int32 query_field_info(ptr pduel, byte* buf) { extern "C" DECL_DLLEXPORT int32 query_field_info(intptr_t pduel, byte* buf) {
duel* ptduel = (duel*)pduel; duel* ptduel = (duel*)pduel;
byte* p = buf; byte* p = buf;
*p++ = MSG_RELOAD_FIELD; *p++ = MSG_RELOAD_FIELD;
...@@ -333,12 +333,12 @@ extern "C" DECL_DLLEXPORT int32 query_field_info(ptr pduel, byte* buf) { ...@@ -333,12 +333,12 @@ extern "C" DECL_DLLEXPORT int32 query_field_info(ptr pduel, byte* buf) {
} }
return (int32)(p - buf); return (int32)(p - buf);
} }
extern "C" DECL_DLLEXPORT void set_responsei(ptr pduel, int32 value) { extern "C" DECL_DLLEXPORT void set_responsei(intptr_t pduel, int32 value) {
((duel*)pduel)->set_responsei(value); ((duel*)pduel)->set_responsei(value);
} }
extern "C" DECL_DLLEXPORT void set_responseb(ptr pduel, byte* buf) { extern "C" DECL_DLLEXPORT void set_responseb(intptr_t pduel, byte* buf) {
((duel*)pduel)->set_responseb(buf); ((duel*)pduel)->set_responseb(buf);
} }
extern "C" DECL_DLLEXPORT int32 preload_script(ptr pduel, const char* script, int32 len) { extern "C" DECL_DLLEXPORT int32 preload_script(intptr_t pduel, const char* script, int32 len) {
return ((duel*)pduel)->lua->load_script(script); return ((duel*)pduel)->lua->load_script(script);
} }
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#define OCGAPI_H_ #define OCGAPI_H_
#include "common.h" #include "common.h"
#ifdef WIN32 #ifdef WIN32
#define DECL_DLLEXPORT __declspec(dllexport) #define DECL_DLLEXPORT __declspec(dllexport)
#else #else
...@@ -34,22 +35,22 @@ byte* read_script(const char* script_name, int* len); ...@@ -34,22 +35,22 @@ byte* read_script(const char* script_name, int* len);
uint32 read_card(uint32 code, card_data* data); uint32 read_card(uint32 code, card_data* data);
uint32 handle_message(void* pduel, uint32 message_type); uint32 handle_message(void* pduel, uint32 message_type);
extern "C" DECL_DLLEXPORT ptr create_duel(uint32 seed); extern "C" DECL_DLLEXPORT intptr_t create_duel(uint32 seed);
extern "C" DECL_DLLEXPORT void start_duel(ptr pduel, int32 options); extern "C" DECL_DLLEXPORT void start_duel(intptr_t pduel, int32 options);
extern "C" DECL_DLLEXPORT void end_duel(ptr pduel); extern "C" DECL_DLLEXPORT void end_duel(intptr_t pduel);
extern "C" DECL_DLLEXPORT void set_player_info(ptr pduel, int32 playerid, int32 lp, int32 startcount, int32 drawcount); extern "C" DECL_DLLEXPORT void set_player_info(intptr_t pduel, int32 playerid, int32 lp, int32 startcount, int32 drawcount);
extern "C" DECL_DLLEXPORT void get_log_message(ptr pduel, byte* buf); extern "C" DECL_DLLEXPORT void get_log_message(intptr_t pduel, byte* buf);
extern "C" DECL_DLLEXPORT int32 get_message(ptr pduel, byte* buf); extern "C" DECL_DLLEXPORT int32 get_message(intptr_t pduel, byte* buf);
extern "C" DECL_DLLEXPORT int32 process(ptr pduel); extern "C" DECL_DLLEXPORT int32 process(intptr_t pduel);
extern "C" DECL_DLLEXPORT void new_card(ptr pduel, uint32 code, uint8 owner, uint8 playerid, uint8 location, uint8 sequence, uint8 position); extern "C" DECL_DLLEXPORT void new_card(intptr_t pduel, uint32 code, uint8 owner, uint8 playerid, uint8 location, uint8 sequence, uint8 position);
extern "C" DECL_DLLEXPORT void new_tag_card(ptr pduel, uint32 code, uint8 owner, uint8 location); extern "C" DECL_DLLEXPORT void new_tag_card(intptr_t pduel, uint32 code, uint8 owner, uint8 location);
extern "C" DECL_DLLEXPORT int32 query_card(ptr pduel, uint8 playerid, uint8 location, uint8 sequence, int32 query_flag, byte* buf, int32 use_cache); extern "C" DECL_DLLEXPORT int32 query_card(intptr_t pduel, uint8 playerid, uint8 location, uint8 sequence, int32 query_flag, byte* buf, int32 use_cache);
extern "C" DECL_DLLEXPORT int32 query_field_count(ptr pduel, uint8 playerid, uint8 location); extern "C" DECL_DLLEXPORT int32 query_field_count(intptr_t pduel, uint8 playerid, uint8 location);
extern "C" DECL_DLLEXPORT int32 query_field_card(ptr pduel, uint8 playerid, uint8 location, int32 query_flag, byte* buf, int32 use_cache); extern "C" DECL_DLLEXPORT int32 query_field_card(intptr_t pduel, uint8 playerid, uint8 location, int32 query_flag, byte* buf, int32 use_cache);
extern "C" DECL_DLLEXPORT int32 query_field_info(ptr pduel, byte* buf); extern "C" DECL_DLLEXPORT int32 query_field_info(intptr_t pduel, byte* buf);
extern "C" DECL_DLLEXPORT void set_responsei(ptr pduel, int32 value); extern "C" DECL_DLLEXPORT void set_responsei(intptr_t pduel, int32 value);
extern "C" DECL_DLLEXPORT void set_responseb(ptr pduel, byte* buf); extern "C" DECL_DLLEXPORT void set_responseb(intptr_t pduel, byte* buf);
extern "C" DECL_DLLEXPORT int32 preload_script(ptr pduel, const char* script, int32 len); extern "C" DECL_DLLEXPORT int32 preload_script(intptr_t pduel, const char* script, int32 len);
byte* default_script_reader(const char* script_name, int* len); byte* default_script_reader(const char* script_name, int* len);
uint32 default_card_reader(uint32 code, card_data* data); uint32 default_card_reader(uint32 code, card_data* data);
uint32 default_message_handler(void* pduel, uint32 msg_type); uint32 default_message_handler(void* pduel, uint32 msg_type);
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
#include "ocgapi.h" #include "ocgapi.h"
#include <iterator> #include <iterator>
void field::add_process(uint16 type, uint16 step, effect* peffect, group* target, ptr arg1, ptr arg2, ptr arg3, ptr arg4, void* ptr1, void* ptr2) { void field::add_process(uint16 type, uint16 step, effect* peffect, group* target, int32 arg1, int32 arg2, int32 arg3, int32 arg4, void* ptr1, void* ptr2) {
processor_unit new_unit; processor_unit new_unit;
new_unit.type = type; new_unit.type = type;
new_unit.step = step; new_unit.step = step;
......
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