【CryptZombies】レッスン5チャプター3:balanceOfとownerOf
balanceOf
function balanceOf(address _owner) public view returns (uint256 _balance);
この関数は単にaddressを受け取り、そのaddressのトークン保有量を返す。
(ここでは、『トークン』はゾンビになります)
ownerOf
function ownerOf(uint256 _tokenId) public view returns (address _owner);
この関数はトークンID (この場合ゾンビのID)を受け取り、その所有者の addressを返す。
このDAppにはすでにこの情報を格納している mappingがあるので、実装はとても簡単です。
この関数はreturnステートメントの1行で実装できます。
テストの実行
さあテストだ
これら2つの関数の実装方法を理解しよう。
各関数はシンプルにreturnステートメントのコード1行だけにするのだ。このデータをどこで保存しているか、前のレッスンを見てみるといいぞ。もしわからなければ、『答えを見る』ボタンでヒントを得ても良いからな。
①balanceOfを実装し、_ownerのゾンビ保有数を返すようにせよ。
zombiefactory.solで作成したmappingで、onwerZombieCountは、アドレスからゾンビ保有数を導き出すものでした。
return ownerZombieCount[_owner];
②ownerOfを実装し、_tokenIdをIDに持つゾンビを保有する者のアドレスを返せ。
zombiefactory.solで作成したmappingで、zombieToOwnerは、ゾンビIdから所有者のアドレスを導き出すものでした。
return zombieToOwner[_tokenId];
お疲れさまでした!
<参考>
CryptoZombies - イーサリアム上でゲームを開発する方法を学習。Powered by Loom Network