Level 2 of cryptozombies explains how to:
Integrate actual ownership of tokens into the contract using mapping
How to limit the use of a public function to a certain number of times or requiring the user to satisfy certain conditions using require
How to separate Solidity code into different classes to organize the code neatly and logically, while using inheritance and imports to make the separate classes (now Contracts in and off themselves) work together.
The difference between storing information temporarily and permanently in the blockchain using Solidity.
How to get our Zombies to "feed" and generate new zombies for our eternal army of darkness !
The complexity of collaboration between contracts, and some basics on how internal and external can solve them.
How to interact with other Contracts on the Ethereum network using interfaces
I love these lessons !
Now I've just got to figure out an idea for a project to code using Solidity XS
Come, join me in devouring the innocent souls that all Crypto-zombies crave !
Let the feast begin !