Commit f8cb041e authored by nanahira's avatar nanahira

Merge branch 'master' of github.com:Fluorohydride/ygopro-core

parents 2e8d7994 304fac05
...@@ -2079,7 +2079,7 @@ std::tuple<uint8, effect*> card::refresh_control_status() { ...@@ -2079,7 +2079,7 @@ std::tuple<uint8, effect*> card::refresh_control_status() {
ceffect = peffect; ceffect = peffect;
} }
} }
return { final, ceffect }; return std::make_tuple(final, ceffect);
} }
void card::count_turn(uint16 ct) { void card::count_turn(uint16 ct) {
turn_counter = ct; turn_counter = ct;
......
...@@ -209,7 +209,6 @@ struct processor { ...@@ -209,7 +209,6 @@ struct processor {
chain_list new_ochain_h; chain_list new_ochain_h;
chain_list new_chains; chain_list new_chains;
delayed_effect_collection delayed_quick_tmp; delayed_effect_collection delayed_quick_tmp;
delayed_effect_collection delayed_quick_break;
delayed_effect_collection delayed_quick; delayed_effect_collection delayed_quick;
instant_f_list quick_f_chain; instant_f_list quick_f_chain;
card_set leave_confirmed; card_set leave_confirmed;
......
...@@ -1282,7 +1282,7 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free ...@@ -1282,7 +1282,7 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
core.new_ochain_s.splice(core.new_ochain_s.begin(), core.new_ochain); core.new_ochain_s.splice(core.new_ochain_s.begin(), core.new_ochain);
core.full_event.splice(core.full_event.end(), core.delayed_activate_event); core.full_event.splice(core.full_event.end(), core.delayed_activate_event);
core.delayed_quick.clear(); core.delayed_quick.clear();
core.delayed_quick_break.swap(core.delayed_quick); core.delayed_quick_tmp.swap(core.delayed_quick);
core.current_player = infos.turn_player; core.current_player = infos.turn_player;
core.units.begin()->step = 1; core.units.begin()->step = 1;
return FALSE; return FALSE;
...@@ -1466,6 +1466,7 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free ...@@ -1466,6 +1466,7 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
case 10: { case 10: {
core.new_ochain_h.clear(); core.new_ochain_h.clear();
core.full_event.clear(); core.full_event.clear();
core.delayed_quick.clear();
for(auto& ch_lim : core.chain_limit) for(auto& ch_lim : core.chain_limit)
luaL_unref(pduel->lua->lua_state, LUA_REGISTRYINDEX, ch_lim.function); luaL_unref(pduel->lua->lua_state, LUA_REGISTRYINDEX, ch_lim.function);
core.chain_limit.clear(); core.chain_limit.clear();
...@@ -1631,7 +1632,7 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori ...@@ -1631,7 +1632,7 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
effect* peffect = eit->second; effect* peffect = eit->second;
++eit; ++eit;
peffect->set_activate_location(); peffect->set_activate_location();
if(peffect->is_chainable(priority) && peffect->is_activateable(priority, ev)) { if(!peffect->is_flag(EFFECT_FLAG_DELAY) && peffect->is_chainable(priority) && peffect->is_activateable(priority, ev)) {
card* phandler = peffect->get_handler(); card* phandler = peffect->get_handler();
newchain.flag = 0; newchain.flag = 0;
newchain.chain_id = infos.field_id++; newchain.chain_id = infos.field_id++;
...@@ -1641,8 +1642,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori ...@@ -1641,8 +1642,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
newchain.triggering_player = priority; newchain.triggering_player = priority;
core.select_chains.push_back(newchain); core.select_chains.push_back(newchain);
} }
core.delayed_quick_tmp.erase(std::make_pair(peffect, ev));
core.delayed_quick_break.erase(std::make_pair(peffect, ev));
} }
} }
} }
...@@ -1763,7 +1762,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori ...@@ -1763,7 +1762,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
else { else {
core.hint_timing[0] &= TIMING_DAMAGE_STEP | TIMING_DAMAGE_CAL; core.hint_timing[0] &= TIMING_DAMAGE_STEP | TIMING_DAMAGE_CAL;
core.hint_timing[1] &= TIMING_DAMAGE_STEP | TIMING_DAMAGE_CAL; core.hint_timing[1] &= TIMING_DAMAGE_STEP | TIMING_DAMAGE_CAL;
core.delayed_quick.clear();
} }
} }
core.select_chains.clear(); core.select_chains.clear();
...@@ -4561,8 +4559,6 @@ int32 field::break_effect() { ...@@ -4561,8 +4559,6 @@ int32 field::break_effect() {
core.new_ochain.erase(rm); core.new_ochain.erase(rm);
} }
} }
core.delayed_quick_break.insert(core.delayed_quick_tmp.begin(), core.delayed_quick_tmp.end());
core.delayed_quick_tmp.clear();
core.used_event.splice(core.used_event.end(), core.instant_event); core.used_event.splice(core.used_event.end(), core.instant_event);
adjust_instant(); adjust_instant();
return 0; return 0;
......
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