-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpokedex.js
79 lines (70 loc) · 2.77 KB
/
pokedex.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
Pokedex = {
index: 0,
pokemons: [],
setPokemons: function(pokemons){
this.pokemons = pokemons;
this._buildPokemonsCollage();
},
showPokemonCard: function(){
this._buildPokemon();
document.getElementById("pokemonDetails").style.display = "none";
document.getElementById("pokemonCard").style.display = "block";
},
showPokemonDetails: function(){
document.getElementById("pokemonCard").style.display = "none";
document.getElementById("pokemonDetails").style.display = "block";
},
setIndex: function(pokemonNumber){
if(pokemonNumber > 0 && pokemonNumber <= 151) {
this.index = pokemonNumber -1;
}
this.showPokemonCard();
},
decrementIndex : function(){
if(this.index <= 0) {
this.index = 150;
}
else {
this.index = this.index-1;
}
this.showPokemonCard();
},
incrementIndex : function(){
if(this.index < 150) {
this.index = this.index+1;
}
else {
this.index = 0;
}
this.showPokemonCard();
},
_buildPokemon: function(){
let pokemon = this.pokemons[this.index];
document.getElementById("pokemonImage").src = pokemon.img;
document.getElementById("pokemonName").innerHTML = pokemon.name;
document.getElementById("pokemonNumber").value = pokemon.num;
document.getElementById("pokemonType").innerHTML = "Type: " + pokemon.type;
document.getElementById("pokemonHeight").innerHTML = "Height: " + pokemon.height;
document.getElementById("pokemonWeight").innerHTML = "Weight: " + pokemon.weight;
document.getElementById("pokemonCandy").innerHTML = "Candy: " + pokemon.candy;
document.getElementById("pokemonCandyCount").innerHTML = "Candy count: " + pokemon.candy_count;
document.getElementById("pokemonEgg").innerHTML = "Egg: " + pokemon.egg;
document.getElementById("pokemonSpawnChance").innerHTML = "Spawn chance: " + pokemon.spawn_chance;
document.getElementById("pokemonAvgSpawns").innerHTML = "Avg spawns: " + pokemon.avg_spawns;
document.getElementById("pokemonSpawnTime").innerHTML = "Spawn time: " + pokemon.spawn_time;
document.getElementById("pokemonMultipliers").innerHTML = "Multipliers: " + pokemon.multipliers;
document.getElementById("pokemonWeaknesses").innerHTML = "Weaknesses: " + pokemon.weaknesses;
},
_buildPokemonsCollage: function(){
this.pokemons.map(function(pokemon) {
let image = document.createElement("img");
image.setAttribute("id", pokemon.id);
image.setAttribute("src", pokemon.img);
image.setAttribute("class", "pokedex-collage-img");
image.setAttribute("title", pokemon.name);
image.setAttribute("alt", pokemon.name);
image.setAttribute("onclick", "Pokedex.setIndex(this.id);");
document.getElementById("pokedexCollage").appendChild(image);
});
}
}