diff --git a/graphics/pokemon/chariathan/back.png b/graphics/pokemon/chariathan/back.png new file mode 100644 index 0000000000..270091cbed Binary files /dev/null and b/graphics/pokemon/chariathan/back.png differ diff --git a/graphics/pokemon/chariathan/front.png b/graphics/pokemon/chariathan/front.png new file mode 100644 index 0000000000..add2c0d83b Binary files /dev/null and b/graphics/pokemon/chariathan/front.png differ diff --git a/graphics/pokemon/chariathan/icon.png b/graphics/pokemon/chariathan/icon.png new file mode 100644 index 0000000000..fa632ce6ef Binary files /dev/null and b/graphics/pokemon/chariathan/icon.png differ diff --git a/graphics/pokemon/chariathan/normal.pal b/graphics/pokemon/chariathan/normal.pal new file mode 100644 index 0000000000..8d321cb3f2 --- /dev/null +++ b/graphics/pokemon/chariathan/normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +154 212 167 +96 65 165 +107 97 248 +216 121 202 +88 16 26 +144 36 55 +218 53 65 +8 8 8 +94 85 81 +51 49 49 +222 125 33 +22 28 32 +242 178 37 +255 18 18 +252 252 252 +240 218 1 diff --git a/include/constants/pokedex.h b/include/constants/pokedex.h index 404dbee8d8..774f2cdd1f 100644 --- a/include/constants/pokedex.h +++ b/include/constants/pokedex.h @@ -1040,12 +1040,13 @@ enum NationalDexOrder NATIONAL_DEX_IRON_CROWN, NATIONAL_DEX_TERAPAGOS, NATIONAL_DEX_PECHARUNT, + NATIONAL_DEX_CHARIATHAN, }; #define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI #if P_GEN_9_POKEMON == TRUE - #define NATIONAL_DEX_COUNT NATIONAL_DEX_PECHARUNT + #define NATIONAL_DEX_COUNT NATIONAL_DEX_CHARIATHAN #elif P_GEN_8_POKEMON == TRUE #define NATIONAL_DEX_COUNT NATIONAL_DEX_ENAMORUS #elif P_GEN_7_POKEMON == TRUE diff --git a/include/constants/species.h b/include/constants/species.h index 98b6f3c8e5..f4bdde2cac 100644 --- a/include/constants/species.h +++ b/include/constants/species.h @@ -1687,8 +1687,11 @@ #define SPECIES_TATSUGIRI_DROOPY_MEGA 1570 #define SPECIES_TATSUGIRI_STRETCHY_MEGA 1571 #define SPECIES_GLIMMORA_MEGA 1572 +#define SPECIES_CHARIATHAN 1573 -#define SPECIES_EGG (SPECIES_GLIMMORA_MEGA + 1) + +//#define SPECIES_EGG (SPECIES_GLIMMORA_MEGA + 1) +#define SPECIES_EGG (SPECIES_CHARIATHAN + 1) #define NUM_SPECIES SPECIES_EGG diff --git a/pokeemerald-tools/.~lock.pkmndata.xlsx# b/pokeemerald-tools/.~lock.pkmndata.xlsx# deleted file mode 100644 index 4c51f248b3..0000000000 --- a/pokeemerald-tools/.~lock.pkmndata.xlsx# +++ /dev/null @@ -1 +0,0 @@ -,nicksnax,bazzite,11.03.2026 21:19,file:///var/home/nicksnax/.var/app/org.libreoffice.LibreOffice/config/libreoffice/4; \ No newline at end of file diff --git a/pokeemerald-tools/Tools/graphics.pokemon.sprites.back_12_CHARIATHAN.png b/pokeemerald-tools/Tools/graphics.pokemon.sprites.back_12_CHARIATHAN.png new file mode 100644 index 0000000000..67bc3f4fe8 Binary files /dev/null and b/pokeemerald-tools/Tools/graphics.pokemon.sprites.back_12_CHARIATHAN.png differ diff --git a/pokeemerald-tools/Tools/graphics.pokemon.sprites.front_12_CHARIATHAN.png b/pokeemerald-tools/Tools/graphics.pokemon.sprites.front_12_CHARIATHAN.png new file mode 100644 index 0000000000..add2c0d83b Binary files /dev/null and b/pokeemerald-tools/Tools/graphics.pokemon.sprites.front_12_CHARIATHAN.png differ diff --git a/pokeemerald-tools/graphics.pokemon.sprites.front_1_BULBASAUR.png b/pokeemerald-tools/Tools/graphics.pokemon.sprites.front_1_BULBASAUR.png similarity index 100% rename from pokeemerald-tools/graphics.pokemon.sprites.front_1_BULBASAUR.png rename to pokeemerald-tools/Tools/graphics.pokemon.sprites.front_1_BULBASAUR.png diff --git a/pokeemerald-tools/Tools/palette-extractor.py b/pokeemerald-tools/Tools/palette-extractor.py index 938c215e4f..41ed76a2cc 100644 --- a/pokeemerald-tools/Tools/palette-extractor.py +++ b/pokeemerald-tools/Tools/palette-extractor.py @@ -1,10 +1,11 @@ #make palettes from Pylette import extract_colors -palette = extract_colors(image='graphics.pokemon.sprites.front_1_BULBASAUR.png', palette_size = 15, mode = 'MedianCut') +palette = extract_colors(image='graphics.pokemon.sprites.front_12_CHARIATHAN.png', palette_size = 16, mode = 'MedianCut') for color in palette.colors: - print(f"Hex: {color.hex},RGB: {color.rgb}") - -palette = extract_colors(image='graphics.pokemon.sprites.front_1_BULBASAUR.png', palette_size = 15, mode = 'KMeans') +# print(f"Hex: {color.hex},RGB: {color.rgb}") + print(f"{color.rgb}") + +palette = extract_colors(image='graphics.pokemon.sprites.front_12_CHARIATHAN.png', palette_size = 16, mode = 'KMeans') for color in palette.colors: print(f"Hex: {color.hex},RGB: {color.rgb}") \ No newline at end of file diff --git a/pokeemerald-tools/gen-new-graphics.py b/pokeemerald-tools/gen-new-graphics.py index 48bdbcab95..a819c1fba1 100644 --- a/pokeemerald-tools/gen-new-graphics.py +++ b/pokeemerald-tools/gen-new-graphics.py @@ -9,12 +9,12 @@ WriteOrAdd = 'w' Anim = False GenName = "pkmnevolved" PkmnData = load_workbook('pkmndata.xlsx') -PkmnDataFile = PkmnData.active +PkmnDataFile = PkmnData['sanity-data'] with open("test_graphics.h", WriteOrAdd) as file: file.write("//data prep start\n") - for species in PkmnDataFile.iter_rows(min_row=2, max_row=PkmnDataFile.max_row, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): - #for species in PkmnDataFile.iter_rows(min_row=2, max_row=10, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): + #for species in PkmnDataFile.iter_rows(min_row=2, max_row=PkmnDataFile.max_row, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): + for species in PkmnDataFile.iter_rows(min_row=2, max_row=13, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): for data in species: if PkmnDataFile.cell(row = PkmnDataFile.min_row, column = data.column).value == ".natDexNeeded" and data.value == 1: fixCase = PkmnDataFile.cell(row = data.row, column = PkmnDataFile.min_column).value diff --git a/pokeemerald-tools/gen-new-moveset.py b/pokeemerald-tools/gen-new-moveset.py index 3f58841c7f..e2011566a4 100644 --- a/pokeemerald-tools/gen-new-moveset.py +++ b/pokeemerald-tools/gen-new-moveset.py @@ -30,8 +30,9 @@ static const struct LevelUpMove sNoneLevelUpLearnset[] = { with open("test_learnset.h", WriteOrAdd) as file: file.write(Header) #Start from second row so you do not grab data headers - #for species in PkmnDataFile.iter_rows(min_row=2, max_row=10, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): - for row in PkmnDataFile.iter_rows(min_row=2, max_row=PkmnDataFile.max_row, min_col=PkmnDataFile.min_column, max_col=3): + #for species in PkmnDataFile.iter_rows(min_row=2, max_row=13, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): + #for row in PkmnDataFile.iter_rows(min_row=2, max_row=PkmnDataFile.max_row, min_col=PkmnDataFile.min_column, max_col=3): + for row in PkmnDataFile.iter_rows(min_row=2, max_row=500, min_col=PkmnDataFile.min_column, max_col=3): #for species in PkmnDataFile.iter_rows(min_row=2, max_row=PkmnDataFile.max_row, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): if row[PkmnDataFile.min_column-1].value != None:#Checks if species name is in first column fixCase = str(row[0].value) #idk why Excel is being stupid diff --git a/pokeemerald-tools/gen-new-pokemon.py b/pokeemerald-tools/gen-new-pokemon.py index fde9182df9..d183bfc167 100644 --- a/pokeemerald-tools/gen-new-pokemon.py +++ b/pokeemerald-tools/gen-new-pokemon.py @@ -10,7 +10,7 @@ Debug = 1 WriteOrAdd = 'w' GenName = "PkmnEvolved" PkmnData = load_workbook('pkmndata.xlsx') -PkmnDataFile = PkmnData.active +PkmnDataFile = PkmnData['sanity-data'] #Header Description for files, etc Header ="""//gen file for """ + GenName + """ @@ -41,7 +41,7 @@ with open("test_families.h", WriteOrAdd) as file: #Begin writing species information to .h file if Debug == 1: #Start from second row so you do not grab data headers - for species in PkmnDataFile.iter_rows(min_row=2, max_row=10, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): + for species in PkmnDataFile.iter_rows(min_row=2, max_row=13, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): #for species in PkmnDataFile.iter_rows(min_row=2, max_row=PkmnDataFile.max_row, min_col=PkmnDataFile.min_column, max_col=PkmnDataFile.max_column): if species[PkmnDataFile.max_column-1].value == 1:#species tuple is 0 indexed; maxcol is 1 indexed print("New Species Found!: " + species[PkmnDataFile.min_column-1].value) diff --git a/pokeemerald-tools/pkmndata.xlsx b/pokeemerald-tools/pkmndata.xlsx index 06b2a5252d..a590385952 100644 Binary files a/pokeemerald-tools/pkmndata.xlsx and b/pokeemerald-tools/pkmndata.xlsx differ diff --git a/pokeemerald-tools/species.h b/pokeemerald-tools/species.h new file mode 100644 index 0000000000..9c5f0b2665 --- /dev/null +++ b/pokeemerald-tools/species.h @@ -0,0 +1,364 @@ +//Species File Update +#ifndef GUARD_CONSTANTS_SPECIES_H +#define GUARD_CONSTANTS_SPECIES_H + +#define SPECIES_NONE 0 +#define SPECIES_BULBASAUR 1 +#define SPECIES_IVYSAUR 2 +#define SPECIES_VENUSAUR 3 +#define SPECIES_ECOSAUR 4 +#define SPECIES_TERARISAUR 5 +#define SPECIES_SYMBISAUR 6 +#define SPECIES_CHARMANDER 7 +#define SPECIES_CHARMELEON 8 +#define SPECIES_CHARIZARD 9 +#define SPECIES_CHARIGUANA 10 +#define SPECIES_CHARIANA 11 +#define SPECIES_CHARIATHAN 12 +#define SPECIES_SQUIRTLE 13 +#define SPECIES_WARTORTLE 14 +#define SPECIES_BLASTOISE 15 +#define SPECIES_FERRAPIN 16 +#define SPECIES_FORTOISE 17 +#define SPECIES_TURTILLERY 18 +#define SPECIES_CATERPIE 19 +#define SPECIES_METAPOD 20 +#define SPECIES_BUTTERFREE 21 +#define SPECIES_BUTTEFLARE 22 +#define SPECIES_PYREFREE 23 +#define SPECIES_IMPSECT 24 +#define SPECIES_WEEDLE 25 +#define SPECIES_KAKUNA 26 +#define SPECIES_BEEDRILL 27 +#define SPECIES_BEEBRUTE 28 +#define SPECIES_DRONARCH 29 +#define SPECIES_SEPISTRIKE 30 +#define SPECIES_PIDGEY 31 +#define SPECIES_PIDGEOTTO 32 +#define SPECIES_PIDGEOT 33 +#define SPECIES_PIDGAERO 34 +#define SPECIES_PIDGEOZONE 35 +#define SPECIES_PIDGEPHYR 36 +#define SPECIES_RATTATA 37 +#define SPECIES_RATICATE 38 +#define SPECIES_RATTCHET 39 +#define SPECIES_RATTARULE 40 +#define SPECIES_SPEAROW 41 +#define SPECIES_FEAROW 42 +#define SPECIES_SNEEROW 43 +#define SPECIES_ORNITHOW 44 +#define SPECIES_EKANS 45 +#define SPECIES_ARBOK 46 +#define SPECIES_NOHTYP 47 +#define SPECIES_ADNOKANA 48 +#define SPECIES_PIKACHU 49 +#define SPECIES_RAICHU 50 +#define SPECIES_GOROCHU 51 +#define SPECIES_STROMACHU 52 +#define SPECIES_SANDSHREW 53 +#define SPECIES_SANDSLASH 54 +#define SPECIES_SANDSLAM 55 +#define SPECIES_FERODILLO 56 +#define SPECIES_NIDORAN_F 57 +#define SPECIES_NIDORINA 58 +#define SPECIES_NIDOQUEEN 59 +#define SPECIES_NIDOREGAL 60 +#define SPECIES_NIDOARCHY 61 +#define SPECIES_NIDORAN_M 62 +#define SPECIES_NIDORINO 63 +#define SPECIES_NIDOKING 64 +#define SPECIES_NIDORULY 65 +#define SPECIES_NIDOMINATE 66 +#define SPECIES_CLEFAIRY 67 +#define SPECIES_CLEFABLE 68 +#define SPECIES_CLEFAEFAE 69 +#define SPECIES_CLEFANAUT 70 +#define SPECIES_VULPIX 71 +#define SPECIES_NINETALES 72 +#define SPECIES_SPIRITALES 73 +#define SPECIES_YOKAYUBI 74 +#define SPECIES_JIGGLYPUFF 75 +#define SPECIES_WIGGLYTUFF 76 +#define SPECIES_GIGGLYHUFF 77 +#define SPECIES_BOGGLYFUFF 78 +#define SPECIES_ZUBAT 79 +#define SPECIES_GOLBAT 80 +#define SPECIES_CROBAT 81 +#define SPECIES_POLABAT 82 +#define SPECIES_VISIBAT 83 +#define SPECIES_HORRIBAT 84 +#define SPECIES_ODDISH 85 +#define SPECIES_GLOOM 86 +#define SPECIES_VILEPLUME 87 +#define SPECIES_RAFFLURK 88 +#define SPECIES_CONCORPSIA 89 +#define SPECIES_PARAS 90 +#define SPECIES_PARASECT 91 +#define SPECIES_SECTASITE 92 +#define SPECIES_FUNGALITH 93 +#define SPECIES_VENONAT 94 +#define SPECIES_VENOMOTH 95 +#define SPECIES_VENOMENA 96 +#define SPECIES_VENOMENON 97 +#define SPECIES_DIGLETT 98 +#define SPECIES_DUGTRIO 99 +#define SPECIES_DUGROUPLE 100 +#define SPECIES_UNEARTHLET 101 +#define SPECIES_DIGLENOID 102 +#define SPECIES_MEOWTH 103 +#define SPECIES_PERSIAN 104 +#define SPECIES_FELANKH 105 +#define SPECIES_PATRAPHINX 106 +#define SPECIES_PSYDUCK 107 +#define SPECIES_GOLDUCK 108 +#define SPECIES_GILDUCK 109 +#define SPECIES_PLATINUPUS 110 +#define SPECIES_MANKEY 111 +#define SPECIES_PRIMEAPE 112 +#define SPECIES_GORILLASH 113 +#define SPECIES_BONUMBELL 114 +#define SPECIES_GROWLITHE 115 +#define SPECIES_ARCANINE 116 +#define SPECIES_SINGESHA 117 +#define SPECIES_GUARDIANCE 118 +#define SPECIES_POLIWAG 119 +#define SPECIES_POLIWHIRL 120 +#define SPECIES_POLIWRATH 121 +#define SPECIES_POLITOES 122 +#define SPECIES_POLIWISE 123 +#define SPECIES_POLIATH 124 +#define SPECIES_ABRA 125 +#define SPECIES_KADABRA 126 +#define SPECIES_ALAKAZAM 127 +#define SPECIES_SIMSALABIM 128 +#define SPECIES_VOHOO-DU 129 +#define SPECIES_TZARKARTZ 130 +#define SPECIES_MACHOP 131 +#define SPECIES_MACHOKE 132 +#define SPECIES_MACHAMP 133 +#define SPECIES_MACHULK 134 +#define SPECIES_ABOMACHULK 135 +#define SPECIES_MACHITAN 136 +#define SPECIES_BELLSPROUT 137 +#define SPECIES_WEEPINBELL 138 +#define SPECIES_VICTREEBEL 139 +#define SPECIES_MUCKTRIBEL 140 +#define SPECIES_CARNABELL 141 +#define SPECIES_DEVLORA 142 +#define SPECIES_TENTACOOL 143 +#define SPECIES_TENTACRUEL 144 +#define SPECIES_TENTACATE 145 +#define SPECIES_TENTABOMA 146 +#define SPECIES_GEODUDE 147 +#define SPECIES_GRAVELER 148 +#define SPECIES_GOLEM 149 +#define SPECIES_SLAGOLEM 150 +#define SPECIES_MOLTREM 151 +#define SPECIES_VOLCANICOL 152 +#define SPECIES_PONYTA 153 +#define SPECIES_RAPIDASH 154 +#define SPECIES_COMBUSTANG 155 +#define SPECIES_KNIGHTMARE 156 +#define SPECIES_SLOWPOKE 157 +#define SPECIES_SLOWBRO 158 +#define SPECIES_SLOWMATE 159 +#define SPECIES_SLOWCHUM 160 +#define SPECIES_MAGNEMITE 161 +#define SPECIES_MAGNETON 162 +#define SPECIES_MAGNEZONE 163 +#define SPECIES_MAGNEMELD 164 +#define SPECIES_MAGNEMASTR 165 +#define SPECIES_FARFETCHD 166 +#define SPECIES_FORFOWLD 167 +#define SPECIES_FOWLNTOM 168 +#define SPECIES_DODUO 169 +#define SPECIES_DODRIO 170 +#define SPECIES_QUADODO 171 +#define SPECIES_DODOZEN 172 +#define SPECIES_SEEL 173 +#define SPECIES_DEWGONG 174 +#define SPECIES_PRECIPED 175 +#define SPECIES_MANATII 176 +#define SPECIES_GRIMER 177 +#define SPECIES_MUK 178 +#define SPECIES_GUNK 179 +#define SPECIES_SKUM 180 +#define SPECIES_SHELLDER 181 +#define SPECIES_CLOYSTER 182 +#define SPECIES_ANENEMY 183 +#define SPECIES_GLAISHELL 184 +#define SPECIES_GASTLY 185 +#define SPECIES_HAUNTER 186 +#define SPECIES_GENGAR 187 +#define SPECIES_GENGONE 188 +#define SPECIES_POLTERGAST 189 +#define SPECIES_GRIMM 190 +#define SPECIES_ONIX 191 +#define SPECIES_STEELIX 192 +#define SPECIES_PLATNIX 193 +#define SPECIES_OBSIDIANIX 194 +#define SPECIES_STALAGMIX 195 +#define SPECIES_DROWZEE 196 +#define SPECIES_HYPNO 197 +#define SPECIES_LULLOO 198 +#define SPECIES_SOMNISOOTH 199 +#define SPECIES_KRABBY 200 +#define SPECIES_KINGLER 201 +#define SPECIES_KRAKLAW 202 +#define SPECIES_TEKLAWNO 203 +#define SPECIES_VOLTORB 204 +#define SPECIES_ELECTRODE 205 +#define SPECIES_ELECTRODES 206 +#define SPECIES_ELECTRODEX 207 +#define SPECIES_ELECTRODEM 208 +#define SPECIES_EXEGGCUTE 209 +#define SPECIES_EXEGGUTOR 210 +#define SPECIES_EXEGGITY 211 +#define SPECIES_EXEGGTRIC 212 +#define SPECIES_CUBONE 213 +#define SPECIES_MAROWAK 214 +#define SPECIES_OSSELOBBER 215 +#define SPECIES_WRAIWRATH 216 +#define SPECIES_HITMONLEE 217 +#define SPECIES_CLEEVOYANT 218 +#define SPECIES_SPIRITULEE 219 +#define SPECIES_HITMONCHAN 220 +#define SPECIES_ENCHANCED 221 +#define SPECIES_RADIACHAN 222 +#define SPECIES_LICKITUNG 223 +#define SPECIES_LICKILICKY 224 +#define SPECIES_LICKILOLLY 225 +#define SPECIES_LICKILATO 226 +#define SPECIES_KOFFING 227 +#define SPECIES_WEEZING 228 +#define SPECIES_HEEVING 229 +#define SPECIES_CHOHKING 230 +#define SPECIES_RHYHORN 231 +#define SPECIES_RHYDON 232 +#define SPECIES_RHYPERIOR 233 +#define SPECIES_RHYMARKABL 234 +#define SPECIES_RHYLIC 235 +#define SPECIES_RHYBORN 236 +#define SPECIES_CHANSEY 237 +#define SPECIES_BLISSEY 238 +#define SPECIES_GOGETTEY 239 +#define SPECIES_LUKKEY 240 +#define SPECIES_FORTUNITEY 241 +#define SPECIES_TANGELA 242 +#define SPECIES_TANGROWTH 243 +#define SPECIES_TANGATHER 244 +#define SPECIES_TANGOLIATH 245 +#define SPECIES_TANGRAPPLE 246 +#define SPECIES_KANGAKID 247 +#define SPECIES_KANGASKHAN 248 +#define SPECIES_KANGALLOUS 249 +#define SPECIES_KANGARUTAL 250 +#define SPECIES_HORSEA 251 +#define SPECIES_SEADRA 252 +#define SPECIES_KINGDRA 253 +#define SPECIES_LORDRA 254 +#define SPECIES_PINNADRA 255 +#define SPECIES_GOLDEEN 256 +#define SPECIES_SEAKING 257 +#define SPECIES_SEAREX 258 +#define SPECIES_CAPRISEA 259 +#define SPECIES_STARYU 260 +#define SPECIES_STARMIE 261 +#define SPECIES_STARUS 262 +#define SPECIES_STARWE 263 +#define SPECIES_MR_MIME 264 +#define SPECIES_MR_JEST 265 +#define SPECIES_MR_FOOL 266 +#define SPECIES_SCYTHER 267 +#define SPECIES_SCIZOR 268 +#define SPECIES_RAZER 269 +#define SPECIES_CLAYMOR 270 +#define SPECIES_JYNX 271 +#define SPECIES_JYNKIES 272 +#define SPECIES_JEEPERS 273 +#define SPECIES_ELECTABUZZ 274 +#define SPECIES_ELECTIVIRE 275 +#define SPECIES_ELECTIVINE 276 +#define SPECIES_ELECTIWIZZ 277 +#define SPECIES_MAGMAR 278 +#define SPECIES_MAGMORTAR 279 +#define SPECIES_MAGMORE 280 +#define SPECIES_MAGMOLTEN 281 +#define SPECIES_PINSIR 282 +#define SPECIES_PINSIRIOR 283 +#define SPECIES_ABYSSIR 284 +#define SPECIES_TAUROS 285 +#define SPECIES_TAUROX 286 +#define SPECIES_OXENFREE 287 +#define SPECIES_MAGIKARP 288 +#define SPECIES_GYARADOS 289 +#define SPECIES_HYDRADOS 290 +#define SPECIES_DRACOSMIC 291 +#define SPECIES_QUAZAR 292 +#define SPECIES_LAPRAS 293 +#define SPECIES_LOCHLASS 294 +#define SPECIES_NESSEA 295 +#define SPECIES_DITTO 296 +#define SPECIES_MORPHO 297 +#define SPECIES_METAMORPHO 298 +#define SPECIES_EEVEE 299 +#define SPECIES_VAPOREON 300 +#define SPECIES_RIVEON 301 +#define SPECIES_BRINEON 302 +#define SPECIES_JOLTEON 303 +#define SPECIES_PLASMEON 304 +#define SPECIES_GALVEON 305 +#define SPECIES_FLAREON 306 +#define SPECIES_SMOLDEON 307 +#define SPECIES_INFERNEON 308 +#define SPECIES_PORYGON 309 +#define SPECIES_PORYGON2 310 +#define SPECIES_PORYGON-Z 311 +#define SPECIES_PORYGON-X 312 +#define SPECIES_PORYGON-Q 313 +#define SPECIES_PORYGON2A4 314 +#define SPECIES_OMANYTE 315 +#define SPECIES_OMASTAR 316 +#define SPECIES_OMAPAL 317 +#define SPECIES_OMAGUS 318 +#define SPECIES_KABUTO 319 +#define SPECIES_KABUTOPS 320 +#define SPECIES_KABUTAK 321 +#define SPECIES_KABUSTION 322 +#define SPECIES_AERODACTYL 323 +#define SPECIES_MANDILUFT 324 +#define SPECIES_AMBALITHIC 325 +#define SPECIES_SNORLAX 326 +#define SPECIES_ACTLAX 327 +#define SPECIES_GRIZZLAX 328 +#define SPECIES_ARTICUNO 329 +#define SPECIES_SNOWONE 330 +#define SPECIES_FROSTUNUS 331 +#define SPECIES_ZAPDOS 332 +#define SPECIES_SHOCKATOO 333 +#define SPECIES_VOLTDUO 334 +#define SPECIES_MOLTRES 335 +#define SPECIES_IGNITHREE 336 +#define SPECIES_INFERNTRI 337 +#define SPECIES_DRATINI 338 +#define SPECIES_DRAGONAIR 339 +#define SPECIES_DRAGONITE 340 +#define SPECIES_DRAGONIER 341 +#define SPECIES_DRAGONACE 342 +#define SPECIES_DRAGONTALE 343 +#define SPECIES_MEWTWO 344 +#define SPECIES_MEWTHREE 345 +#define SPECIES_MEWFOUR 346 +#define SPECIES_MEW 347 +#define SPECIES_NYU 348 +#define SPECIES_IOTA 349 +#define SPECIES_MISSINGNO_1 350 +#define SPECIES_MISSINGNO_2 351 +#define SPECIES_MISSINGNO_3 352 +#define SPECIES_MISSINGNO_4 353 +#define SPECIES_MISSINGNO_5 354 + +#define SPECIES_EGG 355 +#define NUM_SPECIES SPECIES_EGG +#define SPECIES_SHINY_TAG 5000 +#endif // GUARD_CONSTANTS_SPECIES_H diff --git a/pokeemerald-tools/test_families.h b/pokeemerald-tools/test_families.h new file mode 100644 index 0000000000..1a92aafc1c --- /dev/null +++ b/pokeemerald-tools/test_families.h @@ -0,0 +1,606 @@ +//gen file for PkmnEvolved +#ifdef __INTELLISENSE__ +const struct SpeciesInfo gSpeciesInfoPkmnEvolved[] = +{ + +#endif + +#if P_FAMILY_BULBASAUR + [SPECIES_BULBASAUR] = + { + .speciesName = _("Bulbasaur"), + .baseHP = 45, + .baseAttack = 49, + .baseDefense = 49, + .baseSpeed = 45, + .baseSpAttack = 65, + .baseSpDefense = 65, + .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), + .catchRate = 45, + .expYield = 60, + .evYield_SpAttack = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_OVERGROW, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = =TRUE(), + .cryId = CRY_BULBASAUR, + .categoryName = _("Seed"), + .height = 7, + .weight = 69, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 356, + .pokemonOffset = 16, + .trainerScale = 256, + .trainerOffset = -2, + .frontPic = gMonFrontPic_Bulbasaur, + .frontPicSize = MON_COORDS_SIZE(5,5), + .frontPicYOffset = 16, + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Bulbasaur, + .backPicSize = MON_COORDS_SIZE(4,6), + .backPicYOffset = 16, + .backAnimId = BACK_ANIM_CONCAVE_ARC_SMALL, + .palette = gMonPalette_Bulbasaur, + .shinyPalette = gMonShinyPalette_Bulbasaur, + .iconSprite = gMonIcon_Bulbasaur, + .iconPalIndex = 2, + FOOTPRINT(Bulbasaur) + .levelUpLearnset = sBulbasaurLevelUpLearnset, + .teachableLearnSet = sBulbasaurTeachableLearnset, + .eggMoveLearnset = sBulbasaurTeachableLearnset, + }, + + [SPECIES_IVYSAUR] = + { + .speciesName = _("Ivysaur"), + .baseHP = 60, + .baseAttack = 62, + .baseDefense = 63, + .baseSpeed = 60, + .baseSpAttack = 80, + .baseSpDefense = 80, + .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), + .catchRate = 45, + .expYield = 121, + .evYield_SpAttack = 1, + .evYield_SpDefense = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_OVERGROW, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = =TRUE(), + .cryId = CRY_IVYSAUR, + .categoryName = _("Seed"), + .height = 10, + .weight = 130, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 332, + .pokemonOffset = 11, + .trainerScale = 256, + .trainerOffset = -2, + .frontPic = gMonFrontPic_Ivysaur, + .frontPicSize = MON_COORDS_SIZE(6,6), + .frontPicYOffset = 10, + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Ivysaur, + .backPicSize = MON_COORDS_SIZE(6,7), + .backPicYOffset = 10, + .palette = gMonPalette_Ivysaur, + .shinyPalette = gMonShinyPalette_Ivysaur, + .iconSprite = gMonIcon_Ivysaur, + .iconPalIndex = 2, + FOOTPRINT(Ivysaur) + .levelUpLearnset = sIvysaurLevelUpLearnset, + .teachableLearnSet = sIvysaurTeachableLearnset, + .eggMoveLearnset = sIvysaurTeachableLearnset, + }, + + [SPECIES_VENUSAUR] = + { + .speciesName = _("Venusaur"), + .baseHP = 80, + .baseAttack = 82, + .baseDefense = 83, + .baseSpeed = 80, + .baseSpAttack = 100, + .baseSpDefense = 100, + .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), + .catchRate = 45, + .expYield = 185, + .evYield_SpAttack = 2, + .evYield_SpDefense = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_OVERGROW, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = =TRUE(), + .cryId = CRY_VENUSAUR, + .categoryName = _("Seed"), + .height = 20, + .weight = 1000, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 256, + .pokemonOffset = 1, + .trainerScale = 375, + .trainerOffset = 6, + .frontPic = gMonFrontPic_Venusaur, + .frontPicSize = MON_COORDS_SIZE(7,8), + .frontPicYOffset = 4, + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Venusaur, + .backPicSize = MON_COORDS_SIZE(6,8), + .backPicYOffset = 10, + .palette = gMonPalette_Venusaur, + .shinyPalette = gMonShinyPalette_Venusaur, + .iconSprite = gMonIcon_Venusaur, + .iconPalIndex = 2, + FOOTPRINT(Venusaur) + .levelUpLearnset = sVenusaurLevelUpLearnset, + .teachableLearnSet = sVenusaurTeachableLearnset, + .eggMoveLearnset = sVenusaurTeachableLearnset, + }, + + [SPECIES_ECOSAUR] = + { + .speciesName = _("Ecosaur"), + .baseHP = 84, + .baseAttack = 90, + .baseDefense = 85, + .baseSpeed = 80, + .baseSpAttack = 118, + .baseSpDefense = 118, + .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), + .catchRate = 45, + .expYield = 204, + .evYield_SpAttack = 2, + .evYield_SpDefense = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_CHLOROPHYLL, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = =TRUE(), + .cryId = CRY_VENUSAUR, + .categoryName = _("Overgrown"), + .height = 20, + .weight = 2700, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 256, + .pokemonOffset = 1, + .trainerScale = 375, + .trainerOffset = 6, + .frontPic = gMonFrontPic_Ecosaur, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Ecosaur, + .backPicSize = MON_COORDS_SIZE(6,8), + .palette = gMonPalette_Ecosaur, + .shinyPalette = gMonShinyPalette_Ecosaur, + .iconSprite = gMonIcon_Ecosaur, + .iconPalIndex = 2, + FOOTPRINT(Ecosaur) + .levelUpLearnset = sEcosaurLevelUpLearnset, + .teachableLearnSet = sEcosaurTeachableLearnset, + .eggMoveLearnset = sEcosaurTeachableLearnset, + }, + + [SPECIES_TERARISAUR] = + { + .speciesName = _("Terarisaur"), + .baseHP = 90, + .baseAttack = 106, + .baseDefense = 91, + .baseSpeed = 80, + .baseSpAttack = 129, + .baseSpDefense = 129, + .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), + .catchRate = 45, + .expYield = 215, + .evYield_SpAttack = 2, + .evYield_SpDefense = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_CHLOROPHYLL, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = =TRUE(), + .cryId = CRY_VENUSAUR, + .categoryName = _("Jungle"), + .height = 20, + .weight = 3500, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 256, + .pokemonOffset = 1, + .trainerScale = 375, + .trainerOffset = 6, + .frontPic = gMonFrontPic_Terarisaur, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Terarisaur, + .backPicSize = MON_COORDS_SIZE(7,8), + .palette = gMonPalette_Terarisaur, + .shinyPalette = gMonShinyPalette_Terarisaur, + .iconSprite = gMonIcon_Terarisaur, + .iconPalIndex = 2, + FOOTPRINT(Terarisaur) + .levelUpLearnset = sTerarisaurLevelUpLearnset, + .teachableLearnSet = sTerarisaurTeachableLearnset, + .eggMoveLearnset = sTerarisaurTeachableLearnset, + }, + + [SPECIES_SYMBISAUR] = + { + .speciesName = _("Symbisaur"), + .baseHP = 98, + .baseAttack = 119, + .baseDefense = 93, + .baseSpeed = 74, + .baseSpAttack = 138, + .baseSpDefense = 138, + .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), + .catchRate = 45, + .expYield = 230, + .evYield_SpAttack = 2, + .evYield_SpDefense = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_CHLOROPHYLL, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = =TRUE(), + .cryId = CRY_VENUSAUR, + .categoryName = _("Ecosystem"), + .height = 20, + .weight = 6000, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 256, + .pokemonOffset = 1, + .trainerScale = 375, + .trainerOffset = 6, + .frontPic = gMonFrontPic_Symbisaur, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Symbisaur, + .backPicSize = MON_COORDS_SIZE(7,8), + .palette = gMonPalette_Symbisaur, + .shinyPalette = gMonShinyPalette_Symbisaur, + .iconSprite = gMonIcon_Symbisaur, + .iconPalIndex = 2, + FOOTPRINT(Symbisaur) + .levelUpLearnset = sSymbisaurLevelUpLearnset, + .teachableLearnSet = sSymbisaurTeachableLearnset, + .eggMoveLearnset = sSymbisaurTeachableLearnset, + }, + +#endif + +#if P_FAMILY_CHARMANDER + [SPECIES_CHARMANDER] = + { + .speciesName = _("Charmander"), + .baseHP = 39, + .baseAttack = 52, + .baseDefense = 43, + .baseSpeed = 65, + .baseSpAttack = 60, + .baseSpDefense = 50, + .types = MON_TYPES(TYPE_FIRE), + .catchRate = 45, + .expYield = 58, + .evYield_Speed = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_BLAZE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_RED, + .noFlip = =TRUE(), + .cryId = CRY_CHARMANDER, + .categoryName = _("Lizard"), + .height = 6, + .weight = 85, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 410, + .pokemonOffset = 16, + .trainerScale = 256, + .trainerOffset = -2, + .frontPic = gMonFrontPic_Charmander, + .frontPicSize = MON_COORDS_SIZE(5,5), + .frontPicYOffset = 13, + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Charmander, + .backPicSize = MON_COORDS_SIZE(6,6), + .backPicYOffset = 10, + .palette = gMonPalette_Charmander, + .shinyPalette = gMonShinyPalette_Charmander, + .iconSprite = gMonIcon_Charmander, + .iconPalIndex = 2, + FOOTPRINT(Charmander) + .levelUpLearnset = sCharmanderLevelUpLearnset, + .teachableLearnSet = sCharmanderTeachableLearnset, + .eggMoveLearnset = sCharmanderTeachableLearnset, + }, + + [SPECIES_CHARMELEON] = + { + .speciesName = _("Charmeleon"), + .baseHP = 58, + .baseAttack = 64, + .baseDefense = 58, + .baseSpeed = 80, + .baseSpAttack = 80, + .baseSpDefense = 65, + .types = MON_TYPES(TYPE_FIRE), + .catchRate = 45, + .expYield = 115, + .evYield_Speed = 1, + .evYield_SpAttack = 1, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_BLAZE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_RED, + .noFlip = =TRUE(), + .cryId = CRY_CHARMELEON, + .categoryName = _("Flame"), + .height = 11, + .weight = 190, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 294, + .pokemonOffset = 8, + .trainerScale = 256, + .trainerOffset = -2, + .frontPic = gMonFrontPic_Charmeleon, + .frontPicSize = MON_COORDS_SIZE(6,7), + .frontPicYOffset = 9, + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Charmeleon, + .backPicSize = MON_COORDS_SIZE(7,7), + .backPicYOffset = 7, + .palette = gMonPalette_Charmeleon, + .shinyPalette = gMonShinyPalette_Charmeleon, + .iconSprite = gMonIcon_Charmeleon, + .iconPalIndex = 2, + FOOTPRINT(Charmeleon) + .levelUpLearnset = sCharmeleonLevelUpLearnset, + .teachableLearnSet = sCharmeleonTeachableLearnset, + .eggMoveLearnset = sCharmeleonTeachableLearnset, + }, + + [SPECIES_CHARIZARD] = + { + .speciesName = _("Charizard"), + .baseHP = 78, + .baseAttack = 84, + .baseDefense = 78, + .baseSpeed = 100, + .baseSpAttack = 109, + .baseSpDefense = 85, + .types = MON_TYPES(TYPE_FIRE, TYPE_FLYING), + .catchRate = 45, + .expYield = 179, + .evYield_SpAttack = 3, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_BLAZE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_RED, + .noFlip = =TRUE(), + .cryId = CRY_CHARIZARD, + .categoryName = _("Flame"), + .height = 17, + .weight = 905, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 271, + .trainerScale = 317, + .trainerOffset = 3, + .frontPic = gMonFrontPic_Charizard, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontPicYOffset = 1, + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Charizard, + .backPicSize = MON_COORDS_SIZE(7,8), + .backPicYOffset = 4, + .palette = gMonPalette_Charizard, + .shinyPalette = gMonShinyPalette_Charizard, + .iconSprite = gMonIcon_Charizard, + .iconPalIndex = 2, + FOOTPRINT(Charizard) + .levelUpLearnset = sCharizardLevelUpLearnset, + .teachableLearnSet = sCharizardTeachableLearnset, + .eggMoveLearnset = sCharizardTeachableLearnset, + }, + + [SPECIES_CHARIGUANA] = + { + .speciesName = _("Chariguana"), + .baseHP = 83, + .baseAttack = 96, + .baseDefense = 78, + .baseSpeed = 117, + .baseSpAttack = 118, + .baseSpDefense = 85, + .types = MON_TYPES(TYPE_FIRE, TYPE_FLYING), + .catchRate = 45, + .expYield = 199, + .evYield_SpAttack = 3, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_BLAZE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_RED, + .noFlip = =TRUE(), + .cryId = CRY_CHARIZARD, + .categoryName = _("Inferno"), + .height = 24, + .weight = 1104, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 271, + .trainerScale = 317, + .trainerOffset = 3, + .frontPic = gMonFrontPic_Chariguana, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Chariguana, + .backPicSize = MON_COORDS_SIZE(8,8), + .backPicYOffset = 5, + .palette = gMonPalette_Chariguana, + .shinyPalette = gMonShinyPalette_Chariguana, + .iconSprite = gMonIcon_Chariguana, + .iconPalIndex = 2, + FOOTPRINT(Chariguana) + .levelUpLearnset = sChariguanaLevelUpLearnset, + .teachableLearnSet = sChariguanaTeachableLearnset, + .eggMoveLearnset = sChariguanaTeachableLearnset, + }, + + [SPECIES_CHARIANA] = + { + .speciesName = _("Chariana"), + .baseHP = 91, + .baseAttack = 108, + .baseDefense = 78, + .baseSpeed = 127, + .baseSpAttack = 132, + .baseSpDefense = 85, + .types = MON_TYPES(TYPE_FIRE, TYPE_WATER), + .catchRate = 45, + .expYield = 211, + .evYield_SpAttack = 3, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_MARVEL_SCALE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_BLUE, + .noFlip = =TRUE(), + .cryId = CRY_CHARIZARD, + .categoryName = _("Depth"), + .height = 30, + .weight = 1542, + .description = COMPOUD_STRING( + “temp”), + .pokemonScale = 271, + .trainerScale = 317, + .trainerOffset = 3, + .frontPic = gMonFrontPic_Chariana, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Chariana, + .backPicSize = MON_COORDS_SIZE(8,8), + .backPicYOffset = 6, + .palette = gMonPalette_Chariana, + .shinyPalette = gMonShinyPalette_Chariana, + .iconSprite = gMonIcon_Chariana, + .iconPalIndex = 2, + FOOTPRINT(Chariana) + .levelUpLearnset = sCharianaLevelUpLearnset, + .teachableLearnSet = sCharianaTeachableLearnset, + .eggMoveLearnset = sCharianaTeachableLearnset, + }, + + [SPECIES_CHARIATHAN] = + { + .speciesName = _("Chariathan"), + .baseHP = 93, + .baseAttack = 132, + .baseDefense = 80, + .baseSpeed = 127, + .baseSpAttack = 139, + .baseSpDefense = 88, + .types = MON_TYPES(TYPE_FIRE, TYPE_WATER), + .catchRate = 45, + .expYield = 220, + .evYield_SpAttack = 3, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_MARVEL_SCALE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_PURPLE, + .noFlip = =TRUE(), + .cryId = CRY_CHARIZARD, + .categoryName = _("Abyss"), + .height = 102, + .weight = 3694, + .description = COMPOUD_STRING( + "test"), + .pokemonScale = 271, + .trainerScale = 317, + .trainerOffset = 3, + .frontPic = gMonFrontPic_Chariathan, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = ANIM_FRAMES(ANIMCMD_FRAME(0, 1)), + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Chariathan, + .backPicSize = MON_COORDS_SIZE(6,8), + .backPicYOffset = 8, + .palette = gMonPalette_Chariathan, + .shinyPalette = gMonShinyPalette_Chariathan, + .iconSprite = gMonIcon_Chariathan, + .iconPalIndex = 2, + FOOTPRINT(Chariathan) + .levelUpLearnset = sChariathanLevelUpLearnset, + .teachableLearnSet = sChariathanTeachableLearnset, + .eggMoveLearnset = sChariathanTeachableLearnset, + }, + +#endif diff --git a/pokeemerald-tools/test_graphics.h b/pokeemerald-tools/test_graphics.h new file mode 100644 index 0000000000..23d3ce6ab5 --- /dev/null +++ b/pokeemerald-tools/test_graphics.h @@ -0,0 +1,43 @@ +//data prep start + const u32 gMonFrontPic_Ecosaur[] = INCBIN_U32("graphics/pokemon/ecosaur/front.4bpp.lz"); + const u32 gMonBackPic_Ecosaur[] = INCBIN_U32("graphics/pokemon/ecosaur/back.4bpp.lz"); + const u16 gMonPalette_Ecosaur[] = INCBIN_U16("graphics/pokemon/ecosaur/normal.gbapal"); + const u16 gMonShinyPalette_Ecosaur[] = INCBIN_U16("graphics/pokemon/ecosaur/normal.gbapal"); + const u8 gMonIcon_Ecosaur[] = INCBIN_U8("graphics/pokemon/ecosaur/icon.4bpp"); + const u8 gMonFootprint_Ecosaur[] = INCBIN_U8("graphics/pokemon/ecosaur/footprint.1bpp"); + + const u32 gMonFrontPic_Terarisaur[] = INCBIN_U32("graphics/pokemon/terarisaur/front.4bpp.lz"); + const u32 gMonBackPic_Terarisaur[] = INCBIN_U32("graphics/pokemon/terarisaur/back.4bpp.lz"); + const u16 gMonPalette_Terarisaur[] = INCBIN_U16("graphics/pokemon/terarisaur/normal.gbapal"); + const u16 gMonShinyPalette_Terarisaur[] = INCBIN_U16("graphics/pokemon/terarisaur/normal.gbapal"); + const u8 gMonIcon_Terarisaur[] = INCBIN_U8("graphics/pokemon/terarisaur/icon.4bpp"); + const u8 gMonFootprint_Terarisaur[] = INCBIN_U8("graphics/pokemon/terarisaur/footprint.1bpp"); + + const u32 gMonFrontPic_Symbisaur[] = INCBIN_U32("graphics/pokemon/symbisaur/front.4bpp.lz"); + const u32 gMonBackPic_Symbisaur[] = INCBIN_U32("graphics/pokemon/symbisaur/back.4bpp.lz"); + const u16 gMonPalette_Symbisaur[] = INCBIN_U16("graphics/pokemon/symbisaur/normal.gbapal"); + const u16 gMonShinyPalette_Symbisaur[] = INCBIN_U16("graphics/pokemon/symbisaur/normal.gbapal"); + const u8 gMonIcon_Symbisaur[] = INCBIN_U8("graphics/pokemon/symbisaur/icon.4bpp"); + const u8 gMonFootprint_Symbisaur[] = INCBIN_U8("graphics/pokemon/symbisaur/footprint.1bpp"); + + const u32 gMonFrontPic_Chariguana[] = INCBIN_U32("graphics/pokemon/chariguana/front.4bpp.lz"); + const u32 gMonBackPic_Chariguana[] = INCBIN_U32("graphics/pokemon/chariguana/back.4bpp.lz"); + const u16 gMonPalette_Chariguana[] = INCBIN_U16("graphics/pokemon/chariguana/normal.gbapal"); + const u16 gMonShinyPalette_Chariguana[] = INCBIN_U16("graphics/pokemon/chariguana/normal.gbapal"); + const u8 gMonIcon_Chariguana[] = INCBIN_U8("graphics/pokemon/chariguana/icon.4bpp"); + const u8 gMonFootprint_Chariguana[] = INCBIN_U8("graphics/pokemon/chariguana/footprint.1bpp"); + + const u32 gMonFrontPic_Chariana[] = INCBIN_U32("graphics/pokemon/chariana/front.4bpp.lz"); + const u32 gMonBackPic_Chariana[] = INCBIN_U32("graphics/pokemon/chariana/back.4bpp.lz"); + const u16 gMonPalette_Chariana[] = INCBIN_U16("graphics/pokemon/chariana/normal.gbapal"); + const u16 gMonShinyPalette_Chariana[] = INCBIN_U16("graphics/pokemon/chariana/normal.gbapal"); + const u8 gMonIcon_Chariana[] = INCBIN_U8("graphics/pokemon/chariana/icon.4bpp"); + const u8 gMonFootprint_Chariana[] = INCBIN_U8("graphics/pokemon/chariana/footprint.1bpp"); + + const u32 gMonFrontPic_Chariathan[] = INCBIN_U32("graphics/pokemon/chariathan/front.4bpp.lz"); + const u32 gMonBackPic_Chariathan[] = INCBIN_U32("graphics/pokemon/chariathan/back.4bpp.lz"); + const u16 gMonPalette_Chariathan[] = INCBIN_U16("graphics/pokemon/chariathan/normal.gbapal"); + const u16 gMonShinyPalette_Chariathan[] = INCBIN_U16("graphics/pokemon/chariathan/normal.gbapal"); + const u8 gMonIcon_Chariathan[] = INCBIN_U8("graphics/pokemon/chariathan/icon.4bpp"); + //const u8 gMonFootprint_Chariathan[] = INCBIN_U8("graphics/pokemon/chariathan/footprint.1bpp"); + diff --git a/pokeemerald-tools/test_learnset.h b/pokeemerald-tools/test_learnset.h new file mode 100644 index 0000000000..efe9ba0363 --- /dev/null +++ b/pokeemerald-tools/test_learnset.h @@ -0,0 +1,589 @@ +//learnset for PkmnEvolved +#define LEVEL_UP_MOVE(lvl, moveLearned) {.move = moveLearned, .level = lvl} +#define LEVEL_UP_END {.move = LEVEL_UP_MOVE_END, .level = 0} + +static const struct LevelUpMove sNoneLevelUpLearnset[] = { + LEVEL_UP_MOVE(1, MOVE_POUND), + LEVEL_UP_END +}; +#endif + +#if P_FAMILY_BULBASAUR + LEVEL_UP_MOVE( 4 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 10 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 15 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 20 , MOVE_RAZOR_LEAF), + LEVEL_UP_MOVE( 25 , MOVE_SWEET_SCENT), + LEVEL_UP_MOVE( 28 , MOVE_SLUDGE_BOMB), + LEVEL_UP_MOVE( 32 , MOVE_GROWTH), + LEVEL_UP_MOVE( 36 , MOVE_GIGA_DRAIN), + LEVEL_UP_MOVE( 39 , MOVE_SYNTHESIS), + LEVEL_UP_MOVE( 46 , MOVE_SOLARBEAM), + LEVEL_UP_END +}; + +static const struct LevelUpMove sIvysaurLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 4 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 10 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 15 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 22 , MOVE_RAZOR_LEAF), + LEVEL_UP_MOVE( 29 , MOVE_SWEET_SCENT), + LEVEL_UP_MOVE( 32 , MOVE_SLUDGE_BOMB), + LEVEL_UP_MOVE( 38 , MOVE_GROWTH), + LEVEL_UP_MOVE( 43 , MOVE_GIGA_DRAIN), + LEVEL_UP_MOVE( 47 , MOVE_SYNTHESIS), + LEVEL_UP_MOVE( 56 , MOVE_SOLARBEAM), + LEVEL_UP_END +}; + +static const struct LevelUpMove sVenusaurLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 1 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 4 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 10 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 15 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 22 , MOVE_RAZOR_LEAF), + LEVEL_UP_MOVE( 29 , MOVE_SWEET_SCENT), + LEVEL_UP_MOVE( 34 , MOVE_SLUDGE_BOMB), + LEVEL_UP_MOVE( 41 , MOVE_GROWTH), + LEVEL_UP_MOVE( 46 , MOVE_GIGA_DRAIN), + LEVEL_UP_MOVE( 53 , MOVE_SYNTHESIS), + LEVEL_UP_MOVE( 65 , MOVE_SOLARBEAM), + LEVEL_UP_MOVE( 70 , MOVE_FRENZY_PLANT), + LEVEL_UP_END +}; + +static const struct LevelUpMove sEcosaurLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 1 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 4 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 10 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 15 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 22 , MOVE_RAZOR_LEAF), + LEVEL_UP_MOVE( 29 , MOVE_SWEET_SCENT), + LEVEL_UP_MOVE( 34 , MOVE_SLUDGE_BOMB), + LEVEL_UP_MOVE( 41 , MOVE_GROWTH), + LEVEL_UP_MOVE( 46 , MOVE_GIGA_DRAIN), + LEVEL_UP_MOVE( 53 , MOVE_SYNTHESIS), + LEVEL_UP_MOVE( 65 , MOVE_SOLARBEAM), + LEVEL_UP_MOVE( 70 , MOVE_FRENZY_PLANT), + LEVEL_UP_END +}; + +static const struct LevelUpMove sTerarisaurLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 1 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 4 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 10 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 15 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 22 , MOVE_RAZOR_LEAF), + LEVEL_UP_MOVE( 29 , MOVE_SWEET_SCENT), + LEVEL_UP_MOVE( 34 , MOVE_SLUDGE_BOMB), + LEVEL_UP_MOVE( 41 , MOVE_GROWTH), + LEVEL_UP_MOVE( 46 , MOVE_GIGA_DRAIN), + LEVEL_UP_MOVE( 53 , MOVE_SYNTHESIS), + LEVEL_UP_MOVE( 65 , MOVE_SOLARBEAM), + LEVEL_UP_MOVE( 70 , MOVE_FRENZY_PLANT), + LEVEL_UP_END +}; + +static const struct LevelUpMove sSymbisaurLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 1 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 4 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_LEECH_SEED), + LEVEL_UP_MOVE( 10 , MOVE_VINE_WHIP), + LEVEL_UP_MOVE( 15 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 22 , MOVE_RAZOR_LEAF), + LEVEL_UP_MOVE( 29 , MOVE_SWEET_SCENT), + LEVEL_UP_MOVE( 34 , MOVE_SLUDGE_BOMB), + LEVEL_UP_MOVE( 41 , MOVE_GROWTH), + LEVEL_UP_MOVE( 46 , MOVE_GIGA_DRAIN), + LEVEL_UP_MOVE( 53 , MOVE_SYNTHESIS), + LEVEL_UP_MOVE( 65 , MOVE_SOLARBEAM), + LEVEL_UP_MOVE( 70 , MOVE_FRENZY_PLANT), + LEVEL_UP_END +}; + +#endif + +#if P_FAMILY_CHARMANDER + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 14 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 19 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 25 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 31 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 37 , MOVE_SLASH), + LEVEL_UP_MOVE( 43 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 49 , MOVE_HEAT_WAVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sCharmeleonLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_EMBER), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 16 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 20 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 27 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 34 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 41 , MOVE_SLASH), + LEVEL_UP_MOVE( 48 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 55 , MOVE_HEAT_WAVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sCharizardLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SCRATCH), + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_EMBER), + LEVEL_UP_MOVE( 1 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 20 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 27 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 34 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 36 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 44 , MOVE_SLASH), + LEVEL_UP_MOVE( 54 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 64 , MOVE_HEAT_WAVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sChariguanaLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SCRATCH), + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_EMBER), + LEVEL_UP_MOVE( 1 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 16 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 23 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 27 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 34 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 36 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 44 , MOVE_SLASH), + LEVEL_UP_MOVE( 54 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 64 , MOVE_HEAT_WAVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sCharianaLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SCRATCH), + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_EMBER), + LEVEL_UP_MOVE( 1 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 16 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 23 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 27 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 34 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 36 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 44 , MOVE_SLASH), + LEVEL_UP_MOVE( 54 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 64 , MOVE_HEAT_WAVE), + LEVEL_UP_MOVE( 70 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +static const struct LevelUpMove sChariathanLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SCRATCH), + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_EMBER), + LEVEL_UP_MOVE( 1 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 16 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 23 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 27 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 34 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 36 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 44 , MOVE_SLASH), + LEVEL_UP_MOVE( 54 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 64 , MOVE_HEAT_WAVE), + LEVEL_UP_MOVE( 70 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +#endif + +#if P_FAMILY_SQUIRTLE + LEVEL_UP_MOVE( 4 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 7 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 10 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 13 , MOVE_WATER_GUN), + LEVEL_UP_MOVE( 18 , MOVE_BITE), + LEVEL_UP_MOVE( 21 , MOVE_RAPID_SPIN), + LEVEL_UP_MOVE( 24 , MOVE_BUBBLEBEAM), + LEVEL_UP_MOVE( 28 , MOVE_PROTECT), + LEVEL_UP_MOVE( 33 , MOVE_RAIN_DANCE), + LEVEL_UP_MOVE( 40 , MOVE_SKULL_BASH), + LEVEL_UP_MOVE( 47 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +static const struct LevelUpMove sWartortleLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 1 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 4 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 7 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 10 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 13 , MOVE_WATER_GUN), + LEVEL_UP_MOVE( 19 , MOVE_BITE), + LEVEL_UP_MOVE( 22 , MOVE_RAPID_SPIN), + LEVEL_UP_MOVE( 25 , MOVE_BUBBLEBEAM), + LEVEL_UP_MOVE( 31 , MOVE_PROTECT), + LEVEL_UP_MOVE( 37 , MOVE_RAIN_DANCE), + LEVEL_UP_MOVE( 45 , MOVE_SKULL_BASH), + LEVEL_UP_MOVE( 53 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +static const struct LevelUpMove sBlastoiseLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 1 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 1 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 4 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 7 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 10 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 13 , MOVE_WATER_GUN), + LEVEL_UP_MOVE( 19 , MOVE_BITE), + LEVEL_UP_MOVE( 22 , MOVE_RAPID_SPIN), + LEVEL_UP_MOVE( 25 , MOVE_BUBBLEBEAM), + LEVEL_UP_MOVE( 31 , MOVE_PROTECT), + LEVEL_UP_MOVE( 42 , MOVE_RAIN_DANCE), + LEVEL_UP_MOVE( 55 , MOVE_SKULL_BASH), + LEVEL_UP_MOVE( 68 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +static const struct LevelUpMove sFerrapinLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 1 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 1 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 4 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 7 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 10 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 13 , MOVE_WATER_GUN), + LEVEL_UP_MOVE( 19 , MOVE_BITE), + LEVEL_UP_MOVE( 22 , MOVE_RAPID_SPIN), + LEVEL_UP_MOVE( 25 , MOVE_BUBBLEBEAM), + LEVEL_UP_MOVE( 31 , MOVE_PROTECT), + LEVEL_UP_MOVE( 42 , MOVE_RAIN_DANCE), + LEVEL_UP_MOVE( 55 , MOVE_SKULL_BASH), + LEVEL_UP_MOVE( 68 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +static const struct LevelUpMove sFortoiseLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 1 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 1 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 4 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 7 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 10 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 13 , MOVE_WATER_GUN), + LEVEL_UP_MOVE( 19 , MOVE_BITE), + LEVEL_UP_MOVE( 22 , MOVE_RAPID_SPIN), + LEVEL_UP_MOVE( 25 , MOVE_BUBBLEBEAM), + LEVEL_UP_MOVE( 31 , MOVE_PROTECT), + LEVEL_UP_MOVE( 42 , MOVE_RAIN_DANCE), + LEVEL_UP_MOVE( 52 , MOVE_FLASH_CANNON), + LEVEL_UP_MOVE( 55 , MOVE_SKULL_BASH), + LEVEL_UP_MOVE( 68 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +static const struct LevelUpMove sTurtilleryLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 1 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 1 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 4 , MOVE_TAIL_WHIP), + LEVEL_UP_MOVE( 7 , MOVE_BUBBLE), + LEVEL_UP_MOVE( 10 , MOVE_WITHDRAW), + LEVEL_UP_MOVE( 13 , MOVE_WATER_GUN), + LEVEL_UP_MOVE( 19 , MOVE_BITE), + LEVEL_UP_MOVE( 22 , MOVE_RAPID_SPIN), + LEVEL_UP_MOVE( 25 , MOVE_BUBBLEBEAM), + LEVEL_UP_MOVE( 31 , MOVE_PROTECT), + LEVEL_UP_MOVE( 42 , MOVE_RAIN_DANCE), + LEVEL_UP_MOVE( 52 , MOVE_FLASH_CANNON), + LEVEL_UP_MOVE( 55 , MOVE_SKULL_BASH), + LEVEL_UP_MOVE( 68 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; + +#endif + +#if P_FAMILY_CATERPIE + LEVEL_UP_MOVE( 1 , MOVE_STRING_SHOT), + LEVEL_UP_END +}; + +static const struct LevelUpMove sMetapodLevelUpLearnset[] = { + LEVEL_UP_MOVE( 7 , MOVE_HARDEN), + LEVEL_UP_END +}; + +static const struct LevelUpMove sButterfreeLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_CONFUSION), + LEVEL_UP_MOVE( 13 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 14 , MOVE_STUN_SPORE), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 18 , MOVE_SUPERSONIC), + LEVEL_UP_MOVE( 23 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 28 , MOVE_GUST), + LEVEL_UP_MOVE( 34 , MOVE_PSYBEAM), + LEVEL_UP_MOVE( 40 , MOVE_SAFEGUARD), + LEVEL_UP_MOVE( 47 , MOVE_SILVER_WIND), + LEVEL_UP_END +}; + +static const struct LevelUpMove sButteflareLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_CONFUSION), + LEVEL_UP_MOVE( 11 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 14 , MOVE_STUN_SPORE), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 18 , MOVE_SUPERSONIC), + LEVEL_UP_MOVE( 22 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 23 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 25 , MOVE_WILL-O-WISP), + LEVEL_UP_MOVE( 28 , MOVE_GUST), + LEVEL_UP_MOVE( 34 , MOVE_PSYBEAM), + LEVEL_UP_MOVE( 40 , MOVE_SAFEGUARD), + LEVEL_UP_MOVE( 47 , MOVE_SILVER_WIND), + LEVEL_UP_END +}; + +static const struct LevelUpMove sPyrefreeLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_CONFUSION), + LEVEL_UP_MOVE( 11 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 14 , MOVE_STUN_SPORE), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 18 , MOVE_SUPERSONIC), + LEVEL_UP_MOVE( 23 , MOVE_GUST), + LEVEL_UP_MOVE( 25 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 28 , MOVE_WILL-O-WISP), + LEVEL_UP_MOVE( 34 , MOVE_HEAT_WAVE), + LEVEL_UP_MOVE( 36 , MOVE_WEATHER_BALL), + LEVEL_UP_MOVE( 40 , MOVE_AIR_CUTTER), + LEVEL_UP_MOVE( 47 , MOVE_OVERHEAT), + LEVEL_UP_END +}; + +static const struct LevelUpMove sImpsectLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_CONFUSION), + LEVEL_UP_MOVE( 11 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_POISONPOWDER), + LEVEL_UP_MOVE( 14 , MOVE_STUN_SPORE), + LEVEL_UP_MOVE( 15 , MOVE_SLEEP_POWDER), + LEVEL_UP_MOVE( 18 , MOVE_SUPERSONIC), + LEVEL_UP_MOVE( 23 , MOVE_GUST), + LEVEL_UP_MOVE( 25 , MOVE_WILL-O-WISP), + LEVEL_UP_MOVE( 28 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 34 , MOVE_HEAT_WAVE), + LEVEL_UP_MOVE( 36 , MOVE_WEATHER_BALL), + LEVEL_UP_MOVE( 40 , MOVE_AIR_CUTTER), + LEVEL_UP_MOVE( 45 , MOVE_OVERHEAT), + LEVEL_UP_MOVE( 47 , MOVE_SUNNY_DAY), + LEVEL_UP_MOVE( 50 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 55 , MOVE_ERUPTION), + LEVEL_UP_MOVE( 60 , MOVE_BUG_BUZZ), + LEVEL_UP_END +}; + +#endif + +#if P_FAMILY_WEEDLE + LEVEL_UP_MOVE( 1 , MOVE_STRING_SHOT), + LEVEL_UP_END +}; + +static const struct LevelUpMove sKakunaLevelUpLearnset[] = { + LEVEL_UP_MOVE( 7 , MOVE_HARDEN), + LEVEL_UP_END +}; + +static const struct LevelUpMove sBeedrillLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_FURY_ATTACK), + LEVEL_UP_MOVE( 15 , MOVE_FOCUS_ENERGY), + LEVEL_UP_MOVE( 20 , MOVE_TWINEEDLE), + LEVEL_UP_MOVE( 25 , MOVE_RAGE), + LEVEL_UP_MOVE( 30 , MOVE_PURSUIT), + LEVEL_UP_MOVE( 35 , MOVE_PIN_MISSILE), + LEVEL_UP_MOVE( 40 , MOVE_AGILITY), + LEVEL_UP_MOVE( 45 , MOVE_ENDEAVOR), + LEVEL_UP_END +}; + +static const struct LevelUpMove sBeebruteLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_FURY_ATTACK), + LEVEL_UP_MOVE( 15 , MOVE_FOCUS_ENERGY), + LEVEL_UP_MOVE( 20 , MOVE_TWINEEDLE), + LEVEL_UP_MOVE( 25 , MOVE_RAGE), + LEVEL_UP_MOVE( 25 , MOVE_BULK_UP), + LEVEL_UP_MOVE( 30 , MOVE_PURSUIT), + LEVEL_UP_MOVE( 35 , MOVE_PIN_MISSILE), + LEVEL_UP_MOVE( 40 , MOVE_MEGAHORN), + LEVEL_UP_MOVE( 50 , MOVE_ENDEAVOR), + LEVEL_UP_END +}; + +static const struct LevelUpMove sDronarchLevelUpLearnset[] = { + LEVEL_UP_MOVE( 5 , MOVE_BIDE), + LEVEL_UP_MOVE( 10 , MOVE_FURY_ATTACK), + LEVEL_UP_MOVE( 15 , MOVE_FOCUS_ENERGY), + LEVEL_UP_MOVE( 20 , MOVE_TWINEEDLE), + LEVEL_UP_MOVE( 25 , MOVE_RAGE), + LEVEL_UP_MOVE( 25 , MOVE_BULK_UP), + LEVEL_UP_MOVE( 30 , MOVE_PURSUIT), + LEVEL_UP_MOVE( 30 , MOVE_PIN_MISSILE), + LEVEL_UP_MOVE( 36 , MOVE_PROTECT), + LEVEL_UP_MOVE( 36 , MOVE_REFLECT), + LEVEL_UP_MOVE( 36 , MOVE_LIGHT_SCREEN), + LEVEL_UP_MOVE( 36 , MOVE_BARRIER), + LEVEL_UP_MOVE( 40 , MOVE_MEGAHORN), + LEVEL_UP_MOVE( 45 , MOVE_POISON_JAB), + LEVEL_UP_MOVE( 45 , MOVE_SPIKE_CANNON), + LEVEL_UP_MOVE( 50 , MOVE_ENDEAVOR), + LEVEL_UP_END +}; + +static const struct LevelUpMove sSepistrikeLevelUpLearnset[] = { + LEVEL_UP_MOVE( 10 , MOVE_FURY_ATTACK), + LEVEL_UP_MOVE( 15 , MOVE_FOCUS_ENERGY), + LEVEL_UP_MOVE( 20 , MOVE_TWINEEDLE), + LEVEL_UP_MOVE( 25 , MOVE_RAGE), + LEVEL_UP_MOVE( 30 , MOVE_PURSUIT), + LEVEL_UP_MOVE( 30 , MOVE_SLASH), + LEVEL_UP_MOVE( 35 , MOVE_PIN_MISSILE), + LEVEL_UP_MOVE( 36 , MOVE_SWORDS_DANCE), + LEVEL_UP_MOVE( 36 , MOVE_ENCORE), + LEVEL_UP_MOVE( 40 , MOVE_AGILITY), + LEVEL_UP_MOVE( 40 , MOVE_MEGAHORN), + LEVEL_UP_MOVE( 45 , MOVE_POISON_JAB), + LEVEL_UP_MOVE( 55 , MOVE_GUILLOTINE), + LEVEL_UP_END +}; + +#endif + +#if P_FAMILY_PIDGEY + LEVEL_UP_MOVE( 5 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 9 , MOVE_GUST), + LEVEL_UP_MOVE( 13 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 19 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 25 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 29 , MOVE_FEATHERDANCE), + LEVEL_UP_MOVE( 34 , MOVE_AGILITY), + LEVEL_UP_MOVE( 38 , MOVE_MIRROR_MOVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sPidgeottoLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 1 , MOVE_GUST), + LEVEL_UP_MOVE( 5 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 9 , MOVE_GUST), + LEVEL_UP_MOVE( 13 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 20 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 27 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 31 , MOVE_FEATHERDANCE), + LEVEL_UP_MOVE( 35 , MOVE_AGILITY), + LEVEL_UP_MOVE( 40 , MOVE_MIRROR_MOVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sPidgeotLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 1 , MOVE_GUST), + LEVEL_UP_MOVE( 1 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 5 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 9 , MOVE_GUST), + LEVEL_UP_MOVE( 13 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 20 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 27 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 31 , MOVE_FEATHERDANCE), + LEVEL_UP_MOVE( 36 , MOVE_AGILITY), + LEVEL_UP_MOVE( 36 , MOVE_DRILL_PECK), + LEVEL_UP_MOVE( 41 , MOVE_MIRROR_MOVE), + LEVEL_UP_END +}; + +static const struct LevelUpMove sPidgaeroLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 1 , MOVE_GUST), + LEVEL_UP_MOVE( 1 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 5 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 9 , MOVE_GUST), + LEVEL_UP_MOVE( 13 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 20 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 27 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 31 , MOVE_FEATHERDANCE), + LEVEL_UP_MOVE( 36 , MOVE_AGILITY), + LEVEL_UP_MOVE( 36 , MOVE_DRILL_PECK), + LEVEL_UP_MOVE( 41 , MOVE_MIRROR_MOVE), + LEVEL_UP_MOVE( 47 , MOVE_STEEL_WING), + LEVEL_UP_MOVE( 52 , MOVE_VOLT_TACKLE), + LEVEL_UP_MOVE( 58 , MOVE_BRAVE_BIRD), + LEVEL_UP_END +}; + +static const struct LevelUpMove sPidgeozoneLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 1 , MOVE_GUST), + LEVEL_UP_MOVE( 1 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 5 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 9 , MOVE_GUST), + LEVEL_UP_MOVE( 13 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 20 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 27 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 31 , MOVE_FEATHERDANCE), + LEVEL_UP_MOVE( 36 , MOVE_AGILITY), + LEVEL_UP_MOVE( 36 , MOVE_DRILL_PECK), + LEVEL_UP_MOVE( 41 , MOVE_MIRROR_MOVE), + LEVEL_UP_MOVE( 47 , MOVE_STEEL_WING), + LEVEL_UP_MOVE( 52 , MOVE_VOLT_TACKLE), + LEVEL_UP_MOVE( 58 , MOVE_BRAVE_BIRD), + LEVEL_UP_END +}; + +static const struct LevelUpMove sPidgephyrLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 1 , MOVE_GUST), + LEVEL_UP_MOVE( 1 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 5 , MOVE_SAND-ATTACK), + LEVEL_UP_MOVE( 9 , MOVE_GUST), + LEVEL_UP_MOVE( 13 , MOVE_QUICK_ATTACK), + LEVEL_UP_MOVE( 20 , MOVE_WHIRLWIND), + LEVEL_UP_MOVE( 27 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 31 , MOVE_FEATHERDANCE), + LEVEL_UP_MOVE( 36 , MOVE_AGILITY), + LEVEL_UP_MOVE( 36 , MOVE_DRILL_PECK), + LEVEL_UP_MOVE( 41 , MOVE_MIRROR_MOVE), + LEVEL_UP_MOVE( 47 , MOVE_STEEL_WING), + LEVEL_UP_MOVE( 52 , MOVE_VOLT_TACKLE), + LEVEL_UP_MOVE( 58 , MOVE_BRAVE_BIRD), diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index 2cdbeb2681..f62a199b76 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -27506,3 +27506,11 @@ const u32 gObjectEventPic_Substitute[] = INCBIN_COMP("graphics/pokemon/question_ const u32 gMonFrontPic_Egg[] = INCBIN_U32("graphics/pokemon/egg/anim_front.4bpp.smol"); const u16 gMonPalette_Egg[] = INCBIN_U16("graphics/pokemon/egg/normal.gbapal"); const u8 gMonIcon_Egg[] = INCBIN_U8("graphics/pokemon/egg/icon.4bpp"); + + + const u32 gMonFrontPic_Chariathan[] = INCBIN_U32("graphics/pokemon/chariathan/front.4bpp.lz"); + const u32 gMonBackPic_Chariathan[] = INCBIN_U32("graphics/pokemon/chariathan/back.4bpp.lz"); + const u16 gMonPalette_Chariathan[] = INCBIN_U16("graphics/pokemon/chariathan/normal.gbapal"); + const u16 gMonShinyPalette_Chariathan[] = INCBIN_U16("graphics/pokemon/chariathan/normal.gbapal"); + const u8 gMonIcon_Chariathan[] = INCBIN_U8("graphics/pokemon/chariathan/icon.4bpp"); + //const u8 gMonFootprint_Chariathan[] = INCBIN_U8("graphics/pokemon/chariathan/footprint.1bpp"); diff --git a/src/data/pokemon/.species_info.h.kate-swp b/src/data/pokemon/.species_info.h.kate-swp deleted file mode 100644 index e2b9e07d95..0000000000 Binary files a/src/data/pokemon/.species_info.h.kate-swp and /dev/null differ diff --git a/src/data/pokemon/level_up_learnsets/.gen_9.h.kate-swp b/src/data/pokemon/level_up_learnsets/.gen_9.h.kate-swp deleted file mode 100644 index a0b3f58b4e..0000000000 Binary files a/src/data/pokemon/level_up_learnsets/.gen_9.h.kate-swp and /dev/null differ diff --git a/src/data/pokemon/level_up_learnsets/gen_9.h b/src/data/pokemon/level_up_learnsets/gen_9.h index 0bdfbe1eb3..ac43936916 100644 --- a/src/data/pokemon/level_up_learnsets/gen_9.h +++ b/src/data/pokemon/level_up_learnsets/gen_9.h @@ -22314,3 +22314,21 @@ static const struct LevelUpMove sPecharuntLevelUpLearnset[] = { }; #endif //P_FAMILY_PECHARUNT +static const struct LevelUpMove sChariathanLevelUpLearnset[] = { + LEVEL_UP_MOVE( 1 , MOVE_SCRATCH), + LEVEL_UP_MOVE( 1 , MOVE_GROWL), + LEVEL_UP_MOVE( 1 , MOVE_EMBER), + LEVEL_UP_MOVE( 1 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 7 , MOVE_EMBER), + LEVEL_UP_MOVE( 13 , MOVE_METAL_CLAW), + LEVEL_UP_MOVE( 16 , MOVE_SMOKESCREEN), + LEVEL_UP_MOVE( 23 , MOVE_FIRE_SPIN), + LEVEL_UP_MOVE( 27 , MOVE_SCARY_FACE), + LEVEL_UP_MOVE( 34 , MOVE_FLAMETHROWER), + LEVEL_UP_MOVE( 36 , MOVE_WING_ATTACK), + LEVEL_UP_MOVE( 44 , MOVE_SLASH), + LEVEL_UP_MOVE( 54 , MOVE_DRAGONBREATH), + LEVEL_UP_MOVE( 64 , MOVE_HEAT_WAVE), + LEVEL_UP_MOVE( 70 , MOVE_HYDRO_PUMP), + LEVEL_UP_END +}; diff --git a/src/data/pokemon/species_info.h b/src/data/pokemon/species_info.h index f7616e53dc..b76cf8667d 100644 --- a/src/data/pokemon/species_info.h +++ b/src/data/pokemon/species_info.h @@ -150,6 +150,57 @@ const struct SpeciesInfo gSpeciesInfo[] = .eggMoveLearnset = sNoneEggMoveLearnset, }, + [SPECIES_CHARIATHAN] = + { + .speciesName = _("Chariathan"), + .baseHP = 93, + .baseAttack = 132, + .baseDefense = 80, + .baseSpeed = 127, + .baseSpAttack = 139, + .baseSpDefense = 88, + .types = MON_TYPES(TYPE_FIRE, TYPE_WATER), + .catchRate = 45, + .expYield = 220, + .evYield_SpAttack = 3, + .genderRatio = PERCENT_FEMALE(12.5), + .eggCycles = 20, + .friendship = STANDARD_FRIENDSHIP, + .growthRate = GROWTH_MEDIUM_FAST, + .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER), + .abilities = { ABILITY_MARVEL_SCALE, ABILITY_NONE , ABILITY_NONE }, + .bodyColor = BODY_COLOR_PURPLE, + .noFlip = TRUE, + .cryId = CRY_CHARIZARD, + .categoryName = _("Abyss"), + .height = 102, + .weight = 3694, + .description = COMPOUND_STRING( + "It feeds others toxic mochi that\n" + "draw out desires and capabilities.\n" + "Those who eat the mochi fall under\n" + "Pecharunt's control, chained to its will."), + .pokemonScale = 271, + .trainerScale = 317, + .trainerOffset = 3, + .frontPic = gMonFrontPic_Chariathan, + .frontPicSize = MON_COORDS_SIZE(8,8), + .frontAnimFrames = sAnims_SingleFramePlaceHolder, + .frontAnimId = ANIM_V_JUMPS_H_JUMPS, + .frontAnimDelay = 15, + .backPic = gMonBackPic_Chariathan, + .backPicSize = MON_COORDS_SIZE(6,8), + .backPicYOffset = 8, + //.palette = gMonPalette_Chariathan, + //.shinyPalette = gMonShinyPalette_Chariathan, + .iconSprite = gMonIcon_Chariathan, + .iconPalIndex = 2, + //FOOTPRINT(Chariathan) + .levelUpLearnset = sChariathanLevelUpLearnset, + //.teachableLearnSet = sChariathanTeachableLearnset, + //.eggMoveLearnset = sChariathanTeachableLearnset, + }, + #include "species_info/gen_1_families.h" #include "species_info/gen_2_families.h" #include "species_info/gen_3_families.h"