Escolar Documentos
Profissional Documentos
Cultura Documentos
Projeto - level 7
Para este projeto iremos fazer um gerador de contos, pode ser contos de fadas, histórias de aventura, folclore, lendas urbanas,
enfim, qualquer tipo de história que lhe venha a cabeça. Irá funcionar mais ou menos da seguinte forma:
1. Um usuário seleciona o gênero fictício que quer ter como resposta, como por exemplo Zumbis.
2. Seleciona o acidente que causou a era dos monstros, como por exemplo uma fissura nuclear
4. Diz o nome e o gênero de seu personagem, como por exemplo Otávio, Golfinho.
5. Seleciona o Local em que se passa a história, como por exemplo Disney World.
#DICA:
Sugerimos que deixe o maior número possível de informações dentro de selects, isso irá facilitar sua vida, portanto, no campo de
gênero fictício podemos ter (Zumbis, Orcs, Dragões, Fadas).
O campo do nome deve ser um input, mas somente este precisa necessariamente ser um Input.
"Era uma vez em lugar chamado Disney World havia lá um habitante que se chamava Otávio, ele era
um golfinho muito alegre, até que foi chegada a era dos Zumbis, que foi causada em 2021 (iremos
utilizar aqui date.getFullYear() para sempre retornar o ano que o usuário se encontra) por uma fissura
nuclear que fazia com que os humanos pertos se tornassem Zumbis, criaturas sem qualquer tipo de
consciência, suas únicas motivações eram comer golfinhos e dançar break. O golfinho se viu
obrigado a aprender técnicas de combate aprimoradas, até que encontrou no Submundo de Disney
World uma varinha mágica, ferramenta que ele utilizou por décadas no combate destes Zumbis, até
que um dia aprendeu uma magia capaz de trazer os Zumbis de volta a sanidade mental, esses por
sua vez não esqueceram como dançar break... Fim".
#DICA:
switch(place){
case 'Disney World':
hPlace = 'Disney World';
strPlaceFull = 'Submundo de Disney World';
break;
case 'Jundiaí':
hPlace = 'Jundiaí';
strPlaceFull = 'São Camilo, onde nenhum jundiaiense se propõe a chegar'
}
Ao final desta parte você deve ter algo parecido com isso:
Projeto - level 7 1
Agora vamos imaginar como seria a história caso o usuário tivesse escolhido Jundiaí:
"Era uma vez em lugar chamado Jundiaí havia lá um habitante que se chamava Otávio, ele era um
golfinho muito alegre, até que foi chegada a era dos Zumbis, que foi causada em 2021 (iremos utilizar
aqui date.getFullYear() para sempre retornar o ano que o usuário se encontra) por uma fissura
nuclear que fazia com que os humanos pertos se tornassem Zumbis, criaturas sem qualquer tipo de
consciência, suas únicas motivações eram comer golfinhos e dançar break. O golfinho se viu
obrigado a aprender técnicas de combate aprimoradas, até que encontrou no São Camilo, onde
nenhum jundiaiense se propõe a chegar uma varinha mágica, ferramenta que ele utilizou por décadas
no combate destes Zumbis, até que um dia aprendeu uma magia capaz de trazer os Zumbis de volta
a sanidade mental, esses por sua vez não esqueceram como dançar break... Fim".
Neste ponto você já deve ter entendido como funciona o gerador de histórias, temos uma string padrão de história, que é alterada
com variáveis que são incrementadas no texto, em caso de dúvidas, aconselhamos também ver o link que segue:
1. Vamos supor que o usuário tenha escolhido Zumbis, neste caso a imagem de fundo deve ser de Zumbis, porém, deverá haver
uma nova imagem a cada 5 segundos sobre Zumbis.
#DICA:
Crie um Array images vazio;
Dentro do case 'zumbis' de um push certa quantidade de URLs referentes a Zumbis dentro do array;
switch (valueMonsterType) {
case 'zumbis':
monsterTypeCase = 'Zumbis'
randomMovesCase = randomMoves[random];
backImages.push('https://i.pinimg.com/originals/66/b7/b5/66b7b54bc106aa6f64a436b99121a877.jpg')
backImages.push('https://s1.1zoom.me/b5050/117/342078-blackangel_1920x1080.jpg');
backImages.push('https://i.pinimg.com/originals/eb/21/37/eb213700250bfa06ffecc1adc782ae50.jpg');
backImages.push('https://acrediteounao.com/wp-content/uploads/2017/01/resident-evil-wallpaper-zombie-images-1920x1080.jpg');
break;
Projeto - level 7 2
...
}
Faça uma função temporizadora para trocar o background do body a cada determinados segundos baseado naquele array
(const random = Math.floor(Math.random * imagesArray.length));
function changeBG(){
var randomBack = Math.floor(Math.random() * backImages.length);
if(randomBack == 0){
randomBack = 1;
}
document.body.style.backgroundImage = `url('${backImages[randomBack]}')`;
}
2. A História deve ser escrita letra por letra, como se fosse uma daquelas máquinas antigas de escrever.
#DICA:
Typewriter Effect
typewriter h1 { overflow: hidden; /* Ensures the content is not revealed until the animation */ border-right:
.15em solid orange; /* The typwriter cursor */ white-space: nowrap; /* Keeps the content on a single line */
margin: 0 auto; /* Gives that scrolling effect as the typing happens */ letter-spacing:
https://css-tricks.com/snippets/css/typewriter-effect/
Projeto - level 7 3
Notem que Background está mudando com o tempo, e que o textos está sendo escrito aos poucos...
Para este projeto é isso, capriche na história, pode ser adicionado coisas que não falamos, mas é essencial ter os 6 tópicos que
apresentamos.
Padrões extra de Análise:
Se uma imagem vier em branco ou sem resposta será desagregado da nota final.
Projeto - level 7 4