Commit b755234b authored by DailyShana's avatar DailyShana

add Card.IsOriginalSetCard

parent 6a708742
......@@ -303,6 +303,17 @@ int32 card::is_set_card(uint32 set_code) {
}
return FALSE;
}
int32 card::is_origin_set_card(uint32 set_code) {
uint64 setcode = data.setcode;
uint32 settype = set_code & 0xfff;
uint32 setsubtype = set_code & 0xf000;
while(setcode) {
if((setcode & 0xfff) == settype && (setcode & 0xf000 & setsubtype) == setsubtype)
return TRUE;
setcode = setcode >> 16;
}
return FALSE;
}
int32 card::is_pre_set_card(uint32 set_code) {
uint32 code = previous.code;
uint64 setcode;
......
......@@ -166,6 +166,7 @@ public:
uint32 get_code();
uint32 get_another_code();
int32 is_set_card(uint32 set_code);
int32 is_origin_set_card(uint32 set_code);
int32 is_pre_set_card(uint32 set_code);
int32 is_fusion_set_card(uint32 set_code);
uint32 get_type();
......
......@@ -22,6 +22,7 @@ static const struct luaL_Reg cardlib[] = {
{ "GetFusionCode", scriptlib::card_get_fusion_code },
{ "IsFusionCode", scriptlib::card_is_fusion_code },
{ "IsSetCard", scriptlib::card_is_set_card },
{ "IsOriginalSetCard", scriptlib::card_is_origin_set_card },
{ "IsPreviousSetCard", scriptlib::card_is_pre_set_card },
{ "IsFusionSetCard", scriptlib::card_is_fusion_set_card },
{ "GetType", scriptlib::card_get_type },
......
......@@ -116,6 +116,14 @@ int32 scriptlib::card_is_set_card(lua_State *L) {
lua_pushboolean(L, pcard->is_set_card(set_code));
return 1;
}
int32 scriptlib::card_is_origin_set_card(lua_State *L) {
check_param_count(L, 2);
check_param(L, PARAM_TYPE_CARD, 1);
card* pcard = *(card**) lua_touserdata(L, 1);
uint32 set_code = lua_tointeger(L, 2);
lua_pushboolean(L, pcard->is_origin_set_card(set_code));
return 1;
}
int32 scriptlib::card_is_pre_set_card(lua_State *L) {
check_param_count(L, 2);
check_param(L, PARAM_TYPE_CARD, 1);
......
......@@ -24,6 +24,7 @@ public:
static int32 card_get_fusion_code(lua_State *L);
static int32 card_is_fusion_code(lua_State *L);
static int32 card_is_set_card(lua_State *L);
static int32 card_is_origin_set_card(lua_State *L);
static int32 card_is_pre_set_card(lua_State *L);
static int32 card_is_fusion_set_card(lua_State *L);
static int32 card_get_type(lua_State *L);
......
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