Autora → @Ivy Saskia Discord User → IvySaskia#6576 Email → [email protected] GitHub → IvySaskia
RETOS → Pokemon Smart Contract Challenge
https://github.com/gelopfalcon/solidity-eth-challenge
Resolución →
https://github.com/IvySaskia/solidity-eth-challenge
PR: https://github.com/gelopfalcon/solidity-eth-challenge/pull/85
<aside> 1️⃣ Investigar que son los Events en Solidity. Luego, debes implementar un evento que se llame eventNewPokemon, el cual se disparará cada vez que un nuevo Pokemon es creado. Lo que emitirá el evento será el Pokemon que se creó.
</aside>
Los EVENTS, permiten el uso de las funciones de logging que proporciona de manera nativa la Ethereum Virtual Machine (EVM) y que a su vez se pueden utilizar para retornar datos a nuestras dapps haciendo uso de JavaScript como handler de dichos eventos.
https://medium.com/@shuffledex/eventos-en-la-blockchain-cómo-emitirlos-con-solidity-y-recepcionarlos-con-web3-js-6411dafee8b7
<aside> ✅ HECHO
</aside>
<aside> 2️⃣ Investigar sobre “”require” . Entonces, antes de agregar un nuevo Pokemon, se debe validar que el id sea mayor a 0. De lo contrario, se debe desplegar un mensaje que corrija al usuario. Entonces, antes de agregar un nuevo Pokemon, se debe validar que el name no sea vació y mayor a 2 caracteres. De lo contrario, se debe desplegar un mensaje que corrija al usuario.
</aside>
La función REQUIRE crea un error sin ningún dato o un error de tipo Error(cadena). Debe usarse para garantizar condiciones válidas que no se pueden detectar hasta el momento de la ejecución. Esto incluye condiciones sobre entradas o valores de retorno de llamadas a contratos externos.
https://codedamn.com/news/solidity/what-is-require-in-solidity
<aside> ✅
HECHO
</aside>
<aside> 3️⃣ Los Pokemons han evolucionado, ahora tienen una lista de habilidades (Habilities). Es decir, un Pokemon puede tener 1 ó muchas habilidades, cada habilidad tiene el siguiente formato: - Name - Description
</aside>
<aside> ✅ HECHO
</aside>
<aside> 4️⃣ Estudiante distinguido
Los Pokemons pueden pertenecer a más de un tipo (Type), por ejemplo: Bulbasaur es de tipo Grass y Poison. Proponga una solución e impleméntela. Los Pokemons tienen debilidades (Weaknesses) las cuales pueden ser otros tipos de pokemones. Por ejemplo, Bulbasaur es débil contra pokemones de tipo Fire, Flying, Ice, Psychic. Proponga una solución e impleméntela.
</aside>
<aside> ✅ HECHO
</aside>