Add special case for Pokerus from Ruby/Sapphire

This commit is contained in:
Lorenzooone 2023-07-08 01:17:57 +02:00
parent 98dcd9a8d5
commit cd982c0fa7
4 changed files with 57 additions and 7 deletions

View File

@ -0,0 +1,51 @@
gPPPPPPPPœÃ
x¾PPœÃ
x
>PPœÃ
xùPP ôœ>PPPP>ªEPPPP>ª™PPPPï.²PPPPîÏ.²PP%/5PPPP  <09>
gPPPPܲPPPPö <09>
cPPPP¤æœPPPPlæœPPPP 8PPPPˆˆPPPPPP
gPPPPPP
g ÅPPPPïïPPPPPPé ÞÃPPPPÊaœPPPPÊaEAæÆPPPPPPÆ yPPPP
g òPPPPÜòPPPP<04>Ñ.&PPM&PPPPPPÏEáõPPPÏE>:PPÏE mPPPPÏEáïPPPÏE>PPÏE ‡PPPP¯¯PPPPPP
hcPPPPPPdJ §ŸPP:ž §ŸPP
:@PPPPPP
: y@PPPPîPPPPPPaîPPPPPP¡÷ÝPPPPOÅïPPPPÃ
cécÆ ôÃJPPPP ôÃí ÞPP < þPPPPPP:>PPPP`§ÙPPPPÚ Þ> PP:+PPPPPP
3c"PPMà ôöPPaöPPPPPPa €PPPPPPêh.PPPP`PPPPPPy`PPPPPP߬œPPPP&*¬œPP ¬œPPPP œcPPPP<07>6ÃPPPP
ÄbPPPPPPË »“PPPP©“PPPP{ò“PPPP<04>Ù
gPPPPL÷PPPPL÷ ÞPP5«
xPPPP ô>PPPPïFPPPPˆ>PPPPlˆ>PPPP
'Ï ˆPPPP?FPPPPßPPPPPPßÅPPPP :ŸPPPPPPéî :ŸPP ô >PPPP..PPPPPP. Þ> PPPPPPPPéOPPPP*
œPPPP*²PPPPïßPPPPPP ô3ïPPPPM JPPPPMLJ ÞPP
 ¢PPPPPPJ ¶PPPPM>
aPPPPM>
PPPP yÖPPPPPP ‡ yÖPPPPŽ>>hPP5PPPPPPÆÃ>PPPP:cPPPPPP ˆ>PPPP ¦ˆ>PPPPcÓPP
«&“PPPPKÌPPPPJPPPPJPP¤ PPPP :¡>PPPPà €PPPPPPˆ>PPPP  PPPPPPŽEÃPPPPcEÃPPPP < PPPPPP5 < PPPP·>PPÆ MJ ˆPPF£gPPPPJà yPPPPÃPPPPéJPPPPF§FPPPPª·œÊPP + ˆþJPP§î ‡PPPPÃJPPÃ
aÃJPP~ ˆ™PPPPœJœPPPPÎÌEPPPP
gƒõPP.J <09>PPPP
*>OPPPPÏ:œ ÞPPÏJ ˆPPPP ňPPPPPP ň
:JPP
a §ÃPPPP±HPPPP
a>ÞPPPPƒõPPPPPP ôœîPPPP̨PPPPPPe¨PPPPPPa:¨PPPPÂ÷PPPPPPÂPPPPPPPP  :> ˆPPœ>
aPP~ÏbPPJ )žPPPPF§ )žPPMéœüPP>Æ :PPPP>4œPPµ yþÙŸï>áPPPPÙï>PPPP.L.PPPPß.ûPPPPé`ÙPPPPé`ÈPPPP
œ+PPPPÆ>ÆJ yþîPPPPÊòPPPPÓ ŸPPPPPP
gòPPPPPP¯PPPPPPPP
:
:@PPPP ´4
gPPPP ´4 íPPPPwœ ìPPPPwœ ì PP~>
aPPPP  PPPPÌPPPPPPÆ3 :PPPPFAPPPPPPFA>PPPPï&<04>PPPP5ˆ>PPPP » » :PPPP. :PPPPPP :PPPPœ úPPPP
xj÷PPPP
xÌPPPP5ª>PPPPL ôPPPPPP© PPPPPPJœPPPPMÑ €PPPPÏþLPPPPß ‡PPPP«LFPPPPÈ“PPPPPPFªKPPPP €E €PPPP
g <PPPPPPŽ <PPPPPPM PPPP«Ãœ%PP ¶ ¶PPPPMPPPPPP§ËMPP ÙPPPP
v¿PPPPPPÜÜ&PPPP
Œà yþJ
'
:ÏPPPPÄ&ePPPPEePPPPPPF§F§PPF§ 3M  >PPPP~ >PPPP :º
£PPPPÑîPPPPPPë
'«PPd>öEPPH ˆžPPPP«µæPPPPdPPPPPP
<EFBFBD>PPPPPP ‡EÃPPPP : :>PPPP :> PPPP
*>OøPPPÃ €PPPPJPPPPè €PPPP
'ÃPPÃPPPPé €EPPF§aPPPPÐ š yPPPP
x
gjJPPÜ :PPPPØ §œPPPPJœ OPPPPÖöÃJPP²ÃJPPF²ÃJPP²ÆPPPP ÆæPPPPìéaPPPP gPPPPPPPPËPPPPPPPP gPPPPPPPP gPPPPPPPP

View File

@ -39,7 +39,7 @@ static u16 applied_ball;
static u8 egg_met_location;
static u8 first_set_egg_met_location;
const struct version_t version = { .main_version = 1, .sub_version = 1, .revision_version = 8, .revision_letter = CONSOLE_LETTER};
const struct version_t version = { .main_version = 1, .sub_version = 1, .revision_version = 9, .revision_letter = CONSOLE_LETTER};
const u8* egg_valid_met_locations[NUMBER_OF_GAMES+FIRST_VERSION_ID] = {valid_egg_locations_rs_bin, valid_egg_locations_rs_bin, valid_egg_locations_rs_bin, valid_egg_locations_e_bin, valid_egg_locations_frlg_bin, valid_egg_locations_frlg_bin};
void set_default_settings() {

View File

@ -153,9 +153,7 @@ u8 is_pokerus_strain_valid_gen2(u8 pokerus_byte) {
u8 get_pokerus_strain_max_days_gen2(u8 pokerus_byte) {
if(!is_pokerus_strain_valid_gen2(pokerus_byte))
return 0;
if(!(pokerus_byte >> 4))
return 1;
return (((pokerus_byte >> 4) - 1) & 3) + 1;
return ((pokerus_byte >> 4) & 3) + 1;
}
u8 are_pokerus_days_valid_gen2(u8 pokerus_byte) {

View File

@ -926,13 +926,14 @@ void recalc_stats_gen3(struct gen3_mon_data_unenc* data_dst, struct gen3_mon* ds
u8 is_pokerus_strain_valid_gen3(u8 pokerus_byte) {
if(!pokerus_byte)
return 1;
if(!((pokerus_byte >> 4) & 7))
return 0;
// Ruby and Sapphire can have Pokerus strains 0 and 8
//if(!((pokerus_byte >> 4) & 7))
// return 0;
return 1;
}
u8 get_pokerus_strain_max_days_gen3(u8 pokerus_byte) {
if(!((pokerus_byte >> 4) & 7))
if(!is_pokerus_strain_valid_gen3(pokerus_byte))
return 0;
return ((pokerus_byte >> 4) & 3) + 1;
}