Abilities define what actions are permissible on a struct: - `key`: Allows the struct to serve as a top-level on-chain object (requires `id: UID`). - `store`: Allows the struct to be stored inside other structs or transferred freely. - `copy`: Allows the value to be cloned. - `drop`: Allows the value to be discarded/ignored when going out of scope without explicit destruction.
move
public struct Hero has key, store {
id: UID,
level: u64,
}