mirror of
https://github.com/wesnoth/wesnoth
synced 2025-04-27 19:38:33 +00:00

Using four abilities instead of two means the C++ checking_tag mechanism needs to handle multiple values, or needs to be supported by recursion counting. The branching test lets one level of recursion finish, and then tries to go deeper. This tests for bugs where a recursion detection tool in the engine gets its count reset when exiting one level of recursion.