初心者文系主婦がブロックチェーンを学ぶブログ

IT革命のビッグウェーブに乗り遅れた主婦が、ブロックチェーン革命の波にのるべく、ブロックチェーン技術を学ぶブログです。

【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