Add scroll arrows when there are more items in the list than the list can show at a time.
These arrows can be shown in the main menu (although there aren't enough items in there to have them shown) or in the various DistributionEventPokemonListScene menus.
I also did provisions to support the same for the ScrollWidget in the about screen. Although I haven't implemented that (yet?)
- Add "Pikachu Bed" and "Tentacool Doll" decoration unlock options for
gen 2
- bugfix for unsafe behaviour
- attempt to make the RESET button work for cartridge switching. It
failed though. (not reliable). Therefore I just added a warning
message instead.
- Work on new ScrollWidget for Credits/About screen (Work In Progress)
With these changes, libpokemegb will remove an existing GS Ball from the
players' inventory and reset all GS ball related event flags before
activating the event.
This basically fixes up saves which used earlier versions of PokeMe64
that only gave you the item without triggering the event. (By removing
the existing GS Ball item, it prevents the
need to create a new save in order to unlock the gs ball event
for the users who were so nice to test these earlier builds)
As an added bonus, this makes the GS Ball event entirely repeatable
(which is actually great). You just need to use PokeMe64 everytime to make the
event repeat from the start..
It was reported by /u/ImranFZakhaev on reddit that receiving the GS Ball
doesn't actually unlock the event. So I implemented it in a different
way.
By writing 0xB to 0x3E3C, we can start the GS Ball event semi-legit.
After triggering the GS Ball event from PokeMe64, you need to go to and
leave the Golden Rod Pokemon Center and an attendant will appear to hand
you the GS Ball.
Bug was reported by /u/imranFZakhaev on reddit:
When adding a pokémon to a save with a full party, the behaviour is
completely broken.
Not only did we add a pokémon to every box, but it also would be a
completely different one or even crash the game when trying to access
the box.
Fixes:
- Stop after adding a pokemon to a box. Don't add it to all.
- In commit 77d5d15 I added a ::setPokemon function and reworked the
Gen1Box::add() function to use it. That's where it went wrong:
in the add() function, we would modify the number_of_pokemon counter
of the box, but not manipulate the species list and write it.
Then in the setPokemon() function, we would read the box metadata and
correct it because the number did not match the species list. This is
what went wrong.
To fix it, I just had to modify the species list in the add() function
as well again.
This implements functionality to teach Pikachu Surf and/or Fly and
extends existing widgets to help provide this functionality.
When a gen1 game is inserted, the user gets the choice to teach Pikachu
these moves.
This commit also restructures some of the Data and Style structs.
It doesn't look like much, but it's functional ;-)
It can inject distribution pokémon into gen 1 and gen 2 original
cartridges and inject the GS ball in Pokémon Crystal.
That's it. But that was the minimal feature set I had in mind for the
project. In the Readme.md you can find the ideas I have for expanding
the project.
But the first priority is the UI, because it really looks bad right now.
(as I was mostly focused on building blocks and transfer pak
functionality. Not on making it looks good)