Events позволяют контракту сообщать внешнему миру, что произошло важное действие. Frontend, indexers и analytics могут слушать события и строить историю активности. Пока не забивай голову новыми терминами, просто запомни, что event — это способ уведомить внешние сервисы о том, что что-то произошло внутри контракта.
Для объявления события используется ключевое слово event, а для его вызова — emit. В Solidity event может иметь несколько параметров, которые описывают произошедшее действие, в нашем случае — адрес нового участника, его имя и количество очков. В будущем мы разберемся подробнее в особенностях событий в Solidity.
В этом уроке гильдия должна вызвать событие, когда новый участник успешно вступает.
Почему это важно
Events — стандартный способ сделать действия контракта видимыми для off-chain инструментов. Без них внешним сервисам сложнее отслеживать изменения.
Ваша цель
Посмотри на объявление события MemberJoined в коде контракта. Оно уже готово, тебе нужно лишь вызвать его в конце функции joinGuild, передав туда адрес нового участника, его имя и количество очков.