# character sheets events for subgraph
## [erc6551 registry](https://github.com/MrDeadCe11/character-sheets/blob/main/src/interfaces/IERC6551Registry.sol)
1. event AccountCreated(address account, address implementation, uint256 chainId, address tokenContract, uint256 tokenId, uint256 salt);
## [erc6551 account](https://github.com/MrDeadCe11/character-sheets/blob/main/src/interfaces/IERC6551Account.sol)
2. event TransactionExecuted(address indexed target, uint256 indexed value, bytes data);
## [character sheets factory](https://github.com/MrDeadCe11/character-sheets/blob/main/src/CharacterSheetsFactory.sol)
3. event CharacterSheetsCreated(address newCharacterSheets, address creator);
4. event CharacterSheetsUpdated(address newCharacterSheets);
5. event ClassesCreated(address newClasses, address creator);
6. event ExperienceUpdated(address newExperience);
7. event ExperienceAndItemsCreated(address newExp, address creator);
8. event RegistryUpdated(address newRegistry);
9. event ERC6551AccountImplementationUpdated(address newImplementation);
10. event ClassesImplementationUpdated(address newClasses);
### [ownable](https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/blob/master/contracts/access/OwnableUpgradeable.sol)
11. event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
## [character sheets impl](https://github.com/MrDeadCe11/character-sheets/blob/main/src/implementations/CharacterSheetsImplementation.sol)
12. event NewPlayer(uint256 tokenId, address memberAddress);
13. event NewCharacter(uint256 tokenId, address tba);
14. event PlayerRemoved(uint256 tokenId);
15. event ExperienceUpdated(address exp);
16. event ClassEquipped(uint256 characterId, uint256 classId);
17. event ItemEquipped(uint256 characterId, uint256 itemTokenId);
18. event CharacterNameUpdated(string oldName, string newName);
19. event PlayerJailed(address playerAddress, bool thrownInJail);
### [erc721](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC721/IERC721.sol)
20. event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
21. event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
22. event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
### [erc4906](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/interfaces/IERC4906.sol)
23. event MetadataUpdate(uint256 tokenId);
24. event BatchMetadataUpdate(uint256 fromTokenId, uint256 toTokenId);
### [access control](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/IAccessControl.sol)
25. event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole);
26. event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender);
27. event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender);
## [classes impl](https://github.com/MrDeadCe11/character-sheets/blob/main/src/implementations/ClassesImplementation.sol)
28. event NewClassCreated(uint256 erc1155TokenId, string name);
29. event ClassAssigned(address classAssignedTo, uint256 erc1155TokenId, uint256 classId);
### [erc1155](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC1155/IERC1155.sol)
30. event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);
31. event TransferBatch(address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values);
32. event ApprovalForAll(address indexed account, address indexed operator, bool approved);
33. event URI(string value, uint256 indexed id);
## [exp & items impl](https://github.com/MrDeadCe11/character-sheets/blob/main/src/implementations/ExperienceAndItemsImplementation.sol)
34. event NewItemTypeCreated(uint256 itemId, string name);
35. event ItemTransfered(address itemTransferedTo, uint256 itemId);
36. event ItemUpdated(uint256 itemId);
### [erc1155](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC1155/IERC1155.sol)
37. event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);
38. event TransferBatch(address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values);
39. event ApprovalForAll(address indexed account, address indexed operator, bool approved);
40. event URI(string value, uint256 indexed id);
# time estimate
40 events * 2 hours (avg) = 80 hrs