Variables that are not changed after construction should be constant or immutable
@@ -22,7 +22,7 @@ contract PuppyRaffle is ReentrancyGuard, ERC721, Ownable {
uint256 public immutable entranceFee;
address[] public players;
- uint256 public raffleDuration;
+ uint256 public immutable raffleDuration;
uint256 public raffleStartTime;
address public previousWinner;
@@ -39,17 +39,17 @@ contract PuppyRaffle is ReentrancyGuard, ERC721, Ownable {
mapping(uint256 => string) public rarityToName;
// Stats for the common puppy (pug)
- string private commonImageUri = "ipfs://QmSsYRx3LpDAb1GZQm7zZ1AuHZjfbPkD6J7s9r41xu1mf8";
+ string private constant commonImageUri = "ipfs://QmSsYRx3LpDAb1GZQm7zZ1AuHZjfbPkD6J7s9r41xu1mf8";
uint256 public constant COMMON_RARITY = 70;
string private constant COMMON = "common";
// Stats for the rare puppy (st. bernard)
- string private rareImageUri = "ipfs://QmUPjADFGEKmfohdTaNcWhp7VGk26h5jXDA7v3VtTnTLcW";
+ string private constant rareImageUri = "ipfs://QmUPjADFGEKmfohdTaNcWhp7VGk26h5jXDA7v3VtTnTLcW";
uint256 public constant RARE_RARITY = 25;
string private constant RARE = "rare";
// Stats for the legendary puppy (shiba inu)
- string private legendaryImageUri = "ipfs://QmYx6GsYAKnNzZ9A6NvEKV9nf1VaDzJrqDR23Y8YSkebLU";
+ string private constant legendaryImageUri = "ipfs://QmYx6GsYAKnNzZ9A6NvEKV9nf1VaDzJrqDR23Y8YSkebLU";
uint256 public constant LEGENDARY_RARITY = 5;
string private constant LEGENDARY = "legendary";