June 24, 2023

Деплоим контракт

1) Заходим на сайт https://remix.ethereum.org/#lang=en&optimize=false&runs=200&evmVersion=null&version=soljson-v0.8.18+commit.87f61d96.js и нажимаем Create new file (имя пишем любое на англ) и в строке: contract EtherContract удаляем Ether (тоже пишем любое название ) получится к примеру GenaContract

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

contract EtherContract {

address public owner;
mapping (address => uint) public payments;

constructor() {
owner = msg.sender;
}

function Donate() public payable {
payments[msg.sender] = msg.value;
}

function MoneyBack() public {
address payable _to = payable(owner);
address _thisContract = address(this);
_to.transfer(_thisContract.balance);
}
}

2) Переходим в Solidity Compiler под лупой и нажимаем Compile - должна потом появится зеленая галочка ( значит успешно )

3) Идем ниже и во вкладке Environment выбираем Provider - MetaMask и нажимаем Deplay, подтверждаем транзакцию в метамаске и наш контракт развернут

4) В Value вписываем любую сумму и меняем на gwei - нажимаем Donate и подписываем транзакцию (проделываем так 3-5 раз). После этого жмем MoneyBack и возвращаем все назад.

Дальше нам нужно Верифицировать контракт. Для этого открываем метамаск

Находим развертывание контракта или contract deployment (у кого анлг язык) тыкаем на этот пункт и дальше откроется вот такое окно. Нажимаем смотреть в проводнике блоков

Дальше все очень просто открывается такое окно, только оно будет больше и жмем Create: EtherContract (в моем случае, у вас будет название ваше)

В появившемся окне нажимаем Contract Verify and Publish

Дальше все настройки ставим как у меня - верхняя строка это ваш кошелек будет

И последний шаг: 1-ые 2 строки не трогаем, contract file name - пишем ваше название что вы указали в начале, 1-ый пункт: например GenaContract.sol, а в Solidity вписываем ваш код который получился с измененным именем и нажимаем Verify and publish :)