Commit 6cbc4894 authored by salix5's avatar salix5

Card.GetFlagEffectLabel()

parent 071a5d40
...@@ -1076,7 +1076,7 @@ int32 scriptlib::card_set_flag_effect_label(lua_State *L) { ...@@ -1076,7 +1076,7 @@ int32 scriptlib::card_set_flag_effect_label(lua_State *L) {
check_param_count(L, 3); check_param_count(L, 3);
check_param(L, PARAM_TYPE_CARD, 1); check_param(L, PARAM_TYPE_CARD, 1);
card* pcard = *(card**) lua_touserdata(L, 1); card* pcard = *(card**) lua_touserdata(L, 1);
int32 code = (lua_tointeger(L, 2) & 0xfffffff) | 0x10000000; uint32 code = (lua_tounsigned(L, 2) & 0xfffffff) | 0x10000000;
int lab = lua_tointeger(L, 3); int lab = lua_tointeger(L, 3);
auto eit = pcard->single_effect.find(code); auto eit = pcard->single_effect.find(code);
if(eit == pcard->single_effect.end()) if(eit == pcard->single_effect.end())
...@@ -1091,13 +1091,19 @@ int32 scriptlib::card_get_flag_effect_label(lua_State *L) { ...@@ -1091,13 +1091,19 @@ int32 scriptlib::card_get_flag_effect_label(lua_State *L) {
check_param_count(L, 2); check_param_count(L, 2);
check_param(L, PARAM_TYPE_CARD, 1); check_param(L, PARAM_TYPE_CARD, 1);
card* pcard = *(card**) lua_touserdata(L, 1); card* pcard = *(card**) lua_touserdata(L, 1);
int32 code = (lua_tointeger(L, 2) & 0xfffffff) | 0x10000000; uint32 code = (lua_tounsigned(L, 2) & 0xfffffff) | 0x10000000;
auto rg = pcard->single_effect.equal_range(code); auto rg = pcard->single_effect.equal_range(code);
int32 count = 0; int32 count = 0;
if(rg.first == rg.second) {
- lua_pushnil(L);
count = 1;
}
else {
for(; rg.first != rg.second; ++rg.first) { for(; rg.first != rg.second; ++rg.first) {
lua_pushinteger(L, rg.first->second->label); lua_pushinteger(L, rg.first->second->label);
count++; count++;
} }
}
return count; return count;
} }
int32 scriptlib::card_create_relation(lua_State *L) { int32 scriptlib::card_create_relation(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