Desarrollo de Smart Contracts con Solidity y Pokémon
Clase 17 de 28 • Ethereum Developer Program 1ª Edición
Contenido del curso
Clase 17 de 28 • Ethereum Developer Program 1ª Edición
Contenido del curso
Es hora de construir tus primeros smart contracts y con ello enfrentarte a un nuevo reto POKEMON
Pokemon Smart Contract Challenge
Es hora de ir agregando retos y contenido a tu CV, para ello debes hacer Fork al repositorio del reto y completar las asignaciones.
Puedes encontrar el repositorio aquí: https://github.com/gelopfalcon/solidity-eth-challenge/tree/main
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ó.
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.
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
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.
Recomendaciones:
Leer detenidamente el archivo README que está en el repositorio Hacer un fork del proyecto para trabajarlo desde la propia cuenta Para entregarlo deben hacer pull request que te dirá si resolviste 100% el reto
Cursos de la Semana
Si aún no eres parte de nuestra comunidad, no es obligatorio que cumplas los cursos de cada semana. Tenemos un precio especial para ti, y así puedas ser parte de Platzi y la Escuela de Blockchain y Criptomonedas.
Curso de Inglés para Developers Curso de Introducción al Desarrollo Blockchain: Smart Contracts
Te esperamos el jueves en el chat de Discord a las 2:00 pm 🇨🇴🇲🇽/3:00 pm🇻🇪/4:00 pm 🇦🇷/8:00 pm🇪🇸 para hablar con los Platzi Mentores sobre crecimiento profesional y responder todas tus dudas y preguntas.
Comparte tu certificado y cada uno de tus logros con tus amigos y la comunidad, esto es solo el comienzo 💚
Recursos Recomendados: Smart Contracts
Smart Contracts y ejercicios Casos de uso y ejercicios
Sigamos construyendo 🔥
Rafael Livise Larico
Carlos Enrique Navia Torres
Omar Daniel Centeno
Nadia Lopez
Leandro Gavidia Santamaria
Mario Andrade
++Semana 4++ Reto #1: events - me percate que uint gastaba menos gas que uint8, luego buscando encontre que era por la conversion que se hace de 256 a 8, por lo que ¿cuando usar uint menores a 256?, en bloques y cuando se guarda en storage, cada bloque usa 256 al guardar en storage por lo que debes hacer tetriz y completar bloques que sumados den 256. **Reto #2: **require - use una conversion string a bytes para validiar la logitud de caracteres Reto #3: structure: creé un estructura para la habilidades y la referencia por el index en la estructura de pokemon además de crear una función para crear nuevas habilidades que actualiza el indice máximo (para poder hace validaciones luego) **Reto #4: **decidi crear un nuevo documento para manejar los tipo y debilidades ademas de exponer las respectivas debilidades medieante un par de funiones
solucion RavilcoDev
Hola cuando suben la clase y el código del dia 26 de julio?
Hola,
Ya están las últimas sesiones cargadas en la plataforma.
Buenas, aqui dejo mi solución de los pokemones.
Hola, les comparto el link a mí solución en GitHub.
Algunas características extras que agregue a mi solución:
Consultar habilidad del pokemon.
Consultar el tipo o tipos del pokemon.
Consultar las debilidades del pokemon.
Buscar un pokemon en específico una vez creado.
Require para validar si existe algún pokemon en el array "pokemons".
Videos nuevos para cuando????