VIPS上でNFT作るやつ、動かないという報告を幾つか貰ったのでWEB版作りました。
これではNFTの閲覧しかできないので、PCウォレットでNFTの作成や送信などを行う必要があります。
今回はその説明です。
前準備
PCウォレットを同期します。
左メニューのスマートコントラクト→送信をクリックします。
コントラクトアドレスに
fd9f43ab5d34d0d1739deaca813f11ae888e99bd
インターフェイス(ABI)に以下を入力します。
hexaddressについて
スマートコントラクトでは、普段のVから始まるアドレスの代わりにhexaddressというものを使用します。
ヘルプ→デバックウインドウ→コンソールで、
「gethexaddress 変換したいVから始まるアドレス」と入力しenterを押すことで取得します。
例:
gethexaddress VGeWZ76u5V1byPtLHyNjDCXRSu48NxmH8c
結果:
41ae38623a3a1b5738fb8c0a7cc6df5e09acfe08
作成
FunctionはgetNewNFTを選択します。
string nameの欄にNFTの名前、
string descriptionの欄にNFTの説明、
string dataURIの欄にNFTに関係するURLを入力します。
下の方の送信者アドレスは作成したNFTを受け取るアドレスにします。
最後に「コントラクト送信」を押して作成を確定します。
送信
FunctionはsafeTransferFrom(42842e0e)を選択します。
address fromは現在NFTを持っているアドレスのhexaddress、
address toは送り先アドレスのhexaddress、
uint256 tokenIdは送るNFTのIDを入力します。
下の方の送信者アドレスは現在NFTを持っているアドレスにします。
最後に「コントラクト送信」を押して送信を確定します。
販売
FunctionはsetSellFlag(購入できるアドレスを制限する場合はsetSellFlagWithAddr)を選択します。
uint256 tokenIdはNFTのID、
uint256 priceは値段(単位はsat)、
address customerAddrは購入できるアドレス(setSellFlagWithAddrのみ)を入力します。
下の方の送信者アドレスは現在NFTを持っているアドレスにします。
最後に「コントラクト送信」を押して販売を確定します。
販売取り消し
FunctionはdelSellFlagを選択します。
uint256 tokenIdはNFTのIDを入力します。
下の方の送信者アドレスは現在NFTを持っているアドレスにします。
最後に「コントラクト送信」を押して取り消しを確定します。
購入
FunctionはbuyVNFTを選択します。
uint256 tokenIdはNFTのIDを入力します。
下の方の送信者アドレスは購入するアドレスにします。
数量は支払うVIPSの数を入力します。
最後に「コントラクト送信」を押して購入を確定します。
Q&A
Q:コントラクト送信したのに反映されない
A:insight explorerでトランザクションの詳細を確認してください。
左メニューの取引→該当取引をダブルクリック→取引IDをinsight explorerで検索すれば出てきます。
TxReceiptStatusがFail[OutOfGas]ならGas不足です。
送信画面の下の方の「ガスリミット」を3倍くらいにしてみてください。TxReceiptStatusがFail[BadInstruction]ならエラーです。
入力内容に問題が無いか、送信者アドレスが間違えていないか等を確認してください。
ブログランキング
投げ銭
VIPSアドレス:VGeWZ76u5V1byPtLHyNjDCXRSu48NxmH8c
ヌクモリンク:このブロガーに1000 VIPS を送る!
(ヌクモリンクの導入はここからどうぞ)
Discord
[VIPSTARCOIN]
[VIPSフリマ・オークション](当ブログの発祥地)