fix logic as follow the game rule.