BasicPlanningPokemonAgent factors in accuracy calculations in its move planning. Moved logic for calculating the gamestates from moves into a separate function to make the code more readable.
Test Cases
agent_tests/basic_planning_pkmn_agent_test.py
A BasicPlanningPokemonAgent with a 1HP Floatzel (Hydro Pump, Tackle) facing down a 1HP Stunfisk (tackle) should use Tackle not Hydro Pump because it is guaranteed to hit.
A BasicPlanningPokemonAgent with a 1HP Floatzel (Aqua Jet, Tackle) facing down a 1HP Bisharp (Sucker Punch) should use Aqua Jet because Sucker Punch would KO
A BasicPlanningPokemonAgent with a 100% Floatzel (Hydro Pump, Tackle) facing down a Stunfisk should use Hydro Pump because regardless of hitting/missing Hydro Pump so greatly outclasses Tackle.
A BasicPlanningPokemonAgent with a 40% Floatzel (Hydro Pump, Surf) facing down a 60% HP Stunfisk should use Hydro Pump because Surf does not do enough damage to KO.
Addresses Issue #127
Updates
BasicPlanningPokemonAgent
factors in accuracy calculations in its move planning. Moved logic for calculating the gamestates from moves into a separate function to make the code more readable.Test Cases
agent_tests/basic_planning_pkmn_agent_test.py