# Backward Logic in Claim Throne; Hence No One can claim the Throne
## Description
- Normally, the contract should **prevent the current king from reclaiming the throne**, ensuring that **only new players** can claim, but this current logic is bakward.
- Everytime a user tries to claim the throne, the check happens which checks that msg.sender == currentKing where `currentKing` is address(0) but user address != address(0) hence no one can claim the throne.
```javascript
require(msg.sender == currentKing, "Game: You are already the king. No need to re-claim.");
```
- This only allows the **current king** to claim again effectively, which is an address(0) by the way; **blocking all other players** from claiming.
- This is the **opposite** of the intended behavior and would **break the game flow** if enabled.
---
## Risk
**Likelihood**:
- This bug will occur **whenever the check is uncommented** or implemented as shown.
- **Any attempt by a new player** to claim the throne will **revert**, making the game **unplayable**.
**Impact**:
- **Only the current king** can claim again.
- **All new claims** will revert, effectively **freezing the game**.
- The **game logic is fundamentally broken**, preventing normal gameplay.
---
## Proof of Concept
- Paste this function in the Test File and see...
```javascript
function testClaimThrone() public {
vm.startPrank(player1);
game.claimThrone{value: game.claimFee()}();
console2.log("Player1 claimed throne successfully.");
vm.stopPrank();
}
```
- You will get these logs
```java
[FAIL: Game: You are already the king. No need to re-claim.]
```
---
## Recommended Mitigation
Reverse the logic so that the **current king is prevented** from reclaiming the throne, and **new players are allowed**:
```diff
- require(msg.sender == currentKing, "Game: You are already the king. No need to re-claim.");
+ require(msg.sender != currentKing, "Game: You are already the king. No need to re-claim.");
```
This change enforces the intended access control logic, allowing only new participants to challenge the throne.
```
---