The check to see whether the caller is currentKing or not in claimThrone() is wrong as it only allows zero address to call it instead of the other way around.
Not a single user can participate in the game at all. This check makes the contract unusable, it is DoSing itself.
As the initial currentKing value is set to address(0) by default, this check only allows address(0) to call it, which is impossible. Even if currentKing is given a valid address value, no one would be able to successfully claim the throne except that initial address.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.